My bio starts with this phrase “Adrian Cockcroft has had a long career working at the leading edge of technology, and is fascinated by what happens next.” About every 5–7 years the thing I was working on that was going to happen next matured and went mainstream, and something new and interesting took its place. Sometimes it was hard to get people to take a chance on me doing something new, but they mostly worked out.
My mother Margo was an elementary school teacher, she taught me to read when I was three, before I went to school, and I grew up reading lots of books. My father Nick was a statistics lecturer at Hatfield Polytechnic (now the University of Hertfordshire) for most of his career. He’d programmed in the 1960s and encouraged me to learn. Hatfield Polytechnic installed what was at the time “the largest educational computer in Europe” in 1970, a DECsystem 10. My high school was affiliated with the Polytechnic and there was a 300baud line and a Teletype (paper roll and punch tape) that anyone could book time on to mess around with during lunch breaks. Starting in 1972 I taught myself BASIC, then Algol, and remember playing lunar lander. However my main academic interest was physics, rather than computing. My main non-academic distraction was playing bass guitar, which reached a peak in 1982, gigging regularly with Black Tiger, part of the “New Wave of British Heavy Metal”, then I got a job, moved away, and stopped playing regularly.
I graduated from The City University in London, in 1982 with a degree in applied physics and electronics, and built a maze solving robot as my final year project. It had 4Kbytes of RAM, and I designed and wired the CPU board together myself. Software was written in Motorola 6800 assembler, using a PDP-11 running Unix V6 as a development platform. That got me a job at Cambridge Consultants Ltd as a software engineer writing code (mostly in C) for embedded real time signal processing and control systems. It also got me a side job looking after the new Unix systems they started to use, and in 1984 we were one of the first customers of Sun Microsystems. I was officially a one-day-a-week sysadmin for about ten workstations and servers. The full time admin only looked after our VAX/VMS systems, and our “Unix guru” Dave Reynolds was a senior engineer who taught me a lot, but was too busy to do admin work. I was installing, upgrading, and doing backups, as well as writing code on projects as my primary job (An early introduction to DevOps?). There were a few formative experiences, I shared an office with Sean Martin and learned how to be a software engineer and build real time systems working on projects with him, then he was promoted to manage our group. I forget his name but there was also a brilliant engineer who we called Consultant in Most Things. He seemed to be instantly and deeply familiar with any technical subject, however novel. I was never in his league, but it was inspirational for my early career development.
In my spare time I built a home-brew computer called a Microbox II, designed by my friend Dave Rumball, soldering all the components onto the board. It had a 6809 CPU and ran an operating system called Flex9. I got hold of the code for the Dr Dobbs Small-C compiler that ran on Intel 8080, and ported the code generator to 6809 (and a few other Motorola based 8-bit CPUs). After getting deep into how a compiler worked, I was a much better C programmer! I wrote a tutorial manual for the language and sold a few copies of my compiler as Silicon Fen Software Small-C.
One day in 1985 or so Sun founder Bill Joy was in town to do a talk at Cambridge University, and dropped by to meet us. This had a big impression on me, as it was clear he was living at least five years in the future, compared to what we knew about, and that was an inspiration. The future is here, but it’s unevenly distributed as William Gibson once said. Ever since then, I’ve tried to make it my job to look for signs of emerging technology trends and act as an early adopter, to figure them out. One of those trends was parallel and multi-threaded processing, and I led our early use of the Inmos Transputer and Occam language on some projects, including spinning off a startup called Niche Technology so that we could do development work for them. I built a platform in Occam that ran existing FORTRAN code on a 64-node Transputer board that plugged into a deskside Sun workstation to give it about 20 times speedup. Follow-on funding didn’t materialize, so it never made it to market.
I spent six years at Cambridge Consultants, building some interesting systems, and learning a lot, but by then Sun had opened a sales office across the street, and I wanted to find out what they were going to release next, before everyone else. So in 1988 I joined the Sun sales force and became a Systems Engineer (nowadays we would say Solutions Architect).