Damn you MacKay (oh, how very Stargate)
How old were you when you started programming?
You young people today with your 4Gb of memory and your multi-core processors and your fancy disk drives. It’s not like I was when I was young, oh no. My school had an RM 380Z, with a grand 4Kb of memory, 8" floppy drives a fat clunky keyboard and a main CPU box that was the size of 2 Xboxes.
How did you get started in programming?
The computer teacher was our headmaster. He couldn’t really cope. So I grabbed the manual myself and started. Being the precocious little brat that you all know and love soon I was teaching him. But that passed, the 380Z was retired and home computers started to become affordable. I sold off my Scalextric set (much to my dad’s disgust) and begged my parents to make up the rest of the money to buy a computer. I can remember going around the resellers looking at the Dragon 32, the Acorn Atom, the Commodore Vic20 and the ZX Spectrum. The Dragon reseller was working out of his house. Of course all the demo machines had games set up to show off their specifications but I managed to persuade the parents it would be educational. I settled on the Spectrum with its "dead flesh" keyboard. Rubber doesn’t have tactile feedback, well not the type you want anyway. I hooked up the tape drive and away I went. Obviously it was games at first, the joys of Manic Miner still appeal today, but after a while curiosity took hold and I wanted to know how to do it myself. Numerous magazines, retyped BASIC programs and I was hooked.
What was your first language?
Spectrum BASIC. Which was fun because you didn’t type GOTO. Oh no, Spectrum BASIC was strange, you typed the line number (remember those kids?) and a space and then the next keystroke would enter an entire keyword. After that it was hand assembling machine code and using PEEK and POKE.
What was the first real program that you wrote?
I guess that depends what you count as real. I had a competitive thing going with one of my friends, he on his BBC B with its structured BASIC and myself on the Spectrum. Text adventures were all the rage so we both wrote those. You try putting a full English parser in 48k, utterly impossible, but we kept trying. I had code published in a magazine for the BBC Micro which did funky stuff with a Watford Electronics EEPROM board (attempting to emulate the way the BBC Master loaded ROMS). But if real means for money then a QuickBASIC program which polled an IBM mini-computer, pulled down data and printer out bar codes on a laser printer for sticking onto boxes.
What languages have you used since you started programming?
From Spectrum BASIC there was Z80 assembly. Then I got a BBC B and there was 6502 assembly. After that Pascal, COBOL and Modula2 in my brief stint in higher education. Then QuickBASIC under DOS on an original IBM XT (back in the days when IBM had circuit diagrams and a full assembly listing of the BIOS in the reference manuals) and RPGIII on a System/38. Then C, C++, Visual C++ with MFC, Visual Basic, SQL, VBScript (for ASP and WScript) then C# with bits of VB.Net thrown in.
What Was Your First Programming Gig?
My first job started off as a tape monkey for AVX Ceramics, an electronics company. I also ended up supporting all the PC users (the secretaries used to bribe me with chocolate to fix their problems first). I remember crawling under the false floor in the operations room to lay cables and the panic when no-one told me the Halon gas alarm was about to be tested. There was a need to produce bar code labels for shipping and so I ended up producing the "real" program I talked about earlier.
If you knew then what you know now would you have started programming?
What makes you think I know anything now? I don’t know if I’d be good at anything else; I’ve invested a lot of time into getting to where I am today and I enjoy it immensely. It suits my twisted mind set so yes, I’d probably still start down that route. However would I head down it if I were starting today given how developers are commoditised and outsourced and thrown aside? That’s a different matter.
If there is one thing you learned along the way that you would tell new developers what would that be?
If you’re in it for the money you’re doing it wrong. I’m lucky; my hobby is my job and that’s what you should be aiming for. Oh, and despite the best efforts of some its very hard to meet hot babes in programming; so think outside work more than I ever did.
What’s the most fun you’ve ever had ... programming?
Fun? Computing is serious business I’ll have you know. I guess SharpSTS is the most fun I’ve had, simply because it was a challenge, trying to build a system around undocumented, unsupported and mostly unloved standards. There’s always SubText as well, which I shamefully am neglecting these days; not so much for the coding but for the people involved and the learning experience you get from picking Phil and Jon's brains. Speaking at TechEd was pretty special too.
So time to spread the love; Peekachu I choose you. Err. No. Jon, Gary, Mr. Murphy, young Plipster and even younger Baby Ben.