What coder type are you?
Posted by Eric Torrey
Mar 14
The Warrior:
Through the days in the life of a warrior, you strive to be explicit. Resorting to partials is only a sign of weakness. Thousands of lines of duplicated code will triumph over that petty conditional logic. Everything you write can be understood by all; you fight on an open battle field, and expect your fellow coders will do the same. Never will you add a plugin you don’t need, but will instead craft every line of code yourself. Your tests prove every case possible by sheer brute force.
The Wizard:

As a wizard you strive to find the most elegant solutions to every problem. Your strengths derive from your large ability to read and consume code. You have a large index of plugins for every problem you face, and aren’t afraid to manipulate the Rails domain. You make contributions to the plugins you use, and give thanks to those who write them. Your methods are rarely repeated, and you use meta-programming techniques to arbitrate every problem to bendable solutions. Your tests are elegant and simple with lightweight methods that make use of helpers.
The Rogue:

Daft and tricky, the rogue programs with traps. You excel in using private and protected methods. Most of your attributes are attr_protected. You strive to keep your security tight, because you know all the loopholes. Rogues dabble with plugins on occasion, because they don’t want to write the code themselves. You want the quickest, most secure solution possible, and make sure to plant test traps for every line of code. No one can modify your code without tests breaking. Your code only needs to make sense to you.
With the chaos that is software development, you must choose your class to take with you into battle. Some have shown the ability to meld into rogue-wizards, or even warrior-rogues. How would you define yourself?
Comments on this post
Mar 14
Dr J said,
Can I be a “wizard-rogue”?
Mar 14
Jeremy McAnally said,
I put on my wizard hat and robe…
Mar 14
Iain said,
Is there a hermit class?
Mar 14
Dev Purkayastha said,
No cleric? Serious, no Cleric programmer-type? This is BULLSHIT.
Mar 14
Jerrod said,
no kender either? bummer.
Mar 14
Adam Soltys said,
Awesome post!
Mar 14
Erin Kennedy said,
What about the ‘n00b’ coder? :P Hahaha
Mar 14
Chad Pytel said,
@Dev Purkayastha, we’re thinking about adding the cleric class in version 3.5 of this blog post. Please feel free to post your suggestions.
Mar 14
Ryan Wilke said,
Don’t forget about us gunslingers over here Chad! :)
Mar 14
Daniel Fischer said,
I’m probably a rogue coder that turns into a warrior at night :-p
Mar 14
bryanl said,
How about a “Pimp” class? No explanation needed. Either you know or you don’t.
Mar 15
Nicolás Sanguinetti said,
I’m a Ftr 1/Rog 4/Wiz 1. The levels were taken in that order. I’d like to keep progressing as a wizard, but the extra +1d6 sneak attack in the next level of rogue looks soooo promising.
Let’s see what happens :)
Mar 16
Peter Cooper said,
I’m in the “Ogre” class. I don’t care about elegance, just about getting quick, messy results. I smash code with my giant club and don’t get on well with others.
Mar 16
Floyd said,
Peter, “Ogre” is a race, not a class. You are probably thinking of “Barbarian”.
Mar 17
Dev Purkayastha said,
If I may suggest: the cleric.
http://blog.forgreatjustice.net/2008/03/17/coder-classes-the-cleric/
Mar 17
Matt Powell said,
@Dev Purkayastha: When you suggested the Cleric, my immediate mental description was something like:
“The Cleric doesn’t need tests. He just prays his code will work. If it does, it’s probably a miracle.”
Sorry, comments are closed for this article.
© 2000 - 2009 by thoughtbot, inc.
written by a bushel of tiny robots
Come “ride the toad” on Hoptoad, the app error app.
Thunder Thimble: Brand monitoring for social media.
Widgetfinger: Simple content management for simple websites.
Tee-Bot, funny shirts your friends won't understand!
Umbrella Today: “It’s like totally the simplest weather report ever, Julie.”
Thoughtbot
thoughtbot is a technology consulting firm that provides web application development and design services. We focus on building modern systems, embracing good ideas and delivering elegant solutions.
Interested in learning Rails?
Sign up for our beginning or advanced training.
Archives