Chapter 3 - sample app