jump to navigation

Friday Philosophy – My Introduction To Programming Way Back When March 13, 2015

Posted by mwidlake in history, off-topic, Private Life.
Tags: ,
8 comments

One fortunate thing about me is my age. Or rather, how old I was in the 1980’s. I was at school in the 80’s, I did my ‘O’ Levels (taken at age 16) in 1984. One of my ‘O’ levels was in Computer Studies. This was before Windows and Excel and Word and all that office software, before the internet was in existence (TCP/IP was only standardized in 1982!) and phones were all tethered to the wall with a cable. What were we taught in Computer Studies? Programming. That and a bit about hardware, but mostly it was programming.

This beast had  about 48k of memory and hi-res 320*192 pixels

This beast had about 48k of memory and hi-res 320*192 pixels

In the first year of my two-year course we had just two computers to use between us, both RM 380Z’s I think, so we wrote out our programs by hand and worked through them logically to try and get them as good as we could before our turn came to put them into the computer and run them. This was of course painful, but our programs initially really were of the terrible simple “take in the temperature in Centigrade and convert it to Fahrenheit” scale of things, before we went all crazy with power and wrote a program that would ask you which way you wanted to do the conversion. We all had a 5-1/4 inch floppy to store our programs on but were told to take great care of it as they would not be handing out more! Needless to say, it was not long before most of us were turning up at the “computer room” (the schoolroom with the two machines and the broken lock) at lunch times and after school in order to get more time on the machines. The only problem was that in our first year of ‘O’ level we had to contend with the older kids from the year above us and they did not like us oiks turning up to use “their” computers. At least we were introduced early to a key concept of a career in IT – working outside and beyond the standard office hours.

For some of my class mates, they had other options. The early 80’s were also when home computers burst onto the scene and some friends had ZX81s, Vic 20s, Acorn Atoms, Dragons or, gasp, commodore 64s. My older brother had a ZX Spectrum, with the 48K ram pack.

My brother's spectrum, access denied to little me

My brother’s spectrum, access denied to little me

However, the Spectrum was not available to me as my miserable bastard of a brother would not let me near it. You might think this was reasonable as he was the older brother and it was his computer. But it was plugged into my portable TV and my cassette tape recorder. This was what you had to do with these early home computers as almost none came with a “monitor” and most with no storage device. Certainly no internal hard disc! When you turned off the computer, whatever program you were running immediately evaporated out of memory and you had to load it up from tape next time you turned the computer on – given that you had saved it to tape first. Games came on cassette tapes so before you could play, you had to load it. For. 10. minutes. I think one person had access to a machine that could use our precious single 5-1/4″ floppy but he was not happy as that computer was rubbish for games.

{For anyone reading this who is less than 35 years old, before downloads we had CD’s, which you know about. Before CDs we had vinyl records, which you may or may not know about as they became cool for a while again. Before CDs we also had cassette tapes, which you may not know about, which were about the same size as a credit card but about 1.5* as thick as an iPhone. You could record between 30 (C30) minutes and 2 hours (C120) of music onto them, over and over again, and they would fit in your pocket. But then the tape would either eventually stretch (especially if it was a C120) leading to very waily, odd playback, or your cassette player would “eat” the tape and you would spend 30 minutes with scissors and tweezers pulling it out of the machine. Ahhhh, the memories.}

The joy of pre-recorded and blank cassette tapes

The joy of pre-recorded and blank cassette tapes

Where was I? Oh yes. My brother used my TV and my cassette player which, together, had cost more than his computer. He felt he could just use my stuff as he wanted but I could not use his computer. If I was watching my TV when he wanted to use his spectrum, he would get really obnoxious and aggressive until I “agreed” he could use it. But I was never allowed to use his spectrum (well, not when he was around to know, anyway). You might pick up that this could have led to a little bit of sibling angst and an ongoing feud that continued into adulthood? Too damned right!

RS 480z - we had SIXTEEN of them, and a shared disc

RS 480z – we had SIXTEEN of them, and a shared disc

Getting back to the main thread, unlike most of my class mates I was limited to using the two computers at school. However, when I came back to school after the summer break between my fist and second year of doing my ‘O’ levels I came back to find they had finished building the dedicated computer room. It had air conditioning, a working lock on the door, about 16 RS-480Z computers and a smell something like melted plastic, new carpet and nail varnish – which never went. There was also some sort of shared storage, I think it was another 480z with a hard disc in it that all the other machines could see. So we all had a machine to use during lessons, the ability to save and load the programs all the time and programming really did become the thing we did. Due to the afore mentioned brother issues I still ended up doing some programming at lunch times and after school, fighting off the oiks from the year below…

My first real program that I remember doing, which I felt was more than a glorified calculator or pathetic painting of a house in lines and boxes, was a program that played Naughts and Crosses, or Tic-Tac-Toe as our US friends would (in my opinion, crazily) say. I don’t recall how long it took but I do remember my teacher telling me I was maybe being a bit “optimistic” when I said I wanted the computer to play rather than just letting two humans play against each other. I got it to work. Go Me!

As I said, I can’t really remember much more about what programs I wrote, it is a long time ago and my memory is poor. But I do remember that most of the course was about understanding programming and hardware, such as it was back then. As the years went by into the 90’s and 2000’2 I’m told the programming side first reduced and then almost {if not totally} disappeared to be replaced with being taught how to use computers and packages. ie Windows, Excel, Word and the like. So I grew up and was at the “right” age when home computers came along and schools in the UK taught at least some of us to program.

I still have one of these somewhere...

I still have one of these somewhere…

I got a ‘B’ in the final exam, which was OK. So that set me on the road to programming and my career? Well, no. After my ‘O’ level, I did buy my own computer, an Amstrad CPC 464 (maybe not a great decision!) and I did do a bit of assembler and programming, but mostly to try and hack into the games I was playing. By now I was doing my science ‘A’ levels, there was no option of an ‘A’ level in computing and no computing element to my ‘A’ levels. Then I went on to college to study biology, where computers were not really used much outside of the computer science department. There was a terrible programming course I went on as part of the Zoology half of my degree but it taught us less than my ‘O’ level and computers were just not a part of the Genetics half of the degree I did – which looking back at it, stuns me. We used to work out the general size and layout of plasmid genomes (bits of bacteria) by hand on paper. I got sick of doing it and wrote a program on my CPC 464 to do it and, for a few weeks, academic life was easy. My tutor got really mad when he found out I had written a program to do it. I don’t know why and I don’t think he could tell me why, he just felt I was cheating. Oh well.

Of course, once I left college life took another turn and I landed back in the world of computers {back then they would take people with no programming skills but good logic/maths and train you from zero}. But I already knew how to program and that gave me a bit of help in my first job. I could spend more time than my colleagues could worrying about how to be an adult rather than how to start programming. I might be able to program, I’m still struggling with being an adult.

Update – as Niall points out in his comment, things are now improving at schools AND colleges. What originally prompted this was a discussion I had with a friend who had just finished his computing course at college. The course was about computer games. And had involved no programming elements at all, it was all about design, marketing, testing, running a business… I was stunned. I then made some comment about at least he would have learnt about programming at school, but no, he had not. I was stunned again. But he knew that it was coming back – as covered so well by Niall.

I suspect the Raspberry Pi has helped too, though most people I know who have bought one are, well, mid-40’s people who did programming at school…

Was the Oracle UK logo Blue back in 1991? December 6, 2011

Posted by mwidlake in history, Uncategorized.
2 comments

I think I might be going mad. I was sure that when I joined Oracle UK back in 1991 that the massive “Oracle” sign above the main office on “The Ring” in Bracknell was blue. It was the building that looked like a load of cubes balanced on each other.

As I remember it, the office stationary had “Oracle UK” on it in blue and my business cards were similarly coloured. I can’t find any 20 year old stationary to prove it and I owe Bryn Llewellyn a bottle of wine if I turn out to be wrong.

I’m sure I also remember fellow consultants joking in around 1993, when the annual bonus was particularly poor, that it was due to all the money spent going from blue to red stationary and signs when our UK identity was absorbed into the parent beast…

Friday Philosophy – The start of Computing October 7, 2011

Posted by mwidlake in Friday Philosophy, history.
Tags: , , ,
add a comment

This week I finally made a visit to Bletchley Park in the middle of England. Sue and I have been meaning to go there for several years, it is the site of the British code-breaking efforts during the second world war and, despite difficulties getting any funding, there has been a growing museum there for a number of years. {Hopefully, a grant from the Heritage Lottery Fund, granted only this month, will secure it’s future}.

Why is Bletchley Park so significant? Well, for us IT-types it is significant because Alan Turing did a lot of work there and it was the home of Colossus, one of the very first electrical, programmable computers. More generally of interrest, their efforts and success in cracking enemy ciphers during WW2 were incredibly important and beneficial to the UK and the rest of the allies.

In this post, I am not going to touch on Colossus or Alan Turing, but rather a machine called the “Bombe”. The Bombe was used to help discover the daily settings of the German Enigma machines, used for decrypting nearly all German and Italian radio messages. All the Bombes were destroyed after the war (at least, all the UK ones were) to help keep secret the work done to crack the cyphers – but at Bletchley Park the volunteers have recreated one. Just like the working model of Babbage’s Difference Engine, it looks more like a work of art than a machine. Here is a slightly rough video I took of it in action:

My slightly rough video of the bombe

{OK, if you want a better video try a clearer video by someone else.}

I had a chat with the gentleman you see in both videos about the machine and he explained something that the tour we had just been on did not make clear – the Bombe is a parallel processing unit. Enigma machines have three wheels. There are banks of three coloured disks in the bombe (see the picture below). eg, in the middle bank the top row of disks are black, middle are yellow and bottom are red. Each vertical set of three disks, black-yellow-red, is the equivalent of a single “enigma machine”. Each trio of disks is set to different starting positions, based on educated guesses as to what the likely start positions for a given message might be. The colour of the disk matches, I think, one of the known sets of wheels the enigma machines could be set up with. The machine is then set to run the encrypted message through up to 36 “Enigmas” at once. If the output exceeds a certain level of sense (in this case quite crucially, no letter is every encrypted back to itself) then the settings might be correct and are worth further investigation. This machine has been set up with the top set of “Enigmas” not in place, either to demonstrate the workings or because the machine is set up for one of the more complex deciphering attempts where only some of the banks can be used.

This is the bombe seen from the front

The reason the chap I was talking to really became fascinated with this machine is that, back in about 1999, a home PC programmed to do this work was no faster than the original electro-mechanical machines from 1944 were supposed to have taken. So as an engineer he wanted to help build one and find out why it was so fast. This struck a chord with me because back in the late 1990’s I came across several examples of bespoke computers designed to do specific jobs (either stuff to do with natural gas calorific value, DNA matching or protein folding), but by 2000, 2002 they had all been abandoned as a general PC could be programmed to be just as fast as these bespoke machines – because bespoke means specialist means longer and more costly development time means less bangs for your buck.

Admittedly the Bombe is only doing one task, but it did it incredibly fast, in parallel, and as a part of the whole deciphering process that some of the best minds of their time had come up with (part of the reason the Bletchley Park site was chosen was that it was equidistant between Oxford and Cambridge and, at that time, there were direct train links. {Thanks, Dr Beeching}. ).

Tuning and reliability was as important then as it is now. In the below picture of the back of the machine (sorry about the poor quality, it was dim in that room), you can see all the complex wiring in the “door” and, in the back of the machine itself, those three rows of bronze “pipes” are in fact…Pipes. Oil pipes. This is a machine, they quickly realised that it was worth a lot of effort to keep those disks oiled, both for speed and reliability.

All the workings of the Bombe from the back

Talking of reliability, one other thing my guide said to me. These machines are complex and also have some ability to cope with failures or errors built into them. But of course, you needed to know they were working properly. When these machines were built and set up, they came with a set of diagnostic tests. These were designed to push the machine, try the edge cases and to be as susceptible to mechanical error as possible. The first thing you did to a new or maintained machine was run your tests.

1943, you had awesome parallel processing, incredible speed and test-driven development and regression testing. We almost caught up with all of this in the early 21st Century.

Follow

Get every new post delivered to your Inbox.

Join 184 other followers