I Have 4.5 Out of 6 Good Programmer Indicators

Daniel, a business guy, lists 6 traits that he believes help identify a good programmer. It’s written for those who aren’t programmers, and want to hire good programmers. I tend to agree with all the points he makes.

The 2 I have slight contention with are the ones I don’t nail; imagine that.

1. Passion

Hell yeah… you either have to tear me away from work with a crowbar, or I have to be seriously burnt out. I love this shiz.

2. Self-teaching and love of learning

I don’t read books or documentation to learn. Instead, I like diving into the code head first and go, “wtf… this is overwhelming!” I do, however, love books and docs for reference. Gooooooo Flex documentation team! Yall rock. Moock is dope, too.

Also, I have a really short attention span. I like learning new stuff over and over and over…

3. Intelligence

My D&D character of myself has an Intelligence of 13. That means, I get at LEAST a +2 to all Intelligence related skill checks.

The only social situations I have issue with is when someone is talking at me vs. talking with me, or their insanely pompous.

4. Hidden Experience

Heck yeah, you have to to keep abreast. I have 2 folders of relevance on my computer: “_Projects” and “_Work Projects”. I store my personal stuff in Personal and work related stuff in Work Projects. The underscore makes them go to the top when sorted by name. I have tons more folders in my Projects folder than I do in my Work Projects folder. Some are small tests to learn things that I want to refer to later. Others are full blown pet projects that I spend weeks on.

This doesn’t include open source, uploading examples to my blog, writing code for conference presentations, etc. None of that is work related; it’s all on my own personal time.

5. Variety of Technologies

I get this half-way. I do not do a variety of technologies; at least the way he describes it. I stick to the Adobe client stack of Flash, Flex, Fireworks, Photoshop, as well as a decent amount of HTML, CSS, and JavaScript as well as all the other support technologies (ANT, JSFL, etc).

I’ve done a decent amount of PHP & ASP classic in the past to help my Flash coding endeavors and a tincy bit of Ruby on Rails to learn what all the fuss was about.

Bottom line, though, I’m a specialist. I focus on my area and want to be the best at what I do.

I think what homeskillet was referring to was not that you are proficient in a wide array of technologies from other stacks, but rather that you’ve used them enough to recognize their strengths and weaknesses. The best discussions in the Flash & Flex world are when people from other dicicplines contribute ideas from other worlds and challenge current assumptions. Breaking out of the bubble and leaving your comfort zone in order to expand your programming horizons.

Reading how Spring, and other cool things can be beneficial to Flex from the Java sphere or having to hear how ActionScript sucks for 2 days straight from a .NET guy because it doesn’t have a built in clone method. There are many great ideas that have been out for awhile. Learning about what benefits other technology stacks offer helps give you more context to what you know.

6. Formal Qualificiations

While I agree certifications are crap, I didn’t program before college/uni. My life before then focused on Rollerblading, video games, D&D, and chasing women. I only started programming half-way into my college curriculum.

Formality is crap anyway, though. If you can’t use Google to learn, not sure what to tell you. Half the knowledge you need to know is out there on the interwebs. The rest you can learn on your own. There are also a ton of great programming books to learn from as well. For the record, I did enjoy and learn a lot from college.

Via Visual Rinse.

5 Replies to “I Have 4.5 Out of 6 Good Programmer Indicators”

  1. Jesse,
    Thanks for the link back… I too though the formaility was abit of a stretch… but hey this is coming from a guy (me) who writes code but has a design and art history degree…. so naturally that CS degree doesn’t seem quite as important to me. ;-) I have a bit more PHP and content management system expereicne to help me cover the number 5 item… but here’s the kicker…

    I don’t really consider myself much of programmer. I can plan and architect systems, and certainly can hold my own in AS, etc.., but some of my coworkers are actually much better programmers than me.

  2. Respect.

    I’m a graduate–or I should say–I’m currently enrolled in Google U. It’s the only way to learn if you don’t want to pay mucho dinero for an education.

    I love that line from Good Will Hunting to the Harvard student, “You wasted $150,000 on an education you coulda got for a buck fifty in late charges at the public library.”

  3. Anything I would have learned in college (ala 1996) would be hopelessly outdated by the time I graduated.. books and Google are 50% of the equation.. the other 50% is from doing it wrong, tearing it apart and learning from your mistakes.

  4. Werd! You nail this one on the head Jesse. I think it is funny how 99% of the programmers I work with that are worth mentioning will agree also. There are some really bad programmers out there that think a formal technical class is going to give them all the knowledge they need. The brightest, most talented programmers out there are able to teach themselves and will do it because they can’t stand now knowing how to do something when it interests them.

  5. Hey Jesse,

    A common friend (Cliff R) pasted me this link. Good to see there are a lot of people who find this article useful :-)

    Just a note – as I mentioned in the article, these are indicators, not requirements. So if you fit 4.5 out of 6, chances are you *are* a great programmer :-) (and, from what Cliff tells me, you are!)

    Daniel

Comments are closed.