Human Remains, HR, Human Resources, personnel or whatever they are called in your company are the biggest waste of space around. Mostly they are laughed off with their review processes and touchy feel crap but actually they are worse than a joke its actually making software development harder.
Why? Well its pretty simple: All of the rules that they (and some governments) put in place make everything harder for anyone who actually knows what they are doing.
Back when men were men, women were women and your place in the organisation had nothing to do with your sex and everything to do with your ability. Actually there seemed to be more women developing back then, or was that just my projects? Since then the numbers of people in IT has risen, but the number of smart people in IT has remained constant at best.
Back when IT was about C, assembler and knowing how the computer worked you knew your stuff or just got put in the development creche (testing , documentation or just colouring in designs). If someone checked in code that broke the build (something that could take a while) you ritually humiliated them you made sure that everyone knew that it was a bad thing. Write stupid code that core dumps? Get ritually humiliated, be told that you are a crap idiotic prat who has just wasted everyone's time with your pea brained coding. Produce a design that is just rubbish, get told that its rubbish to your face. Change the config on the dev or test servers without telling anyone, be prepared for physical intimidation by the people who you've just wasted hours of their time. And lets be clear here this wasn't a macho thing, I've seen top female coders threatening to turn someone into a eunuch using only a mouse cable. If someone was truly awful then you bulleted them, no poncing around and worrying about their motivation, if you were crap, judged crap by a jury of your peers then you had no right to be on the project. Sure sometimes these people survived by being dumped into testing or admin, but they weren't allowed out into the wild again. The point was simple, don't fuck it up for other people and if you can't cope fuck off.
Now however we've got to worry about how people are
feeling about development, we've got to worry about their
training needs. If someone breaks a build we're allowed to discuss it with them one on one with them (hell I've even been told off for setting up an email system that broadcast who broke the build). And if they repeat this over and over again then its obviously an issue with the training and frigging
communication that this bloody muppet has received. If the prat in question can't even
follow a bloody stack trace to find the line that caused the exception then clearly they need more mentoring...
DOES THIS PERSON GET PAID TO DO THIS OR NOT? They can't produce a decent OO model (despite having been in IT for several years) then again they need training, their code breaks every decent coding rule and
DESPITE SEEING THE WARNINGS IN ECLIPSE THEY STILL CHECK IT IN. And when you ball the prat out for wasting everyone's time with their complete and utter turd of a development you get dragged in front of some HR pillock who talks about "brokering" a discussion between you to resolve the issues, and saying "X is crap at his job and I want him off my project" is apparently "not constructive", fuck me sideways with a steam train this pillock has wasted
DAYS even
WEEKS of time, costing tens of
THOUSANDS of dollars or pounds and calling him out on it isn't frigging
constructive?For fucks sake IT projects are hard enough places without putting cotton wool around the shit developers and trying to put forward some laughable notion that everyone's opinion is equal. Well that might be true in the content free arena of HR but its certainly not fucking true in IT. My opinion on threading models is worth jack in comparison with Doug Lea, my opinion on processor design is worth spit next to Bill Joy and I'm not going to take on Stephen Hawking around physics either. So why the hell do I have to listen to fuckwits with shit ideas and have to convince them of the right way? When I'm dealing with people as equals and we disagree we have an argument, try and kick down each others approaches, work out the best approach and go for that, or most often we break it down to the principles and realise we're talking the same stuff. When I'm talking to the frigging stuffed toy brigade its like discussing with cheese, how do you talk to people who don't even know what encapsulation is? Why is it that HR and their brain dead allocation policy assigns developers to projects like pieces of meat treating everyone as equal, so one project its brilliant, the next your working with pond life and every single time you are cleaning up the shit that the muppet brigade left behind.
HR and its policies screw IT up more effectively than anything else out there. IT needs to get back some honesty and stop claiming that anyone can code or that everyone is just as good as each other, and HR needs to fuck off and get back to their coloured charts and policy documents.
Oh and hint of the day: If PMD and Checkstyle both say your code is a pile of shit and you've been coding with PMD and Checkstyle Plugins in your frigging
IDE highlighting your inadequacies at every fucking step then you should do us all a favour and apply for a job in HR.