Program By Design

formerly known as TeachScheme!, ReachJava

July 2-6, 2012

Dr. Stephen Bloch, Adelphi University

Introduction Google daily survey
Introduction Textbook
(including pictures
and worked exercises)
CS4HS Daily Survey

If this is your first visit to this page, please read the Introduction for an overview of what the workshop is about, why it might be relevant to your teaching, and what other teachers have said about the approach.
If you're interested in attending, please read more and sign up.
If you've already registered to attend, please see Local Information for directions, schedules, travel tips, reimbursement rules, etc.

This workshop is funded in part by the National Science Foundation's Division of Undergraduate Education, and in part by Google's CS4HS program.

This workshop also serves as a 1-credit graduate course, EDU 550, "Teaching with Computer Programming". If you're a current or prospective high school teacher, the tuition is free, thanks to the generosity of Google and the Adelphi Provost's Office. Whether you're a high school teacher or not, if you're interested in earning course credit but aren't already an Adelphi student, you'll need to apply for non-degree admission before registering for the course.

Supporting documents and software

The software we're using, DrRacket, is available for free download for Mac, Windows, and Unix. Many of the programs we write will also work in WeScheme, a Web-based programming environment for which you don't need to download and install anything at all.

We'll be more-or-less following my textbook Picturing Programs, which is available for free online (and about $30 in print). You may also want to look at How to Design Programs second edition and the older but more complete first edition, from which I learned much of this stuff; they may be more appropriate for college-level courses. And you might be interested in the Bootstrap curriculum, which is similar to ours but used predominantly with middle-school students.

Course Web Sites

For one example of how this material is used in a course, see my Programming for Poets course.

Viera Proulx, at Northeastern University, teaches a full-year introductory sequence (both Scheme and Java) for CS majors using this approach; see her teaching page. Worcester Polytechnic offers a first course for majors and non-majors and an accelerated first course using this approach. For more examples, see this list of colleges and universities using Scheme in their curricula.


This material is based upon work supported by the National Science Foundation under Grant No. 618543 and previous Grant No. 0010064. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.


Last modified:
Stephen Bloch / sbloch@adelphi.edu