How I got started programming

Anne Kate pushed out and asked for some folks to answer the question “How I got started programming?” Seeing as I was on the list (not quite sure how I made that list, but ok…) Here’s the juicy bits

How old were you when you started programming?

I had to really think about this, but I think I was 12. It may have been when I was 13. I remember spending many, many long hours puttering away at the thing while in Jr High. I’m sure I wrote a few simple programs then, but to be honest I mostly used it to write or get into BBS’s.

How did you get started in programming?

My first computer was a TRS-80 Model 1 (no, not the Apple II that so many others day). I longed for an Apple II, and I recall they were in my high school – but I never had one myself. I did learn/teach myself Pascal on the Apple II (this would be around 1983- 84) (they were Apple IIc’s by then), but I got started on the TRS-80 with 4K of RAM – Upgraded multiple times over it’s lifespan until we more RAM (I don’t recall the max) and 3 (yes, Three!) Disk Drives (that was for compiling in Pascal – lots of disk swapping). A lot of people called them “Trash 80’s”, but I loved that machine.

What was your first language?

I’ve to say BASIC. I vaguely recall programming all sorts of spaghetti stuff in BASIC in my earliest years. Once I got to High School and learned about Pascal though, I never really looked back. All these folks were talking about how awesome BASIC was, and it was good – but it wasn’t nearly as interested as Pascal was to me.

What was the first real program you wrote?

Oh lord, I have no idea. Probably some little trivia thing in BASIC or something to generate a space-invaders like graphics on the machine while I was trying to figure out how all those nifty games worked.

What languages have you used since you started programming?

All, well – obviously BASIC and Pascal. From there it went to: Fortan, Ada, C, Hypertext (if you want to claim that – I did some wicked-cool stuff with Hypercard back in the day), Z80 Assembly, Perl, Bash/KSH, Java, C#, Python, Objective-C, Javascript, Ruby, and most recently a little Erlang just to see what it was about. I could probably claim a little JCL, but I’ve blacked that time out of my memory. That’s pretty much in the order that I used them too. I didn’t get into Computer Science in college – I was in Electrical and Computer Engineering. They started me out in Fortran, dumped me in the Operating System sections of the cirriculum into Ada, and sort of skipped teaching me C in any reasonable way at all. I recall being confused for a year what that whole (void *) thing was all about and how it worked. I really taught myself C, without a good reference. Shitty way to do it too. Not surprisingly, I prefer the dynamic languages today. It’s probably worth noting that I don’t actually think of myself as a “programmer”. I thought I might want to be one at one point, but I’m really more of a “systems guys”, where systems is building larger environments and things out of building blocks. The reality lurks somewhere between straight up “programming” and what some would call “system administration”. While I’m a perfectly competent and able programmer, that’s a hobby/side thing for me rather than what I consider my profession.

What was your first professional programming gig?

The first gig I had where I programmed (not the same as your question, I think) was as a System Administrator at the University of Missouri – Columbia. I wrote quite a bit of maintenance and utility code in Perl, sh, and later Java. Later on at the same University, I became a Lead System Administrator (a manager in any sane place, but I didn’t have a manager title – just the responsibility of one) and there I was much more heavily involved in progamming. Actually (here’s the fun part) – I’d hired Gus for a while at that job… so you can imagine where he got his start at not wanting to “work for the Man”.🙂

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

Learn how to use source control! It’s a personal pet peeve of mine – that students coming out of a university haven’t a clue how to really collaborate with anyone else using things like source control/versioning systems. I don’t really give a crap which one you get into, but for krike’s sake please learn one! There’s a huge amount of more and likely better advice out there for new programmers – shoot, Jeff Johnston and I hassled some poor sod that came by the XCoders’ after-meeting a few weeks ago with a ton of advice on living and working as a coder in Seattle fresh out of school.

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

The most fun? Wow – that’s hard actually. I enjoyed the hell out of creating TrenchMice (now defunct) with Django and Python. I’ve also more recently really gotten a kick out of working on a Disney game with some co-workers down in North Hollywood, CA. And I think I’ve been the most proud (not a category, but I’ll loop in there anyway) of the work that I did with Gus and a select few at the University creating a real Single Sign On environment before it was cool or even fashionable. It was a mixture of complex infrastructure, databases, coding utilities and web application, and keeping the whole thing running integrating NT 4, Novell Directory Services, Active Directory (just out at the time!), Unix/NIS, and Kerberos systems with a single web-based front end. I suspect it’s all way gone to hell now at the University, but we made it and ran it for several years there.

So there you go – a little history of me.

2 thoughts on “How I got started programming

  1. I’d also say that the SSO (technically a SAR) stuff we did at the university was the most fun I had as well. If only because people didn’t think such a thing was even possible🙂

    Like

  2. Ohh, I worked on some SSO stuff at UTD, where I worked for a year or so after I graduated. Good times. “Doing the impossible” is one of the most rewarding experiences in any kind of engineering.

    Like

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s