[Haskell & FP in Education] Welcome and introductions

Stuart A. Kurtz stuart at cs.uchicago.edu
Wed Dec 19 21:50:38 UTC 2018


Dear Fernando,

> I think one of the problems in introducing CS education in K-12 is the lack of a clear widespread rationale for it.

You've enumerated a few rationales. 

My wife is a recently retired 4th grade teacher, who's taught both Logo and Scratch over three decades in the classroom. There's a legitimate case for covering material like this, based both on developing problem solving abilities and on the observation that some students learn better via manipulatives. Code is a mathematical manipulative. These are not small effects. In the best cases, programming can become a vehicle for collaborative mathematical work, a category that otherwise hardly exists.

But it's clear to me that there are other drivers as well. My take on this is US-centric, other polities may have other drivers.

School boards are elected, and so are responsive to parental pressure. In the US, this often takes the form of demand for courses and activities that make students more competitive for highly-compensated work. This pressure can be particularly acute in well-resourced school districts, whose students will be competing for admission to selective college and universities. For the students I see, this means that their exposure to computer programming at the pre-collegiate level rarely came at the cost other activities. They've had four years of math, including calculus, art and band, and the opportunity to compete in debate, and not gymnastics, and perhaps even fencing if they've wanted too. They haven't had to give up the main course to get dessert. They haven't even had to give up other desserts.

School budgets get built out of multiple parts that are carefully kept unblended. There's a certain pot of money labelled for faculty salaries, another pot labeled for capital expenses, another pot for special education, another for technology. Educators and technology companies alike have argued for technology in the classroom, and programming courses are one way to use this technology productively. Unfortunately, the use of semi-proprietary languages via plush IDEs can result in early obsolescence, driving the need for more purchases and a bigger piece of the pie going to technology. Of course, the ability to use technology effectively depends very much on the teaching staff, and well-resourced schools are more likely to have the staff with the knowledge and initiative to use technology effectively in the classroom. Wealth tenures wealth.

As a university faculty member in the US, I see high-school programming, perhaps especially when it is done well, as a sustainer of inequality. It's hard to get into CS programs, and high school exposure to programming is highly corollated with success in bottleneck college programming classes. This is something that I've thought hard about, but my answer (teaching Haskell) I know to be idiosyncratic. It concerns me that, while it appears to have greatly reduced disparities based on prior preparation (and so has some utility in dealing with US issues around race/ethnicity), it may have increased gender inequity. None of this is easy if you take it seriously.

Peace,

Stu



More information about the Education mailing list