demo app chapter 2