Jeff Brand has tagged me to answer a few questions on how I got started in this business…
I never do anything personal in this space, so this will be a first. Here goes:
How old were you when you started programming?
Ummm, my grandfather supplied us with a TRS-80 Model 1 Level 1 (4k, cassette drive) when I was about 8 years old. It started there, and proceeded through everything Radio Shack had to offer for quite some time. No artsy Commodores/Amigas/Apples at our house…
What was your first language?
What was the first real program you wrote?
Gosh. I tried my hand at writing a basic word processor for the TRS-80 – I think I called it TextStar. I’m sure I lost some school reports as a result. In that general timeframe were some text-based adventure games, too…
What languages have you used since you started programming?
Hmmm. Basic and QuickBasic as a kid. Pascal and Fortran in college. C and C++ in all my early jobs in this field (along with VB6 to test all those COM components...) After that, the only language I’ve approached seriously is C#. (Does BizTalk count?) I dabbled in a lot of other languages, but haven’t done project work, where you learn all the ins and outs…
What was your first professional programming gig?
As a college intern at CyberOptics, writing all kinds of applications for laser and vision-based inspection systems. Very fun stuff, and some of the best mentoring I’ve ever had. And hey, what doesn’t spell fun like writing your WndProcs for Windows 3.0 ?
If you knew then what you know now, would you have started programming?
Certainly! This has been a great industry to be a part of. I had serious dreams of pursuing music as a career at one time, but as David Chappell once said, regardless of what artistic value you might attach to a given gig, you’re really just there to sell beer.
If there is one thing you learned along the way that you would tell new developers, what would it be?
Focus on the practice/art, more so than individual technologies. Realize that the people you work with are the first order function for success, rather than a given technology choice.
What's the most fun you've ever had...programming?
I’ve always had the most fun when I’ve had the opportunity to work with a team that is “long-lived”, small, and dangerously focused.
Often in this industry we work with team sizes (and organizational dynamics) that breed ineffectiveness. It is amazing how much more apt you are to wake up before the alarm when team productivity is at its peek — and “in the zone” becomes normal.
Who am I calling out?