5 ms·
> Programmers as a blue colar job ?
by etherael 12y ago
> Programmers as a blue colar job
?
- marcus_holmes 12y agoNot blue-collar because we wear blue collars or perform physical labour, but because programmers are not professionals - we're not architects, we're bricklayers. In the conventional business mindset programmers just implement a plan devised by someone else. Consequently we are fungible (easily replaced by cheaper alternatives), and a cost rather than an asset.
- cheese1756 12y agoThat's like arguing that surgeons are performing a blue collar job when they're given a diagnosis and test results from another physician. In theory they're performing the same repetitive motion, just like programmers are in theory creating an implementation to solve a given problem. However, there are provably good and bad surgeons and provably good and bad programmers. The reality is that you're making a lot of decisions when you cut out a tumor or implement a spec, decisions which take skill and practice to get right. I certainly wouldn't want my surgeon to be a cheaper alternative, nor would I want a programmer working for me to be the same. Not all programmers or surgeons are equivalent, since there is a large element of skill and practice.
- marcus_holmes 12y agoI agree with you, except for one thing: Surgeons are briefed on the problem, the diagnosis, the patient's medical history, given all the information they need to know about the project. They are then locked in a small room with all the tools and assistants they need, and given complete and total authority and autonomy over the process and results. Because of that, surgeons are some of the most respected people in their environments. Programmers are dripfed information on a "need-to-know" basis by managers who have no clue about the process involved (and therefore with no clue about what information is needed). They are then placed in an open area, interrupted regularly, have to justify the cost of any tools, are never given assistants, and have exactly zero authority or autonomy over the process or results. Because of that, programmers are some of the least respected people in their environment. But we do have a few things in common: if the patient dies it's the surgeon's fault, and if the project fails then it's the programmer's fault. This stark comparison is exactly why we're blue-collar workers not professionals.
- cheese1756 12y agoI see your point. I'd argue that programmers who are treated that way have bad managers, though, rather than it being a function of programming as a profession. I've never dealt with a company that hasn't given me some autonomy, though, so I can't really comment on that perspective. A company can give programmers autonomy, or it can give them bits of information and treat them poorly. It could also do this for its sales team, its lawyers, or its marketing department. This strikes me more as a problem with the company rather than a problem with the nature of programming.
- marcus_holmes 12y agoYeah, there are business out there who treat programmers "properly", but they're unfortunately the exception rather than the rule, and that's not going to change any time soon.
- inanutshellus 12y agoI push back when the business hands me implementation in requirements (e.g. "Make me a button that rings a bell 10 seconds after I click it" versus "I need to know when a query finishes; it usually takes 10 seconds." which leads to "holy CRAP, that query takes 10 seconds?! Lets solve that!"). The first few times I did it, it caused a bit of an uproar, but very quickly they came to realize that they got better quality software when the person making it understood why he was making it. Likewise, if you're in an environment where you're an eyes-down bricklayer (and unhappy about it)... Maybe it's time to put your big-boy pants on.
- marcus_holmes 12y agoI agree, and I've done the same, but I do find it ridiculous that we have to be the ones to fight the battle. This is all known stuff, there's endless research and case studies showing that providing creative programmers with autonomy and authority over their environment creates massively better software results. But the illusion of control is hard for some people to let go, I guess.
- etherael 12y agoI'm much more familiar with "Here is this problem space that there's great rewards in addressing successfully, we don't actually know how to address that problem space, we can just see that it needs to be addressed because of (business indicators a-z). Can you help us address this problem space?" And then figuring out how to do that + implementing it (if it's actually possible at all). Is this not programming? Programmers are dripfed information on a "need-to-know" basis by managers who have no clue about the process involved (and therefore with no clue about what information is needed). They are then placed in an open area, interrupted regularly, have to justify the cost of any tools, are never given assistants, and have exactly zero authority or autonomy over the process or results. Because of that, programmers are some of the least respected people in their environment. That sounds horrifying, how on earth are you ever expected to accomplish anything worthwhile in such an environment, and in the present ultra-competitive market, why would anyone tolerate being treated that way?
- nathan_long 12y ago> we're not architects, we're bricklayers. In the conventional business mindset programmers just implement a plan devised by someone else. I think this analogy is wrong. Like architects, we can and must help requesters understand what's possible. "Architect, please design me a house supported by tiny pillars." "Programmer, please solve the traveling salesman problem for me." > Consequently we are fungible (easily replaced by cheaper alternatives), and a cost rather than an asset. The more central to a business their code is, the more this mindset will hurt them.
- Lawtonfogle 12y agoThat is how we are often treated. That is also (one of many reasons) why large projects constantly fail (or else go so massively over budget that you should still call it a failure).