Few days ago I’ve brought up the short list of developer ‘genres’ I prefer working with. Obviously, every pot has two handles, so there’s another list that contains the categories of developer’s I’d eagerly avoid as hard as possible.
Here it comes, the rotten cherries on the top, the pigs between the pearls, etc. The shit-list aka the least wanted:
- PPT Architects - actually they don’t code. Of course, they could to, but it’s so crude and easy, that it’s good for simpletons. They actually have much higher aspirations - they are ARCHITECTS. They haven’t created a single line of code for 4 years, but surely they could if they wanted - they already know everything because they’ve read a book or two and besides - if you’ve created one application, you know how to create them all. Godlike creatures, PowerPoint is their comfort zone.
- The Pure Ones - the ones who work only with their own code; They’d preferably live in their own, little vacuum-sealed pocket universe. They always want to start with greenfield and they don’t want anyone else to change their code, but they won’t touch anyone else’s code as well. This way they can constantly polish their own creations in the way they prefer - they less you bother them, the happier they are. They puke when you mention “teamwork”.
- Powered by Google - they know the syntax basics and they are completely sure it’s enough - all the stuff is already on the internet, right? So the biggest challenge in their work is always to shape a proper query on Google or StackOverflow. Even if what they find is not really 100% applicable (usually it’s quite hard to asses that, so they don’t) and if it requires zillion of additional dependencies - it’s good, because it was +1’d on StackOverflow!
- The Sealed in Amber - those who never learn anymore, because they don’t care. They don’t know how VCSes work (some even don’t realize that you can get previous versions of the file from Subversion!), debugging is a black magic mumbo-jumbo for them. If you force them to switch to latest version of IDE, they won’t never ever learn any of its new features. What they want is to leave them be. Their productivity is legendary - because some say it existed, but no historian can confirm that :)
- Crazy Inventors - they can do whatever. as long as they can use some new toys. It doesn’t matter if those toys are really useful - they may duplicate other components, they may not be suited for the purpose - Crazy Inventors just HAVE TO put them in. The more the merrier. There’s also a sub-genre of Crazy Inventors who’s main purpose in their lives is to make frameworks out of everything - it doesn’t matter that just a simple 10 line long function is needed, CI can imagine 28 different versions that can serve 683 purposes that actually may appear in unspecified feature. Crazy Inventors are allergic to YAGNI.
- Ouroboroses - if you don’t know yet, Ouroboros is a symbol of infinity - a serpent that eats its tail (http://en.wikipedia.org/wiki/Ouroboros). I imagine such a looped developer in a slightly different way - he has his head sticked in his ass (yikes!). Due to that simple fact: they have their ears covered, so they never listen (but they may be quite good pretending); they have their eyes covered, so they never go see & check - they always ASSUME (obviously only what’s the most convenient for them). Why do I hate them? What’s worst about them? They always see one path = THEIR PATH. They can’t acknowledge there are several options to every solution and they can’t accept that somebody else’s idea may be as good as theirs. Creepy as it sounds.
Voila! Anyone got deja vu? :)