TeachScheme!

Teaching beginning programming and algebra
with Scheme

July 16-20, 2001

Dr. Stephen Bloch, Adelphi University

Introduction

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 high- and middle-school teachers have said about the approach.
Here's the one-paragraph flyer blurb about the workshop.
If you're interested in attending, please fill out the on-line registration form.
If you've already registered to attend, please see Local Information for directions, schedules, travel tips, reimbursement rules, etc.

On the first day, I'd like participants to fill out a brief on-line survey so I know how many people teach high school, middle school, etc, how many people teach what subjects, and what you're expecting from this workshop.
At the end of each day, I'd appreciate it if participants would fill out another brief on-line survey (built into DrScheme) to give me some feedback on what topics made sense to you, what was unclear, etc.
By the way, these forms are interpreted by a CGI script written in Scheme, and I analyze the data using another Scheme program.

Schedule

The workshop will run each day from 9:00 AM (8:30 for breakfast) to 5:30 PM, with breaks for lunch, coffee, fresh air, etc. On Monday, please try to be there a little early, to allow time for getting lost, introductions, and paperwork.
Day Morning Afternoon Evening
Monday, 7/16/01 Evaluating expressions; defining variables and functions; design recipe Booleans and conditionals; another design recipe; symbols  
Tuesday, 7/17/01 Design recipe, version 3; structures; graphics, games, and coordinates Mixed data types  
Wednesday, 7/18/01 Lists and their templates Lists of complex data Pedagogic and curricular issues
Thursday, 7/19/01 Trees Expressions as trees Applications, databases, Web, CGI, etc.
Friday, 7/20/01 Evaluating Scheme in Scheme Functional abstraction; miscellaneous topics  
Saturday, 7/21/01 Optional lab session: finish projects  

Supporting documents

The software we're using, DrScheme, is available for free download for Mac, Windows, and Unix. (It includes some teaching libraries, called "teachpacks", which are incompatible with the current version of the textbook below; after downloading and installing DrScheme, please see the directions to get updated teachpacks.)

The textbook I use for my first-semester course, and from which this workshop is excerpted, is How to Design Programs, by Matthias Felleisen et al at Rice University.  The book just came out in print from MIT Press, but it will remain available on-line for free.

Although Scheme's syntax is extraordinarily simple for a computer language, it is still a new language, and you'll need to learn the vocabulary.  Here's my page on the minimal Scheme language, covering spelling, grammar, vocabulary, and idioms.

I've summarized the Design Recipe(s) covered in this workshop, and some additional ones covered in my first-semester course. Use them!

You might also be interested in Jack Crouch's CS1 Web site. Jack Crouch teaches a 9th-grade course on beginning programming, using Scheme, DrScheme, and How to Design Programs.

I've set up a folder for programming examples, many of them developed by high school teachers.


Last modified:
Stephen Bloch / sbloch@adelphi.edu