The OLPC (aka the ‘hundred dollar laptop’) has a ‘View Source’ button on the keyboard. See if you can guess which one it is in this image here.
The motivation for this is to let kids ‘under the bonnet’ and learn to program (Python, specifically). Is it really a good idea?
Blogger Mike Hearn made some interesting comments on this a few days ago:
- Could source code be confusing for people who hit the button by mistake?
- Is the source code up to scratch? One example Mike looked at (BlockParty) was completely uncommented.
- Is a fully-fledged program containing advanced code (e.g. sound servers, graphics libraries, etc) really a good place to start learning about programming?
When I was a kid, my school had a computer lab containing on BBC Micros. They were used for teaching maths, using LOGO and that sort of thing. They didn’t even start teaching us programming until we had a good grasp of maths and ‘procedural thinking’. Then when they did, they introduced it very slowly, so not to leave anyone behind. On BBC micros, you could get to the source code (BBC BASIC) at any time by hitting the Escape key. And you know what? Teachers would shout at us for doing this. When you teach kids, lessons are highly structured, and you drip feed them concepts one-at-a-time. You don’t throw them in the deep end.
To give an analogy, if you were teaching 10 year old kids literature, you wouldn’t do it by reading them random chunks of Macbeth. That would just turn them off. It would be overwhelming and, more to the point, boring.
But isn’t this exactly what the View Source button does? Take a quick look below at the source code of BlockParty (A Tetris-style game), and put yourself in the shoes of a 10 year old kid.
I’m sure it’s a neat feature if you’re already up-to-speed on Python, but there’s a fairly tough learning curve you’d have to get past first. So, like the OLPC itself, the View-Source button is just an adjunct to traditional teaching, rather than a learning solution in itself.
I’d find it so much more reassuring if there was some well planned open source teaching and teacher-training materials coming out of this project in addition to the OLPC hardware/software bundle.
http://wiki.laptop.org/go/Image:Keyboard_english.png is the current keyboard layout
I remember when I was 9, my Dad got a 16K Spectrum (later upgraded to 48K). We had just a couple of tapes (form Psion) with a black and white TV and after a few days I was soon breaking into the BASIC programs and trying to work out how they were written (Foxes and Rabbits, Breakout etc). I was soon writing my own graphics assets and source code. Most (industrial nation) kids today have a satiating shovel load of rich interactive content fed to them from an even earlier age but with little chance to experiment out side of what a games company (or productivity company) think might make money. I think the OLPC has it dead right putting this kind of open technology into the hands of future generations, especially in the areas of the world who don’t currently have easy access to such technological opportunities.
Ouch, that ain’t pretty at all. I can’t make heads to tails of it. Then again, I am HTML compliant but Python strangled.
Gary, you’re right. In fact, I couldn’t agree more.
Open technology is clearly the way to go, and allowing kids to access the source code has GOT to be a good thing.
But the ‘view source’ button itself – it isn’t a magic learning solution. Although some gifted kids will be able and motivated to teach themselves, this is fairly unlikely to be the norm.
In your case, for example, do you think you’d have been able to teach yourself Basic if you hadn’t been to school and been taught literacy, math, science, etc, as well as you had been?
Eduardo – thanks for pointing that out, I have ammended the link to the keyboard layout.