Chapter 3 sample app