TeachScheme! and co-op
Aug 19, 2010
Some 18 years ago, John Dennis, the chairman of the Rice Computer Science
Department at the time, and I had lunch in our conference room. He
basically told me that full professors teach service courses—
At Rice, TeachScheme! had a highly local impact. It grew the introductory course
by a factor of two, even before the web bubble started. But the impact of
HtDP/TeachScheme! beyond the first course was difficult to discern. I just didn’t
understand the need for a bridge between my first course—
Northeastern is nothing like Rice. Most importantly, it is a co-op
university. All of our students—
Prior to my arrival, Northeastern had been using a standard curriculum for two decades: three terms of the currently fashionable language (Pascal, C++, Java), using a set of extremely graphics-rich exercises intertwined with lessons on practical applications. The curriculum was widely published in SIGCSE and related communities, but it didn’t work. At the height of the web bubble, only around one third of the students got programming co-ops; most others ended up as “techies” as they called themselves: moving computers, running scripts, setting up routers and networks, etc. And all of this education cost $150,000 tuition.
After a year at Northeastern, our dean asked me to take over the first
course. The first instance was a success—
Surprisingly the story doesn’t end here. Also three years ago, our co-op employers started complaining that our MS-level co-ops were worse programmers than our third-year undergraduates. The graduate dean would regularly forward me these email complaints; at some point I also met with two company representatives. Eventually these complaints got so bad that the dean asked me whether I could condense the three-semester HtDP curriculum into a one-semester “boot camp” for MS students.
I don’t think it is possible to condense the three semesters into one, but after two years of experimentation, I have found a way to run a one-semester Bootcamp for MS students that mixes essential elements from all three courses: the design recipe for FP and OOP programming; practice with lots of teaching languages code and some class-based Racket code for four weeks; pair programming and code walks. The co-op faculty are impressed by the change in abilities. They believe they see more satisfaction from our co-op employers. The final jury is still out but the deans are happy enough to ask me to expand the TeachScheme! curriculum at the MS level, too. In the spring, I will start the design of a second-semester Bootcamp course.
Every teacher has stories about the best students, how they found wonderful
jobs, how they confirmed the teachings with letters and messages. I am
happy to report that TeachScheme! helped hundreds of students, the whole range
of students—
1 Postscript
The initial improvement in our co-op employment happened over the first five years of TeachScheme! at Northeastern.
The recent marginal improvement in our co-op employment coincides with a period when Northeastern started raising the SAT requirements for some of its strong majors, including computer science. Hence detractors may argue that the most recent co-op improvement is due to the higher SAT score.
We are experiencing the same development at the MS level. Without changes in the GRE score requirements, we see positive developments in our co-op interviews after deploying the TeachScheme! curriculum.