[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

peasant revolt against DrScheme!




I thought some of the readers of this list might be interested in this
story, which appeared in the Caltech student newspaper today.  It shows how
far we still have to go to win the Hearts and Minds (TM) of potential
programmers.

Here at Caltech, the CS department decided this year to use DrScheme to
teach the introductory programming class (CS1).  This class has a history
of controversy with regards to the choice of language; students invariably
want to learn C, but the faculty believe that C is not a good introductory
programming language (and they're right).  In the past, they've tried java,
JJ (a subset of java designed as a teaching language) and now DrScheme.

A poll was taken of students in CS1 who had been through the DrScheme
syllabus.  Fully 78.2% of them said that they wished that C had been taught
instead, while only 3.5% were happy with the choice of DrScheme.  The
perception seems to be that scheme is only of interest to academic computer
scientists and is not a useful tool for real-world programming.  Since most
of the students (62%) were not CS majors, their interest was in learning
something they could use in the Real World.  Interestingly, many of these
non-CS types plan to make a career in programming.

Personally, I find it interesting that the perception is that C is such a
useful language.  If you use that logic, why not teach perl, python, Visual
Basic, or Javascript?  Or even C++?  I think the real reason is the macho
attitude which prevails among Caltech undergrads.  They have heard that C
is the language that "real hackers" use (e.g. because Linux is written in
C) so they assume it's the most studly (and difficult) language to learn.
I wonder how they'd react if they knew that mastering the intricacies of
scheme (e.g. continuations) is much more challenging than learning C?

On the other hand, I can understand why people who have no interest in
programming except as a practical tool might balk at learning scheme, which
is clearly not the most used language in practical contexts.  I think the
long-term solution to this is to have more useful programs that use scheme
as a scripting language, which will hopefully change the outdated
perception of scheme as an "academic language".  Brent Fulgham's work on
integrating mzscheme into AOLserver is a good example of this.  Of course,
all that would be impossible without the stellar work on the core of
mzscheme/DrScheme done by the PLT team :-)

Mike

--------------------------------------------------------------
Mike Vanier	mvanier@bbb.caltech.edu
Department of Computation and Neural Systems, Caltech 216-76
GNU/Linux: We can't lose; we're on a mission from God.