Chapter 5. Programming notes