Eric Wise

Sponsors

The Lounge

Blogs I Read

Fun & Games

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
The Mythical Super Programmer?

I was cruising the Joel On Software forum recently and came across this post and I felt compelled to blog my thoughts.

I often find it quite perplexing, the term superprogrammer.  It seems that people are looking for this one size fits all definition of what is super.  This doesn't tie well to the definition of a super hero though which is the metaphor being used.  Super heroes are certainly super, but not perfect.  Generally a super hero has a few abilities that scale far beyond that of the average person (and oftentimes some weaknesses that scale far beyond as well).  My point is that what is super in one organization is not necessarily super in another.  Let's look at some cases:

 

Case 1: Super Speed Man

This programmer is fast, damn fast.  They can push working code at astonishing speeds.  These people generally have some solid code templates and a great memory for the framework and application so they rarely have to stop and look things up.  These are the guys that you assign a 6 week task to when it needs to be done in 3.

The weakness?  In most cases super speed man is short on useful documentation.  In addition, their code is rarely abstracted out and when requirements change down the road the code changes generally require more work than a better architectured solution would be.  Finally, sometimes this hero will forsake coding standards for the sake of speed.

Super Speed Man is most appropriate in consulting shops where the time is money scenario is very critical and the ability to push working code quickly to a customer is paramount.  Time to market is definitely a desirable thing, so speed man also excels in start-ups.  Speed Man can be frustrated by traditional shops surrounded by a lot of red tape.

 

Case 2: Mr Architect

Here's a hero that can build a framework that aligns with the needs of today and the perceived needs of tomorrow.  They have an innate ability to predict the future and see problems before they show up.

The weakness?  This guy is actually the opposite of speed man.  He requires a lot of time for information gathering and planning.  A shop that can't afford to wait is not a good match for this hero.  Also keep in mind that a shop with very loose requirements and specifications will probably frustrate this guy.  In addition, he can sometimes clash with Dr Consistency since patterns and framework concepts do change with time and individual growth.

 

Case 3: The Communicator

This hero has the valued capability of being able to translate "user speak" to "tech speak" and back.  This is your liaison to the other pieces of your organization and customers.  The communicator has the ability not only to make the end users comfortable that their message is getting across, but also can educate them in some of the inner mysterious of development.  This hero is your team's champion to the outside world.

The communicator is damn near useless in an internal shop with highly technical users.  Like Aquaman without a dolphin.

 

Case 4: Dr Consistency

This hero is a great member to have in an environment with multiple teams and workers that move between projects.  Dr Consistency is able to see development patterns emerging and set and enforce coding standards.  This hero is key to a multi project environment where maintenance is a concern.

Consistency takes time and refactoring however.  Organizations who are not willing to allocate time spent working on code that shows no change to the end users should avoid this hero.  He can also clash with super speed man when consistency adds time to the development process.

 

This was kind of fun.  Maybe next I'll do super villains.


Posted 11-21-2005 10:09 AM by Eric Wise

[Advertisement]

Comments

BTX wrote re: The Mythical Super Programmer?
on 11-21-2005 12:03 PM
mmm... I can do way better than your super speed man, I can do implementations sometimes 20 faster than some of my coworkers, and write better code (more scalable, flexible and generic) than all of the Mr Architects here =o)
Jeffrey Palermo wrote re: The Mythical Super Programmer?
on 11-21-2005 12:21 PM
BTX,
If that's true, then you need to jump ship. We need people like you. In what city do you work?
keith ray wrote re: The Mythical Super Programmer?
on 11-21-2005 12:59 PM
When it comes to the villains, don't forget "Makes-more-work-for others-Man. He looks very similar to Super Speed Man, but he creates so many bugs that you can't ship the product unless you have three Super-Bug-Fixers to compensate.
Sam wrote re: The Mythical Super Programmer?
on 11-21-2005 3:03 PM
In the same vien as Keith's comment, I nominate "More-Docs-Will-Save-Us-Man". He ignores readability, vetted processes and technologies (TDD, O/R Mapping, OOD), and simplification, insisting that all would be well if only you had more documentation. The catch is that no amount of documentation is ever enough, so MoreDocsMan is never wrong. ;-)
Robin Curry wrote re: The Mythical Super Programmer?
on 11-21-2005 10:04 PM
How about Mr. Gadget? An average man with average intellect, he would ordinarily be destined to a life of mediocrity, but, lo, through the use of his many tools, assortment of 3rd party "extensions", and dumbfound luck he is able to generate amazing feats that simply cannot be duplicated. Not that you'd want to.

You can often spot him clumsily applying the wrong tools to the wrong task, or "extending" haphazardly. Despite all this, some unnamed person (or thing) behind the scenes always seems to come along and make things right. Meanwhile, Mr. Gadget, oblivious, gets the hero's credit. If you listen carefully though, you can hear, off in the distance, the cry....'I'll get you next time, Gadget!'
Eric Wise wrote The not so mythical super villain
on 11-22-2005 3:52 PM
I had quite a bit of feedback from my previous post, so I figured I'd step up and do Super Villains now....
BTX wrote re: The Mythical Super Programmer?
on 11-22-2005 4:53 PM
>>If that's true, then you need to jump ship

thanks Jeffrey, I'm not "hirable" (is that a word?) right now, I'm going through some visa process that I can't screw up at this point, but for the same reason I'll be around some time, who knows
Jack's WebLog wrote The Mythical Super Programmer and Not So Mythical Super Programmer Villain
on 11-22-2005 9:59 PM

Recognize anyone you work with?The Mythical Super Programmer
I know you know someone in this list,...
the blog of michael eaton wrote Link Dump for Wednesday, November 24, 2005
on 11-23-2005 12:55 AM
the blog of michael eaton wrote Link Dump for Wednesday, November 23, 2005
on 11-23-2005 12:56 AM
Le weekly DanWatts wrote Quel type de developpeur etes vous, un hero ou un vilain ?
on 11-23-2005 10:47 AM
anti-keseronokan » Blog Archive » The Not So Mythical Super Villain wrote anti-keseronokan » Blog Archive » The Not So Mythical Super Villain
on 12-28-2006 1:03 PM
anti-keseronokan » Blog Archive » The Mythical Super Programmer? wrote anti-keseronokan » Blog Archive » The Mythical Super Programmer?
on 12-28-2006 1:06 PM
Ayende @ Blog wrote Super Coders
on 01-13-2007 2:32 PM

Super Coders