Picturing Programs: An Introduction to Computer Programming

Picturing Programs:  An Introduction to Computer Programming

“Picturing Programs: An Introduction to Computer Programming”, by Stephen Bloch, is a textbook for beginning computer programming especially suitable for high school students. It is based on the award-winning “Program by Design” curriculum, a technique for teaching deep problem-solving skills and programming principles.


A first programming course should not be directed towards learning a particular programming language, but rather at learning to program well; the programming language should get out of the way and serve this goal. The simple, powerful Racket language (related to Scheme) allows us to concentrate on the fundamental concepts and techniques of computer programming, without being distracted by complex syntax. As a result, this book can be used at the high school (and perhaps middle school) level, while providing enough advanced concepts not usually found in a first course to challenge a college student. Those who have already done some programming (e.g. in Java, Python, or C++) will enhance their understanding of the fundamentals, un-learn some bad habits, and change the way they think about programming.

Table of Contents

  • Introduction
  • Drawing pictures
  • Variables
  • Building more interesting pictures
  • Writing functions
  • A recipe for defining functions
  • Animations in DrRacket
  • Working with numbers
  • Animations involving numbers
  • Working with strings
  • Animations with arbitrary models
  • Reduce, re-use, recycle
  • Defining types
  • Booleans
  • Animations with Booleans
  • Conditionals
  • New types and templates
  • Animations that make decisions
  • Of Mice and Keys
  • Handling errors
  • Using Structures
  • Inventing new structures
  • Lists
  • Functions that return lists
  • Whole numbers
  • Multiple recursive data
  • Efficiency of programs
  • Local definitions
  • Functions as objects
  • Input, output, and sequence
  • Mutation

Book Details

Author(s): Stephen Bloch
Publisher: College Publications
Format(s): PDF
File size: 3.53 MB
Number of pages: 480
Link: Download.

Leave a Reply