Sunday, 10 July 2016

Wrote my first computer program 50 years ago this week

Now that July 2016 is here it is time to celebrate my half century as a computer programmer. Back in 1966 I was a 19-year old second year undergraduate at Birmingham University studying applied maths. In order to be close to my soon to be wife I took a summer vacation job in the maths department of Lucas Industries, then a major supply of automotive components for the British car making industry. The office was located in Shirley, Birmingham in England.

At the time Lucas had purchased an Elliott 803 computer housed in a specialised raised-floor computer room which occupied more than half of the space of the maths office itself. As the lowliest 'office boy' I was given the task of running a routine series of tests of the Elliott 803 every morning between 9 and 10 to ensure the computer was working as it should. This introduction to computers changed my life and eventual career in just a few short weeks. As the tester I became very familiar with the quirky computer and its peripherals and was soon punching programs written in Algol 60 on 5-hole paper tape.

The Elliott Algol compiler was written by a very famous British computer scientist Sir Tony Hoare. Code for the compiler was held in the last blocks of the amazing mass storage device being a magnetic tape system based on oxidised 35 mm film stock made by Kodak.This tape reader/writer which was the only equivalent to today's hard disk drives. To load the Algol compiler required winding the tape forward to near its end, loading the compiler, then winding back to the beginning again to use the first storage blocks to store the compiled machine code. You can imagine this process took many minutes, perhaps only to reveal a syntax error in your program! Patience was definitely needed to be a programmer in those days, and the skill of editing paper tape programs - imagine the process of changing, inserting, and deleting characters as you copy from the old tape to the new version. The tiny discs of paper from punching tape made great confetti.

I had the honour to meet Sir Tony on a couple of occasions at Queens Belfast where he was Professor of Computer Science and briefly at the University of Oxford Programming Research Group (PRG)where I was one of the first intake of 5 postgraduate students in 1967. The PRG was founded by Christopher Strachey in 1965 and his lectures to these 5 students on programming in the CPL language, designed by himself at Cambridge University and others from the University of London, became the cornerstone of my computer science career. I left the PRG to pursue by PhD at the University of Southampton in 1968 so missed working with Sir Tony when he became the PRG head in 1977.

In another coincidence 50 years ago in September 1966 Birmingham University introduced their very first programming course teaching the FORTRAN language. The students used 80-column punched card machines to write FORTRAN and the cards were processed on an English Electric KDF9 computer. Output was printed on huge line printers that rocked the computer room as they worked. Of course with a couple of hundred users sharing the same computer we were lucky to achieve one run of our program every 24 hours. Software engineers of today would be totally shocked but it meant every programmer needed to learn how to spend hours each day desk checking the program code in order to maximise throughput. Programmers today have their code checked as they type - a huge convenience. Despite these very substantial advances the number of programming errors never seems to decrease!

The Elliott 803 I used 50 years ago had the equivalent of 40 kilobytes of main memory. The smartphone in your hand today holds one hundred thousand times more memory. An Elliott 803 would cost the equivalent of 600,000 pounds today, the cost of 1,000 smartphones. Quick arithmetic shows the cost of computer memory has reduced by a factor of 100 million in 50 years. Amazing. Just imagine what the next 50 years will bring.

Despite the paltry power of the Elliott 803 in today's terms the computer greatly increased the calculating power of the Lucas Industries maths team in 1966 leading to improved products particularly in battery design. It is sad to see that Lucas was part of the demise of the British car industry only a decade later. I owe my whole satisfying career in computer science to Lucas and will be forever in their debt. My wife and I married in 1967 and will celebrate our own half century next year.

July 2016
Gold Coast, Australia