A wonderfully different way to thing about computing

One Laptop Per Child logo
One of my constant struggles as an educator in computer science has been helping students see a bigger picture, look past the mundanities of yesterday’s “help wanted” page, and see what the world could be rather than what it has been.

One way this has often played out has been in debates over programming languages and development tools. Students are (quite legitimately) concerned with their near term employment prospects, and so they tend to focus what they’ve heard of, and what they see in the job web sites. Unfortunately that is almost always an exercise in looking backwards in time. When I started in 1991, the problem was getting students out of Pascal and C and start thinking about objects. Now we’re working to add things like Ruby and Python to our Java-heavy toolkit. Constant throughout has been the difficult task of getting them to take (semi-) functional languages (Scheme, Haskell) seriously or, in fact, any language doesn’t have a “For dummies” book at their local mega-bookshop.

I need to be fair, though, and make it clear that we’ve always had students who could see the bigger picture, and have often pushed us faculty to open some important new doors. I suspect that we’ve actually been luckier in that respect at UMM than many other programs. That said, you still get groaners (often very vocal) who never seem to be happy unless you’re emphasizing whatever tool or language they’re firmly convinced is their only road to employment.

This is one of the reasons that it makes me so happy to see the list of programming languages used in the One Laptop Per Child project:

We will support five programming environments on the laptop: (1) Python, from which we have built our user interface and our activity model; (2) Javascript for browser-based scripting; (3) Csound, a programmable music and audio environment; (4) Squeak, a version of Smalltalk embedded into a media-rich authoring environment; and (5) Logo. We will also provide some support for Java and Flash.

OK, we can debate the details (and I’m sure people have and will), but let’s skip all that shall we? Let’s instead note that none of these was a “heavy hitter” 5 or 10 years ago, and there are plenty of people who would (wrongly in my opinion) argue that none are terribly important today. How many data structures classes in the U.S., for example, (a key “bread and butter” course in most computing curriculums) use any of these languages? I’m sure there are a few (especially Python), but proportionally I bet it’s pretty tiny. (Try searching either Amazon or the web for textbooks for such a course, for example.)

It’s also worth considering impact here. Sure, I doubt that anyone’s likely to start building inventory control systems in Logo, but should that be the issue? What’s the real opportunity for impact here? How do I change the world? By building accounting systems? Or by contributing to a project that plans to put computers and software in the hands to millions of kids all around the world?

You want to make the world a better place? You want to really fight terrorism? Then give people hope, a chance to grow and make their world better. Give them something to protect. Contribute to a project like this.

And, if you’re contributing to this project, you apparently program in Python, JavaScript, CSound, Squeak and Logo.

So let’s put an end to the whining about these not being “real” programming languages and nobody building “real” programs with them. I’ve written a crapload of Java code in my day that only a handful of people will ever use. Some bright bulbs used Squeak to build Scratch, which I suspect will be used by millions. Hmmm … which do I find more impressive?

Related posts

A genie unlikely to ever return to its bottle

KES by Neil101

I was pottering in the kitchen (probably making tea or some such) while WeatherGirl was listening to a comedy program on the radio in the sitting room. I’m half hearing the words as they gently waft my direction, when a woman on the program says “shit” quite clearly and plainly. Matter of fact, no big deal, middle of the sentence.

“Shit”

But it popped out at me like a glowing ember and smacked that neural structure from 1974 that said “Hey – people aren’t supposed to say things like that on radio!” Which was a little odd, since I’m typically not very good at noticing such things (which is sometimes a problem when reviewing CDs for the radio station). Yet there it was, and it certainly caught my attention this time.

I suspect that in 1974 the BBC never would have never aired such language, except perhaps in the wee hours, or with bleeping. Times change, however, as the recent UK re-rating of Christopher Lee’s 1958 Dracula from X to 12A (!) makes clear.

In a larger sense, however, it seems like we’ve turned a huge collective corner and, short of some catastrophic change, aren’t likely to come back. It’s clear that people swear, are quite fascinated by sex, and enjoy the occasional fart joke. Various folks like the Victorians and the FCC might have attempted to deny these basic facts, but it didn’t make them any less true, it just drove them underground.

The web, however, is rapidly washing away any such pretense. Without any sort of centralized control over content (and none on the horizon), we end up with the great unwashed, and almost entirely unedited, rambling burps of the world. And we can no longer pretend that it’s not out there, that people don’t say these things. All these past forms of mass censorship have been based on the flimsy notion that we were protecting someone from something. Now, short of an off-grid survivalist camp in Montana (where I’m sure no one swears, talks about sex, or tells fart jokes), you just can’t pretend it’s not out there. Mulder would be proud.

As a result, we’ll just have to grow up and take some responsibility, for ourselves and our children, and not assume that someone else will handle it for us. We’ll no doubt run across some things that aren’t to our liking (American Idol anyone?). Assuming they’re not illegal or harming others, we’ll need to just look away and hit the back button. Kids are gonna run into things that lead to awkward questions. But heaven knows they talked some crazy shit in the playground when I was in elementary school, so I suspect all that’s really changed is our ability to pretend it wasn’t happening.

This is one of those moments where something huge has changed, incrementally but fairly quickly, and will not likely change back in many-a-lifetime. And that little “shit” was just one of the hinge creaks as the door opened on this new world.

Credit to Neil101 for the great image.

Related posts