Understanding Procedural Coding: A Worktext