Saturday 19 September 2015

Colossal Cave

My programming epiphany consisted of two programs - Space Invaders and Colossal Cave.

I first encountered Space Invaders in 1976 in Tokyo. It was a dedicated machine, you put money in to play. What help there was, was all in Japanese, which was Double Dutch to me, but I didn't need a manual, it was obvious what you were supposed to do and how.

I met Colossal Cave at about the same time. It was on an HP 3000 that the company I worked for had just installed to replace the PDP11-45. Colossal Cave was a text-based adventure game. Again, no manual, you had to work out how to use it. And it was designed so that you could. You can get it for your Android phone.

The big thing that I learned from these, is that it's possible to write software that doesn't need a manual, that's obvious in how to use it. We all take this for granted today, you see toddlers playing with smartphones. But in 1976, software was dificult to use.

Today, the expression "user friendly" has died out, because everything is user-friendly. In 1976, it was a very new idea, and most software was user-hostile. You had to type the right command, or the software would exit ungracefully with a remark like "Bad input", giving you no clue as to what you've done wrong.

When I got an IBM PC, one of the first programs I implemented was Space Invaders (my take on it was called "Cash Crisis"), using currency symbols for the screen display, and each level was progressively harder until in the last level, the invaders were invisible, and as far as I know, only one person even made it to the end of that - one of my daughters. Another of the first programs I implemented was the Colossal Cave adventure.

You can also get it on your Raspberry Pi.

apt-get install bsdgames

So now you can experience 1970s gaming for yourself.


  1. Plugh. I lost a lot of dissertation time getting to the end of the Adventure. With that, and Rubik's cube..