Damon Payne: Hand waving software architect

103db signal to noise ratio at < .03% total harmonic distortion
Solution Architect, software developer, geek
Damon Payne at Blogged
2009 Microsoft MVP - Client App Dev
2007 Microsoft MVP - Solution Architecture
 Tuesday, June 10, 2008
« TechEd 2008 Day 3 Part 2 – attendee part... | Main | TRUE deregulation is the only answer for... »

Larry Clarkin called me out in a question on software development going around the blogosphere.  Here are my answers.

How old were you when you started programming?

I was 11, we were living in a town of 600 people in southern Missouri.  I was very into arcade games and the few games we had for the PC which was an 8086.  My father, a very technical man but very cheap at the time, was loathe to shell out for a new video game.  At some point in a stroke of intuition, I realized those guys must create these games somehow. 

Damon: “Dad, if I can’t have a new game, I’ll make one.  How do those guys do that?”

Dad: “Oh, that’s with programming languages son”

Damon: “Do we have any of that?”

Dad: “Here’s the GW-Basic book that came with the PC”

I did the basic infinite loop printing my name, then learned the power of GOSUB and created a subroutine that would draw a spaceship and a subroutine that would shoot lightning bolts out of said spaceship.   I didn’t understand anything about how game worlds were animated though, the “tick” concept, and though that every on-screen object must be a Thread or something.  I left it alone until years later, living in Waukesha, my Dad brought home a Turbo Pascal compiler for our massively powerful 386. 

What was your first language?

GW-Basic, later Pascal

What was the first real program you wrote?

Well, the spaceship game was vaporware so I can’t say that one, but I did briefly experiment with audio on the 8086.  There was some kind of PlaySound(frequency, duration) function in GW-Basic, and I thought I’d need to write music for my eventual spaceship game.  I painstakingly assigned every letter of the alphabet a frequency inside a subroutine and checked the key stroke to see what letter was pressed.  I would type out various things that are not fit to print here in an attempt to see what words and phrases might make cool game music.  This program worked and met the intended scope.

What languages have you used since you started programming?

GW-Basic, Pascal, C, C++, Dephi, Q-Basic, Java, Javascript, VB.NET, C#

What was your first professional programming gig?

My internship of my Junior year in college ended up lasting through my Senior year, so nearly a year.  I was a C++ developer at Great Lakes Higher Education Corporation.  We were doing code on DB2 and Solaris of the kind JSP developers would soon become familiar with.

If you knew then what you know now, would have started programming?

Absoultely.  There’s few other things I could picture myself doing.  That sounds like a good blog post “What would you do if you couldn’t create software?”

If there is one thing you learned along the way that you would tell new developers, what would it be?

I would tell them to take an interpersonal communication class, or to spend some time as a real professional consultant.  Many early times in my career I got in trouble, or nearly got in trouble, by being cocky or not recognizing when situations were politically charged.  Even if you just want to write code, you must be aware of these things.

What’s the most fun you’ve ever had programming?

There are lots of small things along the way where things were fun for 6 months or so, but when I think about times I was most looking forward to going to work, it was actually (and I can’t believe I’m saying this) a project I did at Assurant health.  They forced me to use VB.Net which I hate, they gave us slow computers with mandatory virus scanning, and the schedule required heroics and a lot of cleaning up bad offshore code.  However, I had some excellent people to work with that I still stay in contact with years later.  I am now a client of The Clarkinator.  DeMilde, Terski, VanDyke, and others: it was a good time.

Who am I calling out?

Aaron Staves

David Snopek

Dan Vanderboom

Matt Terski