Demo app from chapter 2