Tuesday 24 March 2009

How to Lose Staff and Influence People

So, yesterday was a bit of a mixed bag. I finally got to put the thing I've been working on into some hardware so I can see what it looks like in something approaching the box it should be in (rather than seeing it on my development machine). It was a glorious moment. In the space of about a month, a very small team of developers have turned around something that outperforms the application it's supposed to replace by so much that I just sat back with a massive, massive grin on my face. It just works, in every way. And on top of that, the code base is almost 1/10th the size of the original. And on top of that it's also been structured such that if you want to add functionality or change the look and feel, you have next to no code to write; it'll just load up whatever extra stuff you generate and incorporate it into itself (of course, no one but the current development team know the extent of the awesome in that respect). Even though I do say so myself, it's a good solution. It's been designed. We spent a lot of time and effort making sure that it does exactly what it needs to, and doesn't rely on lots of special cases and conditional hacks.

And so life is good. This, after all, is why I'm an engineer - it's only partly for the money (though that's sort of important). As I've observed a couple of times, engineering stuff is 90% miserable, difficult grind. But the payoff when you get something working right is worth all the pain. I tried to explain to my wife just how cool what we've done is, and I'm sure she thought I'd lost the plot somewhat: I get excited about it because the whole thing is elegant, and hangs together with the right-ness of something that has been designed and implemented well. I'm not talking about an intellectual analysis here - sometimes, things just feel right. And the more you delve into the design, and look at the details, and use it, the more you feel that. It's wonderful. It's why I do my job. And it's why I get so very pissed off when people force me to do my job wrong, or interfere when things are out of the hands of the designers and cark it up, or just don't get it, and in doing so undo all the right-ness.

Which brings me to the second half of the day. Now, I know I get a bit... how to put it... in your face with people at work sometimes. And because I know it, I actively try not to be in a position that I have to deal with people doing stupid things. And when I do have to, I run things past colleagues who I trust before I open my big mouth. It means I generally don't send emails to people when they've done something stupid pointing out they've done something stupid anymore, but instead send long considered messages about how it "might be even better" if we did x. One side effect of this is that it now takes me in excess of quarter of an hour to send even the simplest email to anyone outside my immediate team. It seems my precautions are wasted, since even after spending that amount of time writing my mail, even after getting it vetted by third parties, even when my direct superior admits he can't see anything wrong with what I've said, I still get a warning for writing aggressive emails. And what am I getting uptight (allegedly) about? Well. Let's see. The company I work for has a spectacular track record of making frankly bizarre arbitrary design and production decisions. I'd go into details, but I don't really feel I have the freedom to do so, but what it comes down to is that the organisation is incapable of either admitting (and learning from) mistakes, and has an obsession with meddling. Not a thing seems to get done without someone interfering from a position of complete ignorance. When it gets to the point that black box replacement components, which the design company state are direct replacements but with lifespan and reliability improvements, are vetoed by a technician with no consultation at all with our internal design team, you have to wonder what the point of having a design team is. I mean, I don't want to go to overboard on how amazing we are, but some of us have spent nearly ten years just training to do our jobs, before you even look at our industrial experience. Why hire people like that if you're just going to ignore them?

And I'm not even going to begin to rant about how let down I feel by the rest of the company. Apart from to state this: It does not take three months to set up an agreement with a distributor. If it does, then your commercial team need quietly taking out the back and shooting.

So, in summary: a good way to break the spirit of your staff, even when they can take pride in their own work, is to get them to the position where they feel let down by every other aspect of the company, cut them out of all communication that touches on their area of expertise as soon as any individuals outside their immediate team need to be involved, arbitrarily assume that your design professionals don't understand what they're designing and overrule their decisions, and if anyone tries to point out any cock ups, tell them to shut up. Oh, and for those of you that advocate the gently gently style of pointing out problems: Tried that. For months. As have my direct colleagues. It just gets ignored.

Well, that's me at my wits end. Anyone need a software engineer?

Sunday 22 March 2009

This is not news.

Now, clearly, this isn't news. It's just me putting words onto the intertubes somewhere very few people are going to read. And that's fine. I never claimed that this was news. The BBC, however, seem pretty big on the whole "this is the news" thing. So, I'm guessing it's a slow news day since the front page of bbc news was taken up with (in big-o-vision) Jade Goody shuffling off this mortal coil. Now, those of you (and I use "you" in the loosest possible sense, given that I'm writing this for a target audience of no one) that have had the unbridled pleasure of chatting to me about the subject of Big Brother and the contestants (and viewers) thereof over the past few years may suspect that I did a happy dance when seeing the news.

Thanks for the vote of confidence there, people. What sort of twisted psychopath do you take me for? Of course it's very sad when someone dies. If, for example, you know them even slightly. But, on the other hand, lots of people die every day. I'm willing to bet that a fair few of them are at least as worthy of a good mass mourn as Ms Goody. So why the hell is this front page news? And sweet zombie jebus, what is the Prime Minister doing leading the tributes to someone who never actually did anything noteworthy in the first place? Does he have nothing better to do? I'd quite like the leaders of the nation to spend their time worrying about slightly less trivial (sorry, but on a national level it's pretty trivial) things than the death of a reality TV "celebrity". And get this crap off the news. Let's have some fear-mongering, baseless speculation and horribly mangled misreporting of science. Have our journalists no professional pride? Will no one think of the children/immigrants/environment/bankers [delete as appropriate]?. We don't need cultural nonevents reported for the sake of it. Any idiot can write a piece about that and post it somewhere no one need ever have to bother reading it. Look, one just did.

Hmm.

On consideration, I'm tempted to think it's probably for the best if the current leaders of the nation spend their time commenting on the latest from the ex-I'm-a-big-celebrity-brother-academy-factor cultural melange than actually doing government. At least they'll be too distracted to cock anything up that way.