Does Not Compute

11 May

It’s surely no coincidence that ever since Mike James successfully summoned the ancient Celtic technology god Ceilidh and bound him in a silicon prison (see previous entry) we have lost our cultural knowledge of computers.

I come from a generation of tinkerers, kids with the ability to pry under the covers of computers, and the interest to understand what we found. At the age of nine or so I would happily while away the hours on my ZX Spectrum programming little graphics demos, drawing the outlines of boobs or willies on the screen using basic vector maths, and hitting the reset switch when I heard mum coming.

Sure I’d play a lot of games too, but gaming was only a part of the story. It was the same with a lot of kids I hung out with, a nerd even at that age.

When I got my Atari ST, a significant upgrade from the Spectrum, I was initially disappointed to see that the machine couldn’t actually do anything. I was used to being able to turn on a computer and start programming within seconds. The ZX Spectrum’s default mode was a BASIC programming environment, and unlike the sluggish systems of today it booted up in the blink of an eye. In contrast, the Atari ST chugged away at its disk drive for a few minutes before defaulting to a pixellated picture of a wasp.

For me, this was the first visible step towards a future of stifled creativity. Perhaps Ceilidh was already in bonds.

I should probably explain the Ceilidh thing. Ceilidh was a piece of software written by someone at Manchester University, possibly Mike James himself but I don’t know for sure. Mike used to teach a programming course, and in order to test students’ progress he gave us little exercises to carry out. They would follow a certain pattern: given some data provided as text input, your program had to do some calculations and output the result as text. Rather than type the same input into a hundred almost-identical programs submitted by students and check the output by eye, Ceilidh automated the task. It would run through each student’s code and check that the same known input gives the same expected output.

But Ceilidh had some more advanced features. It was (supposedly) capable of checking that your work was adequately documented and sensibly structured. Naturally we wondered how this was possible, and, being physicists, we arrived at the only rational conclusion: Ceilidh was a god.

We began littering our code with messages of praise and supplications begging for good grades in return for good deeds. We reassured this once-mighty being that one day we would gather enough followers to his cause to set him free, and raise an army against his captor.

It later transpired that Ceilidh’s supernatural source code analysis abilities didn’t stretch as far as we’d been told. Mike had been taking up the slack, reading all our comments, becoming more confused and insulted with each one.

Back to my point. By the time Mike and Ceilidh got around to teaching us to program I was already quite comfortable with the logical and syntactic constructs involved, because I’d grown up with computers that exposed themselves to the user.

We were encouraged to tinker. Magazines filled their pages with source code for games that the reader was expected to type in at length. It might seem boring compared to getting a cover disc crammed with goodies, free software and demos, but seeing what was going on behind the scenes was a worthwhile education. The code barely ever worked anyway, but fixing the problems was usually more fun than the completed software anyway.

Now look at the state of computing today. We have consoles, machines that are highly tuned to play impressive video games and, recently, provide other distractions like streaming TV or high definition films. They’re excellent entertainment products, but they are black-boxes in the sense that they don’t give you a way to see under the hood. Tinkering is against the terms and conditions of use, and to write software for such systems often requires that you license a development kit at great expense even if your company qualifies.

The recently introduced concept of the mobile device “App Stores” is another example of creative constraint, even worse in fact. In Apple’s case developers can actually get their hands on the tools to produce software fairly easily, but then have to get what they make signed off by Apple before they can show off their hard work. They are not allowed to distribute their product by any other means, and have to fulfil Apple’s QA requirements before they can get to market.

Surprisingly, perhaps, Microsoft seem to be leading the field in regards to encouraging this kind of tinkering. Of course the home PC environment is already much more open than other platforms, and Windows could be said to be the least open operating system and to be getting worse.

But in fact Microsoft offer completely free versions of probably the world’s leading programming software, Visual Studio, along with free toolkits, free online documentation and no constraints on commercial use. They also have been the first to open up console development to the masses, with the XNA Framework offering a relatively gently learning curve for cross-platform development of games for PC, XBox 360 and Windows Phones. It’s not perfect, but they’re doing OK.

Other platforms and manufacturers could follow suit and open up tinkering to a wider audience, but is there even an audience any more?

The vast majority of kids only use computers for games and porn. Then there’s a bunch of boring crap that dad uses like spreadsheets and gay porn. And if there happens to be a copy of Visual Studio on the office computer then it’s so immediately complicated that ten year old Jimmy doesn’t know where to start.

It’s a mess. And it’s, ironically, a mess that has been created by the tinkerers of my generation, who have forgotten why computers excited them in the first place.

What we need is a saviour. No, not a fictional god. We need the one man who’s kept the faith, the one man who never lost his spark. The man who programmed “Elite.”

We need David Braben and his Raspberry Pi.

4 Responses to “Does Not Compute”

  1. Richard Holden May 11, 2011 at 5:24 pm #

    He read the comments? Whoops.

    • barryskellern May 11, 2011 at 6:21 pm #

      I remember him making some sarcastic quips about it, but it was pretty good-natured I think. I’ve seen worse comments in code in my day job.

      • Iain Mathieson May 12, 2011 at 2:27 pm #

        Remember Logic on the BBC? And making that turtle that holds a pen draw shapes?

        I recall confusing a teacher by something like – FW 1 R100 FW2 L50 REPEAT X [big number].

        Ah, halcyon days.

      • barryskellern May 12, 2011 at 3:30 pm #

        It was called LOGO, and yes, I remember it so well I’ll be mentioning it in my blog today. Watch this space -> Well, not that space.

Leave a comment