Good Programmers

Ran across an article this morning on How To Recognize a Good Programmer. I think his points are very interesting, particularly his “positives” and “negatives” columns:

Positive indicators:

* Passionate about technology
* Programs as a hobby
* Will talk your ear off on a technical subject if encouraged

Ran across an article this morning on How To Recognize a Good Programmer. I think his points are very interesting, particularly his “positives” and “negatives” columns:

Positive indicators:

* Passionate about technology * Programs as a hobby * Will talk your ear off on a technical subject if encouraged * Significant (and often numerous) personal side-projects over the years * Learns new technologies on his/her own * Opinionated about which technologies are better for various usages * Very uncomfortable about the idea of working with a technology he doesn’t believe to be “right” * Clearly smart, can have great conversations on a variety of topics * Started programming long before university/work * Has some hidden “icebergs”, large personal projects under the CV radar * Knowledge of a large variety of unrelated technologies (may not be on CV)

Negative indicators:

* Programming is a day job * Don’t really want to “talk shop”, even when encouraged to * Learns new technologies in company-sponsored courses * Happy to work with whatever technology you’ve picked, “all technologies are good” * Doesn’t seem too smart * Started programming at university * All programming experience is on the CV * Focused mainly on one or two technology stacks (e.g. everything to do with developing a java application), with no experience outside of it.

This jives with my experience. I’m not a programmer, because I don’t enjoy programming full-time, but I am a sysadmin. I look at when I started monkeying with hardware and operating systems… I was eleven, and wanted my connection to LINDA, a local bulletin board system, to work better. I began taking apart our old “Portable” PC (a fifty-pound behemoth with a teeny, tiny green screen) in hopes of finding a way to improve performance.

Side sysadminning projects? I run this web site, and a few dozen others for friends and non-profits. I am passionate about adminning systems, to the point that sometimes I get obsessive and don’t know when to leave well enough alone. I do it for fun, and a hobby sometimes.

I think the principles laid out above have relevance to far more than programming. To find someone passionate about their job, you look for someone who’s passion extends beyond the workplace, regardless of their field of endeavor.