The Bosses Do Everything Better (or So They Think)
theodp writes "Some people, writes Dave Winer, make the mistake of thinking that if the result of someone's work is easy to use, the work itself must be easy. Like the boss — or boss's boss's boss — who asks for your code so he can show you how to implement the features he wants instead of having to bother to explain things. Give the code to him, advises Winer. If he pulls it off, even poorly, at least you'll know what he was asking for. And if he fails, well, he might be more patient about explaining what exactly he wants, and perhaps even appreciate how hard your work is. Or — more likely — you may simply never hear from him again. Win-win-win. So, how do you handle an anything-you-can-do-I-can-do-better boss?"
Programmers themselves really often make the mistake of thinking that everyone else's job is simple and easy and doesn't require much knowledge, or that companies should be spending more resources on programmers and IT than other departments. Best example is sales and marketing people. Programmers think it is completely unnecessary, but quite frankly, they would perform really poorly trying to do that kind of work. And I say this is a programmer-since-I-was-a-kid, but only picked up some sales and marketing skills after becoming an adult (I run my own business).
I think I also know why programmers suck at sales and marketing people. Programmers, and geeks, quite often lack the social skills and knowledge of human psychology to succeed in it. I know I used to, and many slashdotters say they'd rather be left alone to work on code. Frankly, these are important skills. Programmers have the ability to read code, error messages and everything else that is presented to them as facts and clearly. They have the mindset of a computer, "do x, get y". What they lack is reading people and other things when it isn't presented to them in a straight, clear form. Programmers fail to see subtle hints and expressions. They need it in clear. Maybe it's a difference in brain or something. It's also why so many people with Asperger syndrome are overly fascinated by computers. They also cannot read subtly things, they need it in clear. Code, compiler messages and computers provide that.
Which is also why I don't understand why programmers and IT usually put down other departments like sales and marketing. Maybe because they don't understand that it is actually hard work, and requires learning just like you do with programming books. Yes, some people will be good at it naturally, but majority aren't. It's the same with programmers and pretty much anything. The fact is, sales and marketing is hard work. It's especially hard to do it correctly, as it's usually the sales and marketing people that are responsible for the product gaining any users.
You can have everything right in your product but if no one knows about it and if there's no one telling you what would your product improve on the persons work or life, then your product is almost useless. This same trend can be seen with Linux and to an extend with some Google (and other geeky companies) products. Just throwing something at wall to see if it sticks doesn't work. You need to do your research, you need to interact with your customers and most importantly, you need to provide them with something that actually fixes a need they have. "But GPL is free, and leads to code liberation" frankly doesn't cut it. Most people care about their own needs, and that does nothing about them. Sales and marketing people are good at researching, reading and telling people, from the customer point of view, that what would it fix in their lives, and it is an essential skill.
As a Human Resource Manager I will tell you that this whole article merely displays the anti-authority attitude that many people in the IT field have. The author self-validates his own beliefs and cognitive biases by not only ignoring and fighting against his superiors, but by setting them up to fail. If the code (referred to in the article) were well written and commented, then the executive who took a programming course should have had no problem completing the task. Well written and structured code should be easy to modify and improve.
I personally always find resistance from IT people when trying to get them to do something. Usually they are just too lazy and stubborn to complete tasks in a time efficient manner. When I remotely monitor their computer screens, for example, I often see 1 or 2 minutes at a time when code is not being typed into the terminal. There is no excuse for such laziness. And many of them want to be paid for "over-time" when they don't complete their tasks in a time-efficient manner. But I tell you, if they don't bother to finish their tasks in the scheduled time then they shouldn't expect to get free money by working over time.
Many programmers in fact are socialists. I've noticed that many of them are against businesses and capitalism, as can be seen by their anti-SOPA, and pro-copyright-theft ideologies. If programmers would be smart enough then they wouldn't be programmers, they would be a boss like me telling them what to do. It's obvious that the people complaining about their superiors are just jealous.
I guess since this is Slashdot I can expect to be moderated down because people just can't handle the truth.
You can have everything right in your product but if no one knows about it and if there's no one telling you what would your product improve on the persons work or life, then your product is almost useless. This same trend can be seen with Linux and to an extend with some Google (and other geeky companies) products
Chrome has issue 44106, which despite countless requests for an implementation, was labeled "Won't Fix".
One developer says:
"Commenting on this bug has absolutely no effect at all on the likelihood that we are going to reconsider."
Then goes further to say:
"We made the decision not to make this configurable long, long ago, even before we WontFixed this bug in comment 59 (over a year ago itself). Accordingly the bug is closed because that reflects not only our current stance but the position we've had for a very long time."
So thus "bug" sounds like a feature! Now, talk of listening to customers.
Chrome was designed a certain way, if you don't like the design, then don't use it. What next, you are going to file bug reports with Ford because you want only 2 wheels on your car and four is a bug?
Why can't I file a bug with MS for making windows have the close button on the top right where I don't want it and no way to change it?
A bug is something where something does not work as intended.
When something is working as intended but you want it to work a different way, that is called a feature request. And yours was turned down. Google, MS and nobody else owes it to you to implement YOUR feature requests in THEIR product. If you want to dictate how a program should be designed, pay its development.
But of course that won't wash with your sort, everyone should do everything exactly as you want it for no pay.
Easy bet that you yourself have never done anything for anyone else ever in your entire life.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
They assume anything they don't know how to do must be easy. Programmers are just as vulnerable to it, perhaps even more so. Many programmers suffer what what I call Smartest Motherfucker in the Universe Syndrome. They seem to feel that they are way smarter then everyone else, way better at what they do, and as such could do anything better.
You can see it all the time on Slashdot when you see people whine about why a company won't just magically make everything secure or bug free. These people falsely assume it is easy to do and that if they were the ones in charge they could do it easily. They either falsely believe their own code to be completely bug free or more often believe that what they do is really hard, but what the other guy does is easy.
It just seems to be a human condition for many people. When someone else is responsible, they figure it is easy to do and cannot understand why that person won't just do it.
So that bosses have it too is unsurprising, but let's not pretend like it is just a management problem. Heck, you can see the problem manifested in the attitudes many people have towards management. They think it is easy and/or useless and they could do it better. Actually being a good manager is quite difficult and hence there are plenty of bad ones, particularly since it is a different skill from being a good worker. You can promote a good worker in to management and find them a bad manager because it is a different skill, one they aren't good at.
Your boss gets to define what 'better' is, so it's a battle you can never win.
Last project I had, I wrote 80% of my teams code, was involved in all aspects of the design and the end product was a big success as a result. What do you imagine would happen for the next version?
a) I am empowered.
b) I am dis-empowered.
Yep, b), excluded from design meetings, told my input isn't wanted, and that I was exaggerating my contribution. I decided the best thing to do at that point was to leave. I could see some of the choices they'd made were train wrecks. Although I offered them alternatives that would deliver the same feature in a way that wouldn't break the product, they weren't even discussed. The meeting had already taken place, the people 'in-the-know' had made their choices and entrenched their positions.
What did I know, only all the algorithms they would break by their bad choices. If only the people making the decisions had been the type than can understand algos, I, or one of the other programmers could explain it to them, but they weren't and we couldn't.
I hear I am to blame for the current mess in the project. Bosses are always right, and just re-write history if needed.
'better' is defined by you boss right up until his project is cancelled.
Not really.
Sales/marketing is about finding out what a customer WANTS ... and then convincing the customer that he (she) NEEDS your product to be able to get whatever they want.
http://www.theaxeeffect.com/
You've probably seen the ads if you're in the USofA.
More likely they are trying to sell the product based upon the product's capabilities.
Not by claiming that it will provide (for example) the ability to "radiate rockstar vibes all day long".
Not really. But it gets back to the "rockstar vibes" and the radiating of such for the duration of a day. The programmer is selling a product that he (she) has a concrete understanding of. Does the customer NEED the features in the program?
Meanwhile, the salesguy is selling the image of being a rockstar in industry X and how such a rockstar would need this program to achieve that. Whether it will actually accomplish anything like that or not.
Again, that is easy to do for the programmer.
But that is not how marketing/sales works. See the above Axe example.
Which is why the golf course is so often featured in the sales/marketing plan.
I think Winer's story extends out to a myriad of professions (mainly technical ones, but plenty of others). If an observer doesn't understand the work you do, they think it can't be too hard. Most folks overestimate their own abilities. I run a small IT company - we've got a few employees of varying skill sets but all pretty good at solving network issues. But I still regularly see clients complain about how long a task takes, or how a five-minute fix couldn't have been that hard. Car repairmen still get bitched at by people about a $200 bill to replace a tiny part.
There are good programmers, there are great programmers, and there are assuredly mediocre programmers. But that's what they do - and they are guaranteed to know more about it than virtually any layperson. Just because your car runs does not mean you know how to build a car. If your lawyer gets you off the hook for a crime you didn't commit, does that mean you could be a lawyer?
It takes very little skill to stock shelves in a grocery store. But a person who is doing that for a living definitely is better at that task than we are. More people need to understand this basic fact.
Of course, then people would be convinced that they were better at understanding facts.
-- Josh Turiel
"2. Do not eat iPod Shuffle."
Well, so for me - and this is an SME - I employed people when I found myself stretched. "I can delegate", I said. I delegated. Now there are ten people doing what I used to do on my own. The company has grown, as it was the skills supply that was at shortage, not the demand.
Most of those who have been employed were graduates trained by me, or by others in the team. Not all - certain aspects of the job grew beyond my expertise. Those aspects, I would never consider myself to be better than the experts that are hired. I know my limits.
But maybe 80% of the workflow I can do better, faster, if I had the time. The point is that I value my team completely - they do their best, and they know that I know that. When one of them gets out of their depth in an area of my expertise (software development), I show them a few solutions. They go away - hopefully more skilled. Doing the work for them completely misses the point. They are hired in order to take the work from me. Sometimes they think that I am way too conservative. I am, sometimes, conservative.
It's not because I am the boss, or get more money. I hired people to take on the skills that I am good in, or who can extend those skills.
This comment was written with the intention to opt out of advertising.