Computercraft Ltd
I learned my trade at Computercraft; it was a fun place to work and did very innovative work; Computercraft wrote the Bitstik, one of the earliest CAD packages for a microcomputer.
Pete Naisbitt
I owe much to Pete Naisbitt, a colleague and friend who died in 2003. Pete was a very smart man; he had a breadth of knowledge from the very abstract to the very specific; from him I learned the tricks of how to make 'C' object oriented (structs with pointers to functions) long before Stroustrup came up with C++.
Projects
I worked on a wide range of projects:
Interactive video authoring system
Pete and I developed an interactive video authoring system. The software, written in 'C' on a PC, controlled a Philips Laservision system. I was primarily responsible for the development of an interpreted programming language that manipulated video and graphics and text screens.
I also worked with Pete on a HCI research project funded by the Open University Systems faculty. A prototype was developed on an Apple II computer running UCSD PASCAL that involved extensive use of graphics and the application of a joystick to allow naive users to control the system very easily.
Terminal Emulations
I designed and implemented a PC emulation of a Lynwood terminal for Hill-Samuel Merchant Bank. The software was written in 'C' and 8086 assembly language.
I also developed terminal emulation software for a variety of dumb terminals for CADO mini-computers. A MICE II Z80 in circuit emulator linked to a XEROX 820 microcomputer running CP/M was used to assist the development of the firmware.
Games
I wrote a version of the game Monopoly for a subsidiary of Virgin Games. The game had originally been written in 6502 assembler and was rewritten for a PC using Microsoft 'C'.
Library classification
One of the most interesting project I worked on was a library classification system for NACAB funded by the British Library. The purpose of the system was to classify all the advice leaflets published by NACAB. The information scientists used a faceted classification scheme in the 1940s.
The computer software processed the classification and generated output for a typesetting machine; it also automatically generated indexes (permuted and thesaural) from the classification.
I have been interested in classification and search ever since. I suspect that one day the limitations of collaborative tagging or folksonomy will make classification driven search fashionable again.
Prolog
I wrote a staff rota system in Prolog. This is one of the few occasions I have strayed beyond imperative programming languages and it was an interesting experience.