Darryl tagged me with the “How I got into programming” meme recently. So I finally got around to answering the questions (better late than never…).
How old were you when you first started programming?
Probably around 7 or 8.
How did you get started in programming?
My mother decided a computer was important for education. Not knowing anything about computers at the time somehow the family decided to purchase an Atari 520 STe. The package came with a copy of BASIC, and so it began…
A copy of ST BASIC was included with the Atari 520STE package we brought. Although I wasn’t able to understand much of the manual (and had no computer “gurus” to turn to) it caught my interest. I started to devour books in local children libraries. There were loads of books such as “15 Graphic Games for the Spectrum” which enticed me with neat looking graphical games with a page or two of code to type. I never really got many working due to difficulties porting the code to work on the Atari but it was enough to get me hooked.
What was your first real program you wrote?
At the time computer hardware typically came with schematics and programming documentation. So I also learnt a lot by writing small programs to control our dot matrix printer, changing fonts and drawing basic images etc. This is probably where I got my interest in writing software that interacts with physical hardware.
My first “real” program was probably a small music scheduling app. You could create text based playlists of music and sound effects from various sources (wave files and CD audio tracks) and play them back in sequence with simple next/previous buttons. It was used for a small stage production at my high-school.
What languages have you used since you started programming?
Following on from various forms of Basic I was introduced to Pascal in the form of Turbo Pascal. A natural progression was to want to write GUI based windows applications. After a false turn with CA Realizer I used Delphi 4 (object pascal) to great success.
My interest in electronics and embedded devices introduced me to machine code and assembly for various platforms (Microchip PIC, Motorola 68K, Atmel AVR and MIPs among others) and eventually C.
What was your first professional programming gig?
Phil Holliday was kind enough to offer me a part-time job while I was a student at Holliday Group Limited (now called Blackbay). I helped develop PalmOS and then Windows Mobile applications primarily in the freight logistics area.
If you knew then what you know now, would you have started programming?
Most definitely, but I may have done things differently…
If there is one thing you learned along the way that you would tell new developers, what would it be?
Technology is only part of the equation. Most projects don’t fail for technological reasons, but instead due to human factors. People who have a strong command of the human factors of software projects are in very short supply. Try to complement your technical study with aspects of business and team building.
What’s the most fun you’ve ever had… programming?
Playing a catch up game, developing a product that didn’t fully exist but was already sold to an overseas customer. This involved many long nights and pulling all sorts of tricks out of the bag. At one stage we purposely used SQL injection attacks to work around the lack of remote access to a server!