30 years ago we had to plug our first computers into the TV. Ric Parkin looks at how far we’ve come since then.
April 23 [ April23 ] will be a significant date for many people of my age. Many may know that it’s St George’s day, a few might even know that it’s also the birthday of Max Planck, Prokofiev, and Shakespeare (and also the day he died). But to a generation who are now in IT, a more personal reason is that it is also the day, 30 years ago, that the ZX Spectrum was launched [ ZXSpectrum ].
This was a time of frantic innovation in the home computer industry – the BBC Micro [ Beeb ] had come out the previous December, and the Commodore 64 [ C64 ] had been announced and would come out later in August – but for me it’ll always be the Speccy. (And I wasn’t the only one – see Andy Thomas’ personal reminiscences in this issue). It was special for me because I’d saved up and ordered one of the first 48K models. While its rivals were technically superior, I couldn’t afford them on my pocket money and 50p a week paper round – even the £175 price of the Spectrum was a significant amount in those days. Of course it didn’t arrive for ages – there was a massive waiting list, and production problems meant it took around 6 months before I finally got this small black box with weird rubbery keys. And you had to plug it into the television, which in the era of single-tv households basically meant that no one else could watch anything while you were using it, and you had to hunch down on the floor in front of it because the lead was too short.
But why on earth did I want one? I already had some experience of computers, probably more than most – doing some BASIC programming on VAXs at my father’s work, and we had an enthusiastic Chemistry teacher at school who’d brought in a ZX80 and ZX81 for us to see. The school itself had a pretty good ‘computer lab’ from an early age, with an Apple II and Commodore Pet. In an old stationery cupboard. Even in those days computer rooms were where the people with strange obsessions would hide from the light (mainly to avoid screen glare, but could you convince people of that?)
Most people seemed to want these machines for playing games – this was the peak era of arcade games such as Space Invaders, PacMan, and Defender. Now you could play them (or highly derivative versions) without having a pocket bulging with ten pence pieces. But there was one odd thing about these machines – when you turned them on, they just sat there with a fairly blank screen with cryptic messages and a flashing cursor, and you had to ask them to load your game. The command prompt was king. This was a serious hindrance to casual users, requiring much patient instruction of the baffled elders by the technically savvy children. But it did show the idea that computers were there to be instructed – powerful but dumb machines that required a human to set a task and steer them through it.
Did I just say ‘powerful’? That’s a relative term, of course. Compared to now they were shockingly puny, but for the time they were amazing feats of engineering, which as we all know is all about compromise and squeezing a quart into a pint pot. Some of the tricks that were used are ingenious, both in the hardware and the software. I’ve even seen it argued that the reason British software engineering was so good for a while (especially for games) was we couldn’t afford the bigger and more powerful PCs and other computers where you just let its raw power take the strain, whereas with some of the compromises and limitations of our homegrown ones you had to really try to get anything worthwhile done. So you’d get some truly amazing achievements such as the classic Elite [ Acornsoft ] and Psion Scrabble, which packed a 11000 word dictionary as well an excellent graphical board and game engine, into 48K.
Yes, I played the games. I bought the magazines (some of which are quietly going mouldy in my garage). I typed in the listings, but also worked out how to modify them. I learnt patience by having to type in pages of hex-dumps over hours to find I’d made a single typo and had to redo everything. And I tried programming myself. It was easy. Who didn’t know how to nip into Dixons and quickly bash out something like
10 Print "Ric Woz 'ere" 20 Goto 10
much to the annoyance of the staff?
I did more serious stuff of course – music playing programmes taking the notes from a table, a competitive version of the ‘Simon’ reaction game for the school’s parents evening, to show off how high tech we were (in Pascal using my first compiler, and a hardware controller to detect when a physical circuit was made by the player hitting metal plates), and as a hardware controller for my Design Technology ‘O’ Level project.
But I never took the computing ‘O’ level. I was actually advised not to by the teacher when I asked if I should, who said ‘You know it all already’. Perhaps I should have just asked to sign up for the exam without the lessons.
But this reminds me to a very recent debate. What should you teach about IT in schools? There still exist exams in computer science [ O Level ], but they tend to be for overseas students, and in the UK at GCSE level there’s only ICT [ GCSE ]. Unfortunately these are widely disliked and thought to be dull, off-putting, and not even very good at preparing people to use computers at work – things change so quickly that almost by definition the course is going to be badly out of date, and students who have grown up in the era of widely available computers and smartphones are already going to know an awful lot already.
Thankfully there’s an effort to revamp the curriculum and re-introduce proper computing courses [ CodeInClass ], but we have to accept that it’s not going to be interesting to everyone. Let’s face it, programming is always going to be fairly niche activity. But what inspired me all those years ago was having this machine that I could command to do stuff quickly and easily, and it would be great to expose people to that to see who’s interested in doing the more advanced courses. Thinking back there were languages designed to get quick fun results [ Logo ], so reintroducing them or more modern languages with a quick off-the-shelf environment to get quick and easy feedback would be a great start. For example, the OU has based its new introductory language, SENSE, on MIT’s Scratch [ MIT ], and the students get a little board to play with too. This is only for an introductory course, but quickly covers all the basics to allow people to go on to further study. For a quick taste of how the language and environment works, there are useful videos demonstrating it in action [ TU100 ].
One of things I love about programming is that it is in fact very creative – you’re designing and building something – and if you can get students to experience that buzz then you’ll get more and better people going into what is a very important industry.
And it’s not just the languages. There’s been some excitement around a project to develop extremely low cost computing again – the Raspberry Pi [ Pi ]. This project was set up by a bunch of the people who’d experienced the original home computer boom (in fact one of the authors of Elite is involved) and wanted to bring some of that excitement and immediacy back. In the age of expensive and over complex PCs, laptops, smartphones and Games Consoles, they’d found that a lot of people were scared to fiddle with them in case they ‘broke’ them (and get told off), and the development suites were expensive and hugely complex. So their idea was to produce a really cheap simple computer (£25, which means pretty much anyone can afford to just get one on a whim) running open source software, and get the wider community to do something with them. In many ways it’s even simpler than the old home computers: while the processor and memory is much better, it’s been designed to be a flexible core of a system, so you need to add a keyboard and (once again) plug it into a TV. At least this time around many people will have compatible monitors so you don’t have to monopolise the only TV in the house.
And there’s already many ideas [ Forum ], from using python to make enjoyable programming education packages, to running in-car entertainment systems, emulators, and the core of many homebrew hardware controllers. Given the rollout of IPv6, we are getting close to the long predicted Internet Of Things, where masses of small cheap devices connect and collaborate, and tiny boards such as the Pi could be a first taste of this. Ultimately these will need to become entire systems on a chip, including CPU, memory and Wifi connection, and perhaps even generate their own power from ambient energy [ EnergyHarvesting ]. Then things will get interesting.
But the most fun thing I’ve seen so far is someone has got a ZX Spectrum emulator running on the Raspberry Pi [ Emulator ]. Nostalgia has never been more cutting edge.
[C64] A new one! http://www.commodoreusa.net/CUSA_C64.aspx
[O Level] O Level computing: http://www.cie.org.uk/qualifications/academic/middlesec/olevel/subject?assdef_id=904 and http://www.edexcel.com/quals/olevel/7105/Pages/default.aspx
The image is of a Sinclair 48K ZX Spectrum, and was taken by Bill Bertram: http://commons.wikimedia.org/wiki/User:Pixel8