Hungry for Raspberry Pi

In the UK, the birthplace of modern computing, we have a problem. We have ensured that, through an untimely ICT curriculum, that computer programming is off the menu.  A large proportion of today’s children have access to computers (~75% of households have a computer) and so will be familiar with standard software packages from a very early age. What they may not be familiar with is the art of how to tell a computer what to do.

Way back in the mid 80’s (when I were a lass, blah) our primary school had one computer. It was a BBC micro and was granted to whichever class had been lucky enough to reserve it. It was a huge, beige monster that ate 5 ½ inch floppies right in front of our eyes. The class would gather round in awe, playing games collectively with teacher at the helm. People may laugh at these old pieces of technology but they had one striking advantage. These computers did not wear the glossy mask of a slick user interface. They demanded your attention at the command line. In order to get what you want, you had to be drawn into the world of BASIC.

In my last year at primary some designated mini-nerds (yes I was one) were allowed to “play around” with the micro at lunchtimes. This consisted of my friend and I watching two of our classmates copying BASIC programs out of a “how to” book. The computer was kept in a little curious annex of our classroom where all the supplies, paints, and random artefacts were kept. There in the half-light we stared open mouthed at the strange syntax appearing across the black screen. When the time came to run the code there was always frustration because a comma was missed, or some other syntax error. Then eventually the triumph came when the program resulted in some rudimentary action like a polygon drawing itself on the screen.

A couple of years later a second hand ZX spectrum came into my possession with its blistering 128 kB of RAM. I had already been bitten by the BASIC bug. I had little time for the attractions of Jet Set Willy, Dizzy, or Horace Goes Skiing. I just wanted to copy programs into the computer and see what they did.  I didn’t really understand how it all worked but I had the feeling that I was circling the edge of a technical world that I wanted to be part of. My greatest triumph was to successfully reproduce a game called “star racer”. It was a thrilling adventure in which asterisks race each other across the screen, resulting in a somewhat predictable climax. I recorded it onto cassette, keeping it for posterity.

It wasn’t until university that programming crossed my path again, when we had two years of enforced FORTRAN (which I secretly loved). Had it not been for my early brush with BASIC I don’t think I’d have taken to FORTRAN so readily.  As a group we spent many nights in the computer lab battling through compiling errors, gradually losing the will to live. Then at the 11th hour, our sense of worth returning as our codes began to obey the laws of physics. Nothing filled me with satisfaction and pride more than being able to produce a well-executed program.

We need to let young people learn and play with programming again. Teaching programming as part of ICT in schools would ensure future generations were well equipped to operate in a computer centric world.  The birth of cheap, programmable computers like the Raspberry Pi could revolutionise the classroom and school computing forever. I applaud the education driven ethos of the Raspberry Pi foundation and wish them the best of luck in this endeavour. Also I’m totally going to buy one…

10 PRINT “hello world”

20 GOTO 10

7 thoughts on “Hungry for Raspberry Pi

  1. I think it’s notable that your introductions to programming didn’t start by making you choose a development environment. BBC Micro just dumped you at a BASIC prompt; and FORTRAN was forced upon you. Occasionally younger relatives and family friends ask me where they should start programming, and I find it very hard to give a useful answer which allows them to get from nothing to asterisks racing each other around the screen without having to understand the intricacies of windowing systems, HTML5 canvases, or what have you.

    (Of course, I’m probably overestimating how much of a problem this choice might be for an inquisitive type with a Raspberry Pi in front of them…)

  2. Good points made there. I think would say I had “choices removed” as opposed to forced. In a world full of different languages someone else who knows more than you making the decision helps in many ways. I think half the battle of learning how to program is the constructs and concepts as opposed to syntax i.e. what is a loop, what is a subroutine, what is an array etc. I think this is why learning the real number cruncher languages like C and FORTRAN are still relevant for that type of thing. I find once I had learned one language it became less onerous to learn others.
    I guess I can see Raspberry Pi being lovely for I/O stuff, running devices and whatnot.

  3. Good post Kate. I got my school BBC computer to play the Top Gun theme tune age 12, programming in BASIC. I now write simulation codes for particle accelerators. I suspect there is a strong correlation between these two things.

  4. Even the best drugs (so I’m told) can’t replicate the high you feel at 3.30 in the morning when “Error: Floating point exception” is finally replaced by a beautiful new line containing just a guillemet and a cursor.

  5. I feel very nostalgic about BASIC and those BASIC books out of the library! Although I wrote loads of FORTRAN for my PhD, I’ve never been a real coder, more a tinkerer with code. I’m sure that skill comes directly from modifying BASIC programs as a kid.
    As you say, once you learn one language you’ve got a head start on others, and sometimes the principles are just about all you need. There’s nothing so satisfying as reading a program in a language you don’t really know and figuring out which bit makes the necessary change!

  6. Ah, the gold old days of Fortran 90! That was the first programming I’d ever done. I never got to have a Spectrum or anything like that. My first computer was an Atari ST but that was only so I could use Cubase.

    I’m planning on buying a couple of Raspberry Pi’s too. One for me and one for my 10 year old nephew. He visited a video games company here in Guildford a couple of years ago and loved it. That could give him the motivation to start playing around with programming.

  7. I’d like to get hold of a Raspberry Pi, too, and I’ve been following the new quite avidly. I learnt to do some programming on the Spectrum, though eventually I would spend more time playing games on it than doing anything else. I used to draw out 8×8 grids and shade in monsters and aliens to make user-defined characters, and learned about binary along the way. Now I patiently teach second year students that there is such a thing as binary and how to move between it and base 10.

    The Respberry Pi looks great, though I worry that unless an environment other than an X11-based distribution of linux is available, it won’t force anyone using it to write programs, but hopefully people will start selling good SD card distributions of cool stuff that’ll get kids hooked on programming. I might get one for my daughter, and see how it competes with the Wii. Maybe a logo-based turtle graphics thing is the place to start…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s