Do you speak my language?

basic coding

basic coding (Photo credit: Terry Freedman)

When I started programming computers in the 1980s, life was really simple. Networking was in its infancy and the Internet was just a twinkle in Tim Berners Lee‘s eye. So you didn’t have to worry about communicating with other machines. There was no windowing concept, so the screen was only two dimensional. Computers tended to just be running your program so you were in complete control. All you had to worry about was lighting up the right bits of the screen and dealing with what the user did to the keyboard.

As time went on and computers became more advanced, the complexity increased. Computers started to talk to each other through something called a database. People will always argue about who invented the idea, but windows arrived along with icons and a mouse. Suddenly, the user could do exactly what they wanted and you had to share everything with other computer programs.

The Internet changed the way we think about computing completely. Suddenly computers talked to each other. No longer could you be prescriptive about what was on the other end of the conversation. Smartphones changed the game yet again. Suddenly, there were a multiplicity of devices all with different operating systems and different limitations.

Having been in IT for a quarter of a century, as you would imagine, I have worked with a large number of different software development technologies and computer languages during my time. My first exposure to programming was at home using BASIC (Beginners All-purpose Symbolic Instruction Code). As the name suggests, it is a great starting point for anyone. The language reads almost like plain English. Contrast that with the other computer language I used at home which was Z80 assembler which is akin to programming in hieroglyphics or runes.

When I first started programming for a living, I used something called ADABAS Natural from Software AG. This was not programming per se, but more like writing down what you wanted to happen and then handing it to your butler who took it away to some real programmers who turned it into a program. You never felt close enough to the machine to really feel like you were programming.

At college, I learned Pascal, which I took to like a duck to water. Pascal is like an extremely fastidious bachelor who lives alone in a penthouse apartment. Everything has a place. Don’t even think about trying to use something before you have told me exactly what it is or where it lives. The nice thing about Pascal was that you ended up with a very nicely structured (albeit wordy) program. It was also nice to use Turbo Pascal from Borland. In their heyday, Borland provided some of the most excellent programming environments around.

Later, I started to use DBASE from Ashton-Tate which was my first exposure to database based programming. As a language, DBASE was powerful but interpreted one instruction at a time, which meant it was tediously slow. It was a natural progression to use Clipper which retained the power, but it was compiled and so comfortably faster.

I never really liked C which was like a simpleton backstreet bruiser with extremely poor hygiene. You had to be really careful what you asked him to do, because he would take it completely literally. It was very easy to machine gun yourself in the foot.

My favourite language was Visual Basic which was like a man with a van – pretty handy for just about anything. You could knock up a program in no time and copy it to another machine using a floppy disk. Because of progress, Visual Basic became more like a man with a fleet of articulated trucks all filled to the brim with specialist tools for just about any task. You could do a lot more – but the simplicity had disappeared.

I would like to teach my nephew and niece about the joys of programming, but the barriers to entry are high. I was delighted when I heard about the Raspberry Pi. This Cambridge based initiative is all about providing a simple computer at an affordable entry point. I registered my interest straight away, but unfortunately I was not alone and stocks are hard to come by.

So I settled on the Cubox instead which is a similar concept, but a bit more expensive and a bit more polished. It includes things like a case and a power supply. Maybe my nephew or niece will grow up to develop the next great leap forward to make programming even more complicated!

Should have seen it coming

Sinclair 48K ZX Spectrum computer (1982) Türkç...

I can’t remember exactly how old I was. Probably 12 or 13. Mum had dragged me round to her friend’s house. I hated going to her friend’s house. For one thing, it was the most interminably boring thing in the world sitting there whilst they drank tea and talked about what were, to me, the most mundane subjects in the universe. Not only that, but I wasn’t keen on her friend either. She was nice to us when mum was around, but unpleasant when we were alone. So, as you can imagine, it brought out the worst in me.

On this particular visit though, I learned that they had just bought a computer. I was intrigued. I’d never seen one. I’d heard about them on John Craven’s Newsround – sure, but never had I seen one in the silicone. I asked if I could have a go, and I was left to it in front of a pristine Sinclair ZX Spectrum. It was plugged into an old portable TV and there was a tape machine to one side. I took the only tape they had, “Horizons”, read the insert and followed the instructions. I was completely enthralled. I went through every program on both sides of the tape and played with that machine for hours. For once, it was Mum who wanted to go home and it was me that wanted to stay.

I didn’t think too much more about it and before I knew it, Christmas had arrived. Bleary eyed, myself and my brother headed downstairs at some ungodly early hour to open all our presents. I remember dad had taken up position with a camera to capture our expressions as we came through the front room door. We groaned as he captured us in our unkempt, half awake state and descended upon our presents. I was initially disappointed – was my pile smaller than usual this year? The first present I opened turned out to be a tape machine, which I thought was a great present and I spent a few moments thinking about what I could do with it before moving on the next present.

It wasn’t long before I could make out the box inside the wrapping paper and my heart sang! It was a Sinclair ZX Spectrum – fantastic. I couldn’t wait to get it open, plug it into the TV and explore the possibilities. Again, I spent hours in front of that machine, being physically pulled away for Christmas Dinner.

After the Christmas break, back at school, the playground talk was all around what we had been given for Christmas. Amazingly, my small circle of friends had all been given Spectrums! We were told off more than once on that first day for talking incessantly about computers.

I remember a BBC TV program called “Me and My Micro” where they explored the possibilities of these new microcomputers that were spreading like wildfire. I remember watching the presenters program the computers, showing you the BASIC language and what you could do with it. I decided that I wanted to learn how to do that and fished out the orange book that came with my Spectrum and read it cover to cover whilst trying things out on the machine.

A little later that year, mum was pregnant with my sister. I know they talk about women “blooming” during pregnancy, but that’s not exactly how I would describe mum’s experience. I used to arrive home from school, walk in the door and ask dad how mum was. Invariably, he would say “the same as yesterday”. Deciding that discretion was the better part of valour, I would lock myself away in my room programming my ZX Spectrum. I don’t think the time was wasted – I wrote a number of games, at least one of which was published.

So – it’s no surprise that I ended up in a career in software development. I guess I should have seen it coming.