demo_app chapter3