The 10 most INHUMAN bosses you'll encounter: A Reg reader's guide
A BOFH's guide to debugging the Anti-Managers from hell
4: The Contagious workaholic / Presenteeism
It is easy to confuse time spent on a task with the quality of the output and the effort you put in. This is not like overclocking your PC. A bit of voltage here, a few clock cycles there and your PC goes a whole 6.143 per cent faster (don’t tell me you don’t measure to 4 significant figures). Then you hit some timing issue and lose two minutes every time it has to reboot – and 20 minutes of work that autosave didn’t. So there’s a maximum, just like with people. Sadly, the performance is either not visible in terms of work that has to be redone, or far too visible when people quit or seriously lose the plot.
These paired bugs often come from pressure that the manager is himself feeling, which is a relation of the antipattern Garbage in Garbage Out; as a scheduler he is getting bum control data. This is a more awkward bug to fix because you need to reverse the polarity of the neutron flux data flow. Your boss/task scheduler needs to demonstrate progress, which makes visible productivity (VP) our friend. The trick here is to find out what that VP needs to be, because a common reason for this form of panic behaviour is because your boss doesn’t know what bits of the workload are actually cared about by the people who yank his chain. That means sitting down with him to work these out.
That relates to the other cause of presenteeism, which is the opposite of the former VB6 programmer, where the tech you use is utterly outside his understanding so he falls back on the simplest stupidest metric. You fix this by setting expectations, sharing with him that you will do A in X time, B in Y time and making sure you are not bullied into shortening them.
5: The bastard boss
You’re unimpressed with this being the fourth entry which means you are well on the way to being types five, six and seven types of an AntiManager. Bastardity is a measure of scale, not one of correctness. When you spot a variable with the wrong value you don’t say it is “less wrong” because the discrepancy is small; it is right or it is wrong. Did George Boole live in vain?
The consequences may be greater if you’re doing stock control or trading mortgage-backed securities, but the defect itself is independent of the size of the damage it causes and so is the process for debugging. The code is just like your manager - it does not care about the consequences, you do; which is why you need to be objective. So to be blunt, there are no bastard bosses, just crap boss bug fixers.
6: The Priority Stacker
As I showed (in four) you have this bug without even having anyone to boss around. You focus too much on the most important thing and expect me (your humble correspondent) to deal with it first, regardless of efficient schedules. In any environment where changes in objectives happen (like all environments) this means you start and stop things so frequently that you find yourself typing the right code into the wrong function. Thus, your team is thought to be shit because you never actually deliver anything, but are always nearly about to deliver the Most Important Thing.
In multithreaded programming, we sometimes deal with this by increasing the minimum amount of time that can be spent on a task before its urgency is re-evaluated, which means guiding your boss to specific periodic meetings at which things are changed.
Also randomness is our friend here as well; a way to ensure that important tasks that lack urgency ever get done is to occasionally pick one at random and do it. To do this you almost certainly will need to lie, saying that this week’s critical task is dependent upon it. Yes, lie. Call it a white lie if you must, or, as in the first use-case, call it a “wrapper” around reality – but this is for his good as much as your own.
7: Credit Thief
Some bosses try to take credit for every good thing their team achieves, despite my article on getting to the top where I explain how extolling the virtues of your team makes you look a better manager to your peers and bosses. But it appears that some people don’t read my articles, so the first and easy fix is to find a way for your boss to read it – which is, of course, why God invented anonymous email accounts, in case he takes it the wrong way.
Like many of the trickiest bugs, you can argue that this is working as designed and that your role as a foot soldier is to make your boss look good. Even on a purely selfish basis, it helps if your boss is seen as wonderful because it helps him get stuff like pay rises and better office space for you.
Buggy bosses see their team as burdensome unwanted children, interrupting their real work of networking with the rest of the “management team”, talking to “key business sponsors” or chatting up attractive admin staff.
This is of course analogous to a duff pointer. He’s doing the wrong thing to the wrong objects and the best thing for him is garbage collection. But you don’t have permission for that, so you help him do what he wants to do by creating an increasingly virtual interface to what the team is doing until he becomes as fully disconnected as he clearly wants to be. After all, the whole point of VMs is that no matter how badly they screw up, they don’t affect you.
Reduction of unnecessary information flows will make him happier, as well as making his occasional attempts to actually manage the team less frequent and damaging.
Sponsored: Benefits from the lessons learned in HPC