Skip to main content

I learnt to program on a ZX81

My first job was for the Railways. It was fun working there until I was told that I could not be a member of their pension fund because I was disabled. I did not stay around to argue the point and moved on to work for a little networking company known as Network Interface Consultants.

There was a two-year probation before an employee could join the railway pension fund and I slaved away in blissful ignorance in what was to come. I wrote programs in Cobol with embedded SQL. The database was DB2 which was hosted on IBM and Amdahl mainframes. I was assigned to the Information Centre and my boss delegated me to program some management information systems. The railway wanted some simple reports which they had not been able to obtain from the Information Centre for years. The report requests were simple. They wanted:

  • Top 20 senders of goods per station
  • Top 20 receivers of goods per station
  • Consolidated Top 20 senders and receivers of goods per station
  • Top 20 types of goods send per station
  • Top 20 types of goods received per station
  • Consolidated Top 20 types of goods per station

Everything that was not in the Top 20 was aggregated into a 21st item named other.

I slaved away at my desk to write these reports with a few hiccups along the way. One memorable run had a logical flaw that resulted in a run lasting a full day and a bill of a quarter of a million Rands after which I finally delivered the program.

The next day they phoned me and said great, but they wanted additional reports. They wanted the report not by count but by financial value. Within an hour that was done and dusted.

The next request was to group all the stations into branches, i.e. stations were assigned a branch line number and the reporting was done per branch. The program took longer than what I envisaged as I had made a programming fault and could not spot it. It was a whole month before I had it working!

After I had delivered this version, I never heard from these guys again. A good many years later I was in a remote railway office and immediately recognized my reports laying on a table. I was impressed that my program was still being used!

Texas Instruments calculator

My first digital experience was using my dad's calculator, a Texas Instruments model, to help him pay and calculate the weekly wages on his farm, Oakvilla. This was an upgrade from a hand cranked adding machine that was used previously.

My first computer was bought by my dad while I was at Grey College. It was a ZX81 and would be the genesis for my career.   Listen to this BBC radio documentary: Celebrating the life of Sir Clive Sinclair: Computers at home It was a cheap system and I connected it to a television inherited from my grandmother Joey. I would sit on the end of my bed and input programs from British computer magazines. My mom has won a tape recorder as a prize at the local Spar and I used that to buy cassettes tapes that had programs stored on them that I could download to the ZX81. The programs would take ages to load and sometimes required multiple attempts. My favourites were the Flight Simulator and Chess programs.

The ZX81 only had 1K of RAM and required a clumsy addon to push it up to 16K. This addon was one which you could not bump while you were typing on a primitive plastics membrane keyboard. I was one of a million other similarly minded kids around the world learning about computers.   I persuaded my dad to buy one from a computer store in Pietermaritzburg that was nestled in the lane behind Shuter & Shooter bookstore. Next to the computer shop was the Juicy Lucy where my dad treated me to a Cheeza after the purchase.

I scored a holiday job selling books at Shuter & Shooter. During the holidays they would hire a hall at the Royal Agricultural Showgrounds in Pietermaritzburg and basically move their warehouse there for the duration. I would have parents come in with book lists and the move around the warehouse picking out the books from the stacks and placing them in a cardboard box.

Once a year the showgrounds would host the Royal Show. I would look at all the new tractors and dream of owning one. I never did. But by far the best part of the show was carts selling homemade sweets from the Fudge Lady. Sweets have never tasted any better since those days as in my mind no-one has duplicated the smell and experiments of those carts. 

We always had members tickets at the Royal Show. We would drink tea and have sarmies sitting in an enclosure service by waiters dressed up as Jeeves. Ouma Joey would join us and we would pretend to be posh watching the show jumping. I actually preferred the dogs being showed with the most boring being the cattle paraded around the ring.

When people refer to greater leaders of World War II, they refer to Churchill or Patton. When people refer to greater leaders in technology it is Jobs, or Gates. But there are greater leaders of World War II and technology than Churchill, Patton, Jobs, or Gates. They are Turing and Flowers, but history would not acknowledge them as such. Their work was the foundation of the allied victory in World War II and forms the basis of computer technology which underlies our modern society.

Make no mistake, Churchill and Patton were the public face of the victory in World War II with their combative actions and stirring speeches. Their leadership value was to inspire, but beyond that they lacked real substance. They would not change the world. That would be Turing and Flowers. They both worked at a secret facility in the UK, Bletchley Park, and it is here that computer technology was born. Turing would prevent U-boats from destroying shipping convoys and Flowers would help eavesdrop on the German command structure, decoding messages faster than what they could read it themselves.

Turing was the great theorist who formulated the basic algorithms of technology which we use to this day. He was also able to solve problems in intuitive ways, utilizing reasoning skills that leveraged more than just theoretical knowledge. In this way he was able to break the German Enigma codes, not once, but multiple times. The Enigma codes were what the Germans used to communicate with the U-boats in the Atlantic. Turing would seek patterns from known events then reverse engineer the coded messages. He built special purpose machines that solved the codes faster than some present-day general-purpose processors. A machine to solve a specific task is always faster than a general purpose one, even if it is more than 70 years old.

Flowers was a great practical man who was able to build complex technology with just the resources available in the 1940's. He broke the Lorenz code with that first computer. The Lorenz code was user by the German war command structure.

Turing would be ostracized and would take his own life when society tried to change his feelings of sexuality. The computer that Flowers built would be destroyed and due to the perceived impact of the cold war, never acknowledged.

It is a fallacy to believe that the great leaders are those that are well liked and for whom the most votes are cast. They are usually the most corrupt. The true leader succeeds without fanfare or reward, except his own belief and desire to solve a problem. That was Turing and Flowers! 


In South Africa we have Highveld storms that are awe inspiring but snow and cold is not a regular experience. It has only been my travels beyond the shores of South Africa, that I have encountered snow. In those parts of the world it is a common and often unnoticeable experience. However, for me, it is always new and exciting. In the late nineties I travelled to New Hampshire in the United States with Peter Turvey. We were working for Madge Networks and trying to score an OEM deal for Token-ring switching with Cabletron. I clearly remember from my visit to Cabletron the experience of walking past the meeting rooms with no chairs. The CEO believed it would help to be more productive if meeting rooms had no chairs!

The state of New Hampshire was covered in snow and we drove to the Cabletron buildings. It was a large glass building and like most of these, the glass was polarized to only look out but not in. We arrived a few minutes early and parked in front of the building. Outside the building was a large pond that was completely frozen over. I looked in amazement at my first site of frozen water, never having seen so much of it frozen. I walked out into the middle and jumped up and down. Next, I picked up a rock from the edge and tried to crack it. I then tried to run and skate on it with nothing more than my shoes and ended up on my ass. We then walked into the building, where many people had gathered looking out the windows at the madman who was out on the frozen pond. The deal never happened, but I do not think we can blame that! By that stage, the perception was that Token-ring was dead.

Saxonwold Shebeen

I have since moved on from programming into networking and more generic IT functions. Also specializing in the odd technology themed joke, here and there. I have one April's Fool's day decided to change Google Maps' location of the South African Presidency to 1 Saxonwold Drive. When I did it initially, nothing happened. Two weeks later I saw it as the headline article on News24.

Around the same time my review of the Saxonwold Shebeen had a shout out on the radio.

The best April's Fool joke was when I went to De Beers to help with a Netware issue. Outside the door was a group of angry people asking the network manager why he had to clean the network on that day and he should rather do in at night or on a weekend. He had emailed the company on April Fool's day informing them that he was going to clean the network. They were going to use compressed air and blow the dust out of all the cables. He asked people to step away from their computers as the dust was going to come out of the fan ventilation holes on their desktops. It was legendary.

I also hang out on the MyBroadband forums. If I don't find something to laugh about there, then its a really slow day. 

This article was previously published on LinkedIn:  I learnt to program on a ZX81


Popular posts from this blog

easywall - Web interface for easy use of the IPTables firewall on Linux systems written in Python3.

Firewalls are becoming increasingly important in today’s world. Hackers and automated scripts are constantly trying to invade your system and use it for Bitcoin mining, botnets or other things. To prevent these attacks, you can use a firewall on your system. IPTables is the strongest firewall in Linux because it can filter packets in the kernel before they reach the application. Using IPTables is not very easy for Linux beginners. We have created easywall - the simple IPTables web interface . The focus of the software is on easy installation and use. Access this neat software over on github: easywall

No Scrubs: The Architecture That Made Unmetered Mitigation Possible

When building a DDoS mitigation service it’s incredibly tempting to think that the solution is scrubbing centers or scrubbing servers. I, too, thought that was a good idea in the beginning, but experience has shown that there are serious pitfalls to this approach. Read the post of at Cloudflare's blog: N o Scrubs: The Architecture That Made Unmetered Mitigation Possible

Should You Buy A UniFi Dream Machine, USG, USG Pro, or Dream Machine Pro?