CS450 Chap 3 sample_app