Two insights on teaching computer programming

Henderson Peter phenders at
Tue Jan 3 12:18:50 EST 2006

Kathy and Kirby,

I agree in principle that the first CS course (where CS is viewed as a 
science rather than preparation for a professional career - eg, software 
engineering) should be accessable to all entering students. 
Unfortunately, most intro CS courses are not taught well and with a wide 
range of students in mind, and hence become a turn off (one reason I 
believe CS popularity is declining).

There are very few CS educators striving to meet these goals.  Kudos to 
you Kathi for your efforts.


Peter B. Henderson
  Department of Computer Science and Software Engineering
   Butler University, 4600 Sunset Avenue, Indianapolis, IN 46208-3485
     phenders at

On Tue, 3 Jan 2006, Kathi Fisler wrote:

> Kirby Urner wrote:
>> In sum, I don't think the intro CS stuff should be planned only as a
>> part of some longer CS sequence for majors.  It should also serve as
>> a standalone component of a liberal arts education, giving its
>> takers a welcome boost in whatever chosen field.
> I couldn't agree more.  As a liberal arts graduate, I have always been
> bothered with the notion that majors and non-majors should take the
> same intro courses in humanities and social sciences, while special
> courses are developed for non-majors in the sciences.  I firmly
> believe that the intro course in any discipline should be valuable and
> accessible to all students.
> I am highly active in Matthias' project, and recently (2 years ago)
> moved our intro course for students from all majors to HtDP.  My main
> argument was its potential benefit for non-majors (our prior intro
> courses had been in C++ or Java).  This claim is based on what I can
> teach the students through HtDP, not on the surface issues like
> "simpler syntax" relative to Java/C++.
> A prerequisite for linking together tools to process data (from a
> students' area of interest) is understanding that data.  Most
> non-majors (and incoming majors, for that matter) have never been
> asked to think about data or information, that it has structure and
> form that governs how to process it.  HtDP's focus on identifying and
> articulating the structure of data and using that to drive process and
> testing makes it valuable for majors and non-majors alike.
> The challenge lies in developing assignments and labs that help
> students see how these ideas about data structure and processing arise
> in their home disciplines.  Non-majors get pretty bored with
> information-processing examples all the time, and rightfully so.  We
> are handling this through choices of labs and assignments that use
> examples from various domains.  Currently, each week students choose
> between lab exercises that model problems in biology and more
> conventional CS exercises.  We are working to extend the options to
> include other disciplines, including non-sciences.  In the longer
> term, I hope to develop some more "tools-style" assignments that give
> more of the feel of linking together tools to solve problems, but I
> will keep everything grounded in Scheme and HtDP.  HtDP lets me teach
> an intellectual core that is useful to all students and will survive
> even as the tools du-jour change.
> I heartily applaud calls for us to think about how to create
> principaled intro courses that appeal to majors and non-majors alike.
> If our notion of "intro" means only "intro for those who would program
> anyway", we're missing the liberal arts perspective on our discipline.
> Kathi
> -----------------------------------------------------------------------
> Kathi Fisler, Assistant Professor	Department of Computer Science
>        	Worcester Polytechnic Institute
> Phone: 508-831-5118            		100 Institute Road
> Fax: 508-831-5776                	Worcester, MA 01609-2280
> _______________________________________________
> Math-thinking-l mailing list  -  Math-thinking-l at

More information about the Math-thinking-l mailing list