The last two weeks have been a perfect example of how hard it is to be a Lazy manager.
I've been hard at work porting over an old VB6 app to VB.Net. Along the way, I've done my best to goldplate the application: I've created a plugin framework using the Strategy pattern and I've implemented Model-View-Presenter to the best of my ability. All in all, it's been a fun little project.
In addition to that, I've been getting bombarded with requests for 'small projects'. These could be fixes (slightly larger than bugs but slightly smaller than projects) to our existing product or changes to side products that we have. The difficulty with all of these is that they typically fall into a category where I don't have a developer.
My team of 20 developers is mostly broken up according to what product they're working on. This creates a problem when you have more products than you have teams. How does that happen, you ask' It's actually disturbing how simple it is to orphan a product when it's stable but doesn't quite generate enough cash to justify its own development group.
What this eventually creates is a bunch of holes in the 'developer sieve'. To imagine the troubles that this creates, just punch some big holes in your sieve at home and watch how much of your pasta falls into the sink the next time you're trying to strain out the water. To further push this metaphor, just imagine a little version of me running around in your sink trying to catch all of the pasta! That's one freakin' bizarre image.
So this brings me to the next trait of a good IT manager: you've got to be Incompetent. To explain this, let's use the situation that's come up over the past couple of weeks.
PM: Mike, I need a change on this MapEditor to filter out all of the TRENCH layers.
Mike: All of my developers are currently booked up. I'd love to do it but I have absolutely no idea how to code.
PM: Damn'it sure would have been handy if you could have coded this up for me.
Mike: I'd love to but unfortunately I'm incompetent. Wanna grab a beer'
PM: Sure, that'll make me feel better.
[Much later'..]
PM: Geezzzz Mike, you're the best (lots of slurring). I'm screwed on this project but at least you didn't get into a situation where you couldn't manage your guys because you were too busy coding.
Mike: That's a good point. Want another jug'
See' It's that easy. Of course, the PM got screwed but they always manage to find ways to screw themselves, don't they'
The moral of the story is that coding is fun but if you're a manager then you've got to stop coding. It can only lead to problems.