What computer output is supposed to look like

Image of conv net learning to classify images of chess pieces
Conv net attempting to classify chess pieces

This month is the 41st anniversary of me coming face-to-face with a “micro-computer” for the first time – in WH Smith’s in Brent Cross. I am not truly sure how I knew what I was looking at (beyond I suppose the shop’s own signage) – because at that time not even “The Mighty Micro” – ITV’s groundbreaking (and exceptionally far-sighted) TV series had yet been broadcast, but I was instantly smitten.

If you remember the time, then you’ll recall computers were very basic and only ran BASIC (but you could still do a lot with that). Black and white (or green and white) graphics were the standard (unless you were a rich kid and owned an Apple II).

But that didn’t stop us – my brother and I got a Sinclair ZX80 in 1980 (even if you ordered early the wait was long) and started writing code straight away (there wasn’t much choice if you wanted to get some use from the device).

The best code was mathematical and computationally intensive (as far as 1KB of RAM on a board with an 8 bit 3.25MHz CPU would allow that is) yet managed to combine that with rapid screen updates – something that was difficult on a ZX80 because computation blanked the screen (a ROM update and an interrupt driver – we copied the machine code bytes into every program – later fixed that.)

So 41 years later the code I am now running – shown above – perfectly fits the bill for “proper computing”. It is a computationally intensive – essentially multiple matrix multiplications – convolutional neural network that is attempting to classify images of chess pieces of the sort commonly seen with published chess puzzles. But what I love most of all is the fast flickering digits (the nine classes) and small images (the output of the first two layers of the 50 filters that are at the heart of the network).

This is the second time I’ve had a go at this personal project and I’ve made some progress – but it’s been hard going. Most conv net users seem to have long moved on from C++ (which I am using) to Python libraries like Tensor Flow – so it’s not even that I feel I am part of a strong community here.

Lots of subtle (that’s my story and I’m sticking to it) programming traps – like the fact that the STL Maps class reorders the objects added to reflect the order of the key (sounds obvious when you say it like that – why would it not have such a lexical order?) – I had simply assuming that the entries kept the order they were added in. (This was today’s discovery).

But if it was easy to write these things then it would be no fun.

When Apple made mainframes

English: The logo for Apple Computer, now Appl...
English: The logo for Apple Computer, now Apple Inc.. The design of the logo started in 1977 designed by Rob Janoff with the rainbow color theme used until 1999 when Apple stopped using the rainbow color theme and used a few different color themes for the same design. (Photo credit: Wikipedia)

These days we think of “mainframe computers” as lumps of “big iron” computing power that are typically designed to handle lots (millions) of simultaneous pieces of data and record manipulation.

But the term did not originate in that way – a “mainframe” computer was simply one where all the key components of a “Von Neumann machine” were inside one box – a “main frame”.

So, it is interesting to see Apple advertising from 1978 (see page 16 here) describe the Apple II computer – oh how much I would have loved to have had one of those – in these terms:

Apple is a fully tested and assembled mainframe computer.

If that sort of approach from a company associated with miniaturisation is long gone, one approach has very much remained.

The main body of the advert states:

Just take an Apple home, plug it in, hook up your color TV and any cassette tape deck – and the fun begins.

But in smaller type at the very end of the ad we are told (emphasis added):

Apple II plugs into any standard TV using an inexpensive modulator (not included).

Still, if you could afford one of these devices (Apple seems to have always charged about £1000 for its computers) then you could probably have afforded the extra cost of the modulator. And they were lovely machines.

Enhanced by Zemanta

Compukit UK101

The BBC have an article on their site about building 8 bit micros – and it includes a picture of the UK

UK101 computer
IMage from wikipedia

101 – the machine that really started the home computer revolution (or at least served as its vanguard) in the UK.

I never had one, but boy would I have loved to have one – even though they (as correctly shown by the BBC) were essentially unboxed – just a keyboard (though a proper keyboard) attached to some board.

Breadboard 81

Benkid77 ZX80 Factorial
Image via Wikipedia

Not everything about computing is on the internet.

Sometime around this point thirty years ago my brother and I went to a computer exhibition in London – “Breadboard 81”

There are a couple of references to it findable through Google. But not much.

It was a fantastic experience – but perhaps also the end of an era: the computer that feature most of all was the “UK 101” – a kit based effort with a real keyboard (unlike the ZX80 Conor and I were using).

It is impossible to describe the thrill one could get from being able to see, use and program (in either BASIC or assembler/machine code) any of these devices: everyone was a pioneer and everyone was equal. (Though this book this book captures the feel of the era that was dying even as it peaked.)

Perhaps there are others who will read this who were also there and who can share their memories of this moment… reminding me of where it even was would be a start? Olympia?