Thirty years ago tomorrow, on March 5, 1981, in England, a small black box was unleashed onto the world that almost single-handidly created the home computer revolution in the UK: The Sinclair ZX81. To a teenage boy with no particular interest in computers to that point, it was like being handed my own spacecraft, a sleek slab of the future.
Furthermore, the design and engineering of the ZX81 imprinted some lessons on me about creativity within constraints that I still live by today.
The ZX81 was a very simple computer designed for home use, and it's key selling point was its incredibly cheap price: £49.95 as a DIY kit, £69.95 as a ready-to-go unit (double these numbers for an approximate $ equivalent at the time). Even by today's standards and adjusting for inflation, this was a very, very inexpensive high-tech product.
The ZX81 was initially sold through the mass-market bookstore chain W.H. Smith, sort of like a low-end Barnes & Noble with outlets on every high street in the country. This gave the Sinclair huge presence, and the company went on to sell 1.5 million of them in three years, becoming the first computer that regular people could come in contact with in normal life and realistically take home to use and experiment with. It spawned a community of enthusiasts and mini-industry of developers that still lives on nostalgically.
The ZX81 was produced by Sinclair Research, the company named after Sir Clive Sinclair, who was the nerdy James Dyson of his day. By today's standards it was laughably under-powered: a 3.25 Mhz CPU (not a typo), 1 kilobyte of RAM (also not a typo), and the only permanent storage was with an old-fashioned cassette tape deck. It hooked up to a regular TV, and I have fond memories of sitting in front of the blue glow of our old tele while poking away at the ZX81 sitting on top of the small square coffee table.
Because of the TV, it displayed text and graphics in low-res fashion - think crude Space Invaders. The machine had no file system (pointless since it had no permanent memory), and no programs pre-loaded. The concepts of files, applications, graphical interface and doing more than one thing at a time were completely foreign to the ZX81 universe. If you wanted it to do something, you had to program it, or load a program into RAM using the (very unreliable) cassette deck method. If someone kicked the wall-wart out of the socket, you lost everything.
RAM could be expanded with a module that plugged onto the back. It held 16kB, a total luxury after being limited to 1kB ("I'll never fill that up!" I thought). However, the module simply friction-fit onto a card edge connector and was notoriously sensitive to movement. And when you're typing on a membrane keyboard on a machine that weights only a few ounces, movement happens, resulting in the module momentarily losing contact and wiping out whatever was stored on it. This inevitably happened just as you were finishing typing up a multi-page program printed in Sinclair User magazine...
The design of the box was quite sleek and sophisticated for its day, given that most of the hobbyist computers of the time were unsightly conglomerations of badly molded plastic, stamped sheetmetal, and faux wood veneer. Low and thin, minimalistic black, with an "aerodynamic" flip up along the back edge, the ZX81 was visually more refined even that the Apple II across the Pond.
The ZX81's technical crudeness was both a limiter but also a source of inspiration, in that sense similar to other famous English machines like the Supermarine Spitfire aircraft, Lotus Elan car, and the Psion palmtop computers that came later. In all cases, the highly constrained nature of the product forced the designers and engineers to be creative with their solutions in a way that products and design teams with power, resources and money in abundance might not have.
For example, the ZX81 had to be programmed using its membrane keyboard, a type of design without moving parts that is normally painfully slow to use (imagine typing on a gas pump keypad for hours instead of just entering your ATM PIN). The engineers came up with an approach that gave the machine some smarts about the BASIC programming language, so that button pushes on the keyboard would insert whole words (e.g. pressing the P key would insert Print if you were starting a new line of code) when contextually appropriate. This did make the keyboard visually cluttered, but tolerable to work with. Once I got used to it, my schoolboy-sized hands could work it pretty quickly.
To this day I appreciate products that succeed because of creative approaches to their limitations, rather than brute force power and arm-length feature lists that let you get away with all kinds of laziness. The humble ZX81 showed that even a simple product can bring substantial joy and endless tinkering, if designed right. The ZX81 taught me the basics of computer logic and programming which I have long forgotten, but it is the lesson in elegant minimalist ingenuity that has really stuck with me and guided my design career for twenty years.
ZX81 designer Rick Dickinson's sketch imagining a whole modular system
Rick has a Flickr photostream of ZX81 design background (as well as its predecessor the ZX80 and some other Sinclair products) that's fun to look through.