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.
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.
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?