Slashdot Mirror


How Developers Can Fight Creeping Mediocrity

Nerval's Lobster writes: As the Slashdot community well knows, chasing features has never worked out for any software company. "Once management decides that's where the company is going to live, it's pretty simple to start counting down to the moment that company will eventually die," software engineer Zachary Forrest y Salazar writes in a new posting. But how does any developer overcome the management and deadlines that drive a lot of development straight into mediocrity, if not outright ruination? He suggests a damn-the-torpedoes approach: "It's taking the code into your own hands, building or applying tools to help you ship faster, and prototyping ideas," whether or not you really have the internal support. But given the management issues and bureaucracy confronting many companies, is this approach feasible?

133 comments

  1. QMS by Anonymous Coward · · Score: 5, Funny

    Find a way to have your customers demand that you develop your software under a QMS. One that is aligned with ISO 9001, 21 CFR part 820 and eudralex part 4 and GAMP 5 and you can have good process all day. In fact you will have 8x process per line of code, but you can't write shitty code or have shitty retirements

    1. Re:QMS by Opportunist · · Score: 4, Insightful

      That's only true because you can't get ANYTHING done anymore. Of course that also excludes the creation of any shitty code. If you can't get ANY coding done, it can't be bad...

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    2. Re:QMS by serviscope_minor · · Score: 1

      In fact you will have 8x process per line of code, but you can't write shitty code or have shitty retirements

      Sure you can, as long as your process specifies such things.

      --
      SJW n. One who posts facts.
    3. Re:QMS by Anonymous Coward · · Score: 0

      Hilarious! Let me guess, you work for a government contractor sucking off the teat of the American taxpayer? Just write the damn software. It isn't very complex. One guy initially wrote Linux in his spare time.

    4. Re: QMS by Ukab+the+Great · · Score: 1

      You've just invented a language with built in support for multi-processing.

    5. Re:QMS by Anonymous Coward · · Score: 2, Insightful

      Please mod up. Any shithead that throws up one of these frameworks as a solution shouldn't just be fired, they should be taken out and shot. These frameworks always get corrupted to sell more management process and wind up being worse than useless - they become destructive because you keep repeating the same shitty ineffective safeguard procedures and filling out more and more paperwork for more and more teams only to waste time and find you have none to actually build anything. FUCK!

    6. Re:QMS by Anonymous Coward · · Score: 0

      BS. In particular ISO 9001 is about consistency, not quality. You can have process out the wazoo, but all that does is to make your failures consistent.

      It is generally not possible for a developer to take the code into his own hands these days. Not when every feature is tracked for time, and every commit looked over. And that's too bad.

      There have been countless times over my career when I took serious heat for doing what was needed, rather than what was requested. And even when it was finally acknowledged that the result was better, I was still in trouble.

    7. Re:QMS by Penguinisto · · Score: 2

      Good call - you cant' write shitty code if you're stuck in meetings all day. ;)

      In all seriousness though, there is a solution against featurization:

      1) maintain main product as usual w/ a team dedicated to it.
      2) build plugins and/or add-on packages for it that incorporate the new features that management craves. Charge some small nominal price to cover dev costs and maybe a few pennies above that.
      3) if the add-ons or plugins really sell (or at least have a ton of demonstrable interest), you incorporate them into the next version of your main product and charge accordingly.
      4) features that do not get used as often anymore, or become obsolete, can be refactored or removed.

      This way you have a nice darwinian approach... and features that fail to get public attention (and more importantly, their commitment in money and/or time) are the perfect platform from which to point back at management and laugh derisively... but more importantly, they just go away. The ones that succeed improves the product.

      It's a method that gets used successfully in a lot of products (usually CG/graphics related ones, though vSphere w/ sVMotion also stands out here), so why is this approach so frickin' hard to grasp for most dev teams?

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
    8. Re:QMS by Penguinisto · · Score: 1

      Please mod up. Any shithead that throws up one of these frameworks as a solution shouldn't just be fired, they should be taken out and shot.

      Sadly, they usually get promoted to project management... :(

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
    9. Re:QMS by Anonymous Coward · · Score: 0

      How do we get congress and the white house to adopt this?

    10. Re:QMS by Opportunist · · Score: 1

      Ain't they on vacation now? Weld the doors shut and hope for the best.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  2. Enjoy your... by Anonymous Coward · · Score: 1

    ...pink slip

  3. Why Fight It? by Greyfox · · Score: 4, Insightful

    Just go somewhere that sucks less. The company you're working for (Doesn't matter which one, they're all the same) would butcher you for organs if they thought it would be profitable enough. I guarantee you their marketing guys are still trying to figure out how to put a positive spin on it. You don't owe them anything, and they don't owe you anything. They understand this quite well, and you need to do the same. If you don't enjoy the part of your relationship where you get to solve neat problems and write cool code, find a job where you do enjoy those things. Or at least one that gives you enough bread that you can swallow their shit sandwich.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    1. Re:Why Fight It? by AHuxley · · Score: 1

      Yes, found your own brand or ensure you are indispensable within a huge brand. Long shifts, constant reports, just in time repairs, solutions, over time.
      If the company is getting a lot of no bid government work why change the system? Thats years of quality pay for running around trying to keep the contracts, working with consultants, networking, making friends..

      --
      Domestic spying is now "Benign Information Gathering"
    2. Re:Why Fight It? by quintessencesluglord · · Score: 0

      Related- why the hell would you want to innovate at a place that looks unfavorably upon independent thinking? The absolute best thing that could happen is for that business to die a flaming death, consumed by their own ineptitude and bureaucracy. Taking matters into your own hands only extends their reach, propping up their inefficiencies to suck the life out of even more people.

      Mooch a paycheck if it is the only thing available, but definitely keep your best work under wraps. They've made it abundantly clear that's not what they are paying you for, so oblige them, even going so far as to gleefully compound their organizational problems. You'll probably get a promotion out of it, which will set yourself up better for finding another job.

    3. Re:Why Fight It? by Anonymous Coward · · Score: 0

      The company you're working for (Doesn't matter which one, they're all the same) would butcher you for organs if they thought it would be profitable enough

      This. Always remember this.

    4. Re:Why Fight It? by Anonymous Coward · · Score: 0

      Agreed.
      "Work harder to make the company succeed despite their indifference to your cause" seems to be what the author is implying. I feel the opposite. Develop good references, play along with their game, and then move on to greener pastures. The company will likely die eventually, because no company can produce good work with a really high attrition rate; the good developers will move to better companies and the best companies will flourish. Eventually the management may change to keep the good developers around and thus avoid the company's death, or it won't. Who cares though, if the company's success isn't going to result in a large pension or something for me, it's really self damaging to care about such things. I might clue them in to their terrible management after I have my next gig lined up, whether or not they listen is up to them.

    5. Re:Why Fight It? by AmiMoJo · · Score: 4, Interesting

      I get the impression that this is the prevailing attitude in the US. The company is just something that you use to get what you want, and the company treats you the same way.

      My experience in Japan and Europe is that the better companies look after their staff and you end up feeling invested in them. You want them to do well so you make an effort to fix and improve things. Not all companies are like that, but some are.

      My advice to the OP is to state their concerns clearly to management, along with solutions. Explain how things can be done differently and how it will benefit the company.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    6. Re:Why Fight It? by Anonymous Coward · · Score: 1

      My experience in Japan and Europe is that the better companies look after their staff and you end up feeling invested in them. You want them to do well so you make an effort to fix and improve things. Not all companies are like that, but some are.

      It goes a bit further than that. In Japan and northern Europe some companies are more or less extended family, or at least there is a reasonably close friendship between workers and management. While you might be replaceable it isn't something that necessarily is expected.
      While the situation has slightly changed the last couple of years it's not surprising if someone starts at a company when they are very young and works their entire life to retirement there.

    7. Re:Why Fight It? by epyT-R · · Score: 0

      Kinda hard to do at this point since, as you say, they're all the same. Finding a job where you can 'do what you love' is also bullshit. Employers want to turn creative endeavors into life sucking factory work that can be done by migrants for pennies. I suspect we're already suffering from it considering all the stupidly designed software coming from the big players. I remember a time where software from the giants might have had bugs, and the occasional design blunder, but otherwise worked well enough for the most part. A lot of today's software is HARDER to use than it was in 1998. That's retarded.

    8. Re:Why Fight It? by monkeyxpress · · Score: 3, Insightful

      This is true, but the problem is that our economy is not setup to care about compassion. Just look at the continuing problems in the Bangladeshi clothing industry. People are generally aware of what is going on, but in the end they still buy the clothes from Primark (that they don't even need). People just don't really care and so the company that skimps on worker compassion wins out in the end.

      The only reason industries like technology are insulated from this sort of harsh reality is that there are still lots of tech companies that make obscene profits, so they can afford to pay workers good wages and absorb some inefficiency while keeping shareholders happy. However this does not characterise the whole tech market, and there are certainly areas now that are coming under ruthless competition.

      Capitalism has always been a race to the bottom limited only by the extent to which society accounts for externalities, like paid vacation time or limited work hours. Otherwise you eventually just get the crazies on the margin dictating how the majority must work. It is really madness, especially now that the economy is largely generating pointless jobs through the whole legal/advertising/corporate industries.

    9. Re:Why Fight It? by AmiMoJo · · Score: 3, Informative

      Japan has the most long-running companies in the world. Treating your workers well is essential for keeping the company going for decades, although tends to result in lower profits in the short term.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    10. Re:Why Fight It? by Anonymous Coward · · Score: 0

      I imagine large parts of Europe are still unionized, which is still a dirty word in the US. The relationship is different. Labor isn't something that you have to find consensus with in order to function, but something that must be actively debased (as confirmed by friends of mine that have gone through management training) in order to promote company goals. And the brainwashing in the US is near complete: there are some who will still criticize unions for having someone paid $40 an hour to turn a screw without an equivalent amount of scorn leveled at management that agreed to the terms of the contract in the first place.

      It was revealed recent that the place I work has gone 50% over budget for this fiscal year, with nothing more to show for it than some new paperwork. Oh where, oh where did the money go?

      Turns out management was also successfully sued for violating terms of their labor agreement. Management's response to all this? Double down with even further violations of the labor agreement, create a hostile work environment so people quit and labor costs can be brought more in line, and blame all of it on labor.

      And as they are under government contract, all the additional expenses will just be passed down to the taxpayer.

    11. Re:Why Fight It? by Anonymous Coward · · Score: 1

      And that's why it's so different in the US. The short term is all that matters to management, because once they've gotten their bonus for firing a few thousand people or shit-canning R&D, they're off to another company, so the backlash of poor long-term planning never catches up with them. You can't really expect much better when there's a much higher proportion of sociopaths in management relative to everyone else.

    12. Re:Why Fight It? by Bengie · · Score: 2, Insightful

      "Union" is a dirty word because of cases like this. Someone at a local union shop was coming into work 2 hours late, strait from the bar and pissed up, then would leave 2 hours early, handled heavy equipment which resulted in some near accidents. No one told on him because he was high in the Union, but the company looked into the near accidents that got reported. Once finding out this guy was coming in late and drunk and leaving early, they fired him. A month later, the Union successfully sued the employer for firing the employee without first consulting the Union for permission. The person was rehired at his original wage and pretty much given a job to do nothing because he was always drunk. The employer finally got him to leave by offering him money to leave.

      Crap like this is why people around here hate Unions.

    13. Re:Why Fight It? by david_thornley · · Score: 1

      Okay, so whyTF did the company decide to fire the guy without going through the agreed-on procedure? The union may have had good reason to fear arbitrary firings (people are fired for illegal reasons all the time), and written consultation on firing into the contract. Instead, the company decided that it was more convenient to break the contract they signed rather than comply and take further steps if the union didn't do the intelligent thing, and that's the union's fault?

      Unions have caused abuses, although I suspect in much lower numbers than management has, but this is not one of them.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    14. Re:Why Fight It? by Anonymous Coward · · Score: 1

      Perhaps I'm ignorant but what European companies have innovated like facebook, twitter, square, nest, etc. I'll take the trade-off of easily leaving your job to take your ideas into a new environment over investing one's life with a current employer. Simply put, loyalty can stifle innovation because successful firms have a vested interest in not rocking the boat.

    15. Re:Why Fight It? by Anonymous Coward · · Score: 0

      Just go somewhere that sucks less

      In my experience, pretty much most companies eventually reach the same level of suck ... and the grass isn't always greener elsewhere.

      Corporations are all (mis) managed by the same kinds of idiots with the same kinds of thinking.

      This is true of all types of jobs.

      But you are absolutely right, you don't owe corporations a damned thing, and they're sure as hell not going to act like they owe you anything. Even though they're going to act like you should be grateful to be told that you owe them something.

      Keep your options open, do what works best for you, but always remember your employer doesn't give a crap about you. You're just raw materials, intended to be kept in fear so you won't go elsewhere.

      But, when you go elsewhere, remember, the new people don't give a fuck either.

    16. Re:Why Fight It? by ultranova · · Score: 1

      They've made it abundantly clear that's not what they are paying you for, so oblige them, even going so far as to gleefully compound their organizational problems.

      Don't go that far. Intentional sabotage due to dislike might be emotionally satisfying but also both illegal and morally wrong.

      Also, bad organizational cultures are so destructive because they slowly become the invisible default against which everything is judged. And they become invisible by encountering no resistance from those who can see them until they become so accustomed to them that they don't notice them anymore. Perhaps you don't have a duty to try to save the company from itself, but if you won't, you also won't get to complain about the resulting suck, since it's the result of your (in)action - in other words, your fault.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    17. Re:Why Fight It? by ultranova · · Score: 1

      Okay, so whyTF did the company decide to fire the guy without going through the agreed-on procedure?

      Because Mr. Someone living Somewhere never lived anywhere, or existed for that matter. It's just an urban legend someone decided to believe because it confirms their political beliefs.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    18. Re:Why Fight It? by Anonymous Coward · · Score: 0

      So because of 1 person and mismanagement, Unions are "bad"? Oookay..

      We've never had problems firing people at my workplace, even though it's heavily unionized. Of course, management absolutely follows the book. It has to, being a high-profile state-owned company. If trust is breached, and you can prove it, go ahead. But don't just fire people because "you felt like enough is enough". That's highly unprofessional and that kind of power inevitably leads to abuse further along the road.

    19. Re:Why Fight It? by Anonymous Coward · · Score: 0

      Don't blame cynicism though, blame ignorance and incompetence instead!

      Clippy? Retard decision-makers.
      Metro? Greedy incompetents.
      Menus defaulting on hiding "least used items"? Ignorant fuckers.
      Forced OS updates? Incompetent decision-makers.
      And so on and so on..

      It's like they can't help themselves having the wrong priorities and wrong competence backgrounds for their sink-hole of a paycheck.

      Of course, sometimes something shines through, like a lot of the new stuff coming from Apple (NOT iWatch!).
      Only to be heaped upon heaps of shit and limitations again the next round...

    20. Re:Why Fight It? by MagickalMyst · · Score: 1

      Why do humans feel it is necessary to "fight" our problems?

      We fight mediocrity, fight poverty, fight cancer, etc.

      Shouldn't we be looking for solutions to our problems, instead of fighting them?

      --
      Political correctness is really just herd psychology pushed by insecure people who desperately seek social conformity.
    21. Re:Why Fight It? by Anonymous Coward · · Score: 0

      They've made it abundantly clear that's not what they are paying you for, so oblige them, even going so far as to gleefully compound their organizational problems.

      Don't go that far. Intentional sabotage due to dislike might be emotionally satisfying but also both illegal and morally wrong.

      Also, bad organizational cultures are so destructive because they slowly become the invisible default against which everything is judged. And they become invisible by encountering no resistance from those who can see them until they become so accustomed to them that they don't notice them anymore. Perhaps you don't have a duty to try to save the company from itself, but if you won't, you also won't get to complain about the resulting suck, since it's the result of your (in)action - in other words, your fault.

      I hate this argument, you're blaming the disenfranchised for the problems, disenfranchised people, by definition, don't get any real say in the matter. It's the same as voting, when both candidates are plutocrats with their main difference being the color of their preferred tie, well then, you can't blame voters for the shit that happens, it's the empowered people giving the disempowered a non-choice that is the issue.

      Or, you know, keep telling people they can fix Rome while it's burning... that has such a great history of success.

    22. Re:Why Fight It? by monkeyxpress · · Score: 1

      Oh I agree. But very few companies have the luxury of being able to remain solvent in the face of an attack by short-term thinking competitors for long enough to get those long term benefits. Japan is also not a good comparison as it has a unique cultural makeup that supports semi-dynastic companies. Have a read about the Zaibatsu. The allies tried to dismantle these after the second world war, but they largely reformed anyway. Very different from western capitalism.

    23. Re:Why Fight It? by Anonymous Coward · · Score: 0

      There's also a cultural difference - Japanese companies hire you expecting you to stay for a good long time. North Americans consider their careers dead if they haven't moved to a new company in four years.

    24. Re:Why Fight It? by Anonymous Coward · · Score: 0

      >state their concerns clearly to management, along with solutions. Explain how things can be done differently and how it will benefit the company.

      And then update your resume.

      Do not assume that people running a dysfunctional organization a) will appreciate being told that or b) quietly put up with you telling them that they suck.

    25. Re:Why Fight It? by Anonymous Coward · · Score: 0

      "Don't fight the problem, solve it." - George Catlett Marshall

      Read up on HIM some day...

    26. Re:Why Fight It? by david_thornley · · Score: 1

      Yeah, but I found the urban legend offensive. The fact that GGP thought I might be influenced by a stupid made-up story that would be obviously irrelevant anyway is an insult to my intelligence. If you're going to lie to try to convince me of something, give me a little credit and make it a plausible lie.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    27. Re:Why Fight It? by ultranova · · Score: 1

      If you're going to lie to try to convince me of something, give me a little credit and make it a plausible lie.

      They aren't trying to convince you, they're trying to confirm their beliefs. They're making a big show about believing absurd propositions because they think - rightly, in all likelihood - that they'll be rejected by their peer group if they deviate from its dogma, and also because they get ecstasy - feelings of transcendence - when fighting their chosen enemies. That's the downside of secularization: people transferred their religious feelings into nations, ideologies and political parties, which thus gained the power religion once had, thus explaining 20th century.

      In other words, Religious Right is exactly what it says in the name. Bengie was just doing their religious "y'all sinners gonna burn in Hell" trolling duties, and simply being lazy about it.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

  4. Software engineer fails to understand business by Anonymous Coward · · Score: 5, Insightful

    No shit, the company's going to die because an insane brogrammer asshole decides the codebase needs to cater to the whims of the twentysomethings who read about something neat on the internet. Then he burns through the development budget rewriting the code to fit the new paradigm while simultaneously failing to provide the deliverables.

    1. Re:Software engineer fails to understand business by preaction · · Score: 4, Insightful

      And then this developer blows away existing code supporting existing users because they truly believe that the team is catering to the wrong users (despite those users being both more numerous and more lucrative), leaving them to find another solution, destroying the team from within. No, I've never seen that happen, why?

    2. Re: Software engineer fails to understand business by Anonymous Coward · · Score: 0

      That's why profit sharing works: the risky engineer thinks of his end-of-year bonus - which is not given by managers, but by actual results.

    3. Re: Software engineer fails to understand business by jellomizer · · Score: 1

      There is a risk to profit sharing as well. As your paycheck is linked to the quality of the others. Bad sales or marketing dept can fail to sell the best of ideas, and hard work.

      In the mean time you are working with below average salary.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    4. Re:Software engineer fails to understand business by Anonymous Coward · · Score: 1

      Yup, narcissism rules the day for this guy.

      When I found out I couldn’t commit CSS without headaches, I rewrote the entire front-end. There were dozens of ways I could have dealt with this problem, but I chose to rework the entire codebase because this particular solution solved future problems as well as current ones. If I didn’t care about Responsive Web Design or prepping the code to be more flexible and capable of handling the use-cases that future stakeholders might have, I could have just cleaned up a few things and called it a day. Don’t exacerbate the problem. Fix it.

      I, I, I, I, I. That's "user-driven development", is it? His amazing solution solves "future problems" without even knowing what they are or if they even exist! Yes! Do more work up-front because you *might* otherwise need to do the *same* work in the future, when it's actually required!

    5. Re:Software engineer fails to understand business by jellomizer · · Score: 5, Insightful

      If programmers are left to their own devices, no code will ever get released, because complex systems have too many variables to test, take a long time to code, by the time you get to the end you realized you could have done the beginning better.
      There are so many times I go back to my old code and say to myself what was I thinking? There is a much easier way to do this.

      Sometimes it is cheaper to leave the bloat and use more hardware to compensate.

      I have a lot of half done apps in production. There are thing I want to do to make them better, however I probably won't get to them by EOL because the customer is generally happy with it, and I have other higher priority projects in my queue.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    6. Re:Software engineer fails to understand business by epyT-R · · Score: 1

      That's true, especially in GUI land. Another example is an insane customer who read about some bullshit paradigm on the net and wants his project to use it, even though it makes no sense, will cost more, and kill performance.

    7. Re:Software engineer fails to understand business by Anonymous Coward · · Score: 0

      Your argument is fully based on age racism and prejudiced stereotypes. Way to go, straw man. Maybe one day you yourself will grow up and learn to base your arguments on facts instead.

    8. Re: Software engineer fails to understand business by cjjjer · · Score: 1

      ^^

      This so much I worked for a company (had 8 devs) that implemented profit sharing and in the beginning it felt like a good idea but after awhile I realized that half of the devs either were (or became) slackers and still got a big bonus at the end of the year.

    9. Re: Software engineer fails to understand business by Anonymous Coward · · Score: 0

      I'm going to sound like red foreman here but features pay the bills....dumbass. Users are great but focusing on them all the time keeps your client list low. Your marketing team actually is aware the flash-in-the-pan tactics are really cheesy but they get paid to cast a wider net using those tactics and keep a smile on their face. The more humiliating part is those tactics work and the developer gets 2x the work but you still can rely on a paycheck so quit personalizing it all and move on with your actual life.

    10. Re:Software engineer fails to understand business by Anonymous Coward · · Score: 0

      It's at -1. Mod it down more. What a shitty attitude.

    11. Re:Software engineer fails to understand business by Anonymous Coward · · Score: 0

      Sarcasm. You seem to have hard time understanding it. Unless you noticed, the OP was demonizing "twentysomethings" using stereotypes.

  5. No by Anonymous Coward · · Score: 2

    Is going rogue feasible? Generally no.

    It is one thing to help find better ways to meet your objectives, but if you don't have the support of your management, you better tune up your LinkedIn profile.

    Find a way to get aligned with management objectives and give options. Speaking as 'the man', fighting the man will not get you very far in your job.

    Learn to manage your boss. Google it.

  6. Move along by Anonymous Coward · · Score: 0

    Just move on to another company.

    Once management has set their failing course, there is little to stop the ruination.

  7. Solution: by Anonymous Coward · · Score: 1

    Do what Apple does. The end user doesn't know what they want, but you do. Make the decisions for them. Don't be held back by the people that are buying your product. Charge a higher price for what you are offering, even if it doesn't have what your competitors are offering (most people think that if something is expensive, it has more value). Also, make your programs compatible with mice that have only one button, and if you sell your products on DVD or BluRay, you can sell the regular versions cheaply, but if you make certain install discs out of gold or platinum, you can charge 10-50 times as much. Also, produce everything "in house", using your own technology, no matter how shitty or defective it is. Your loyal customers (hahaha) will pay for these things no matter how terrible they are. Don't forget to let your customers know that they are too stupid to know what they really want. Remember, Steve Jobs knew how to make money, and you should follow his example. Sure, he didn't create Microsoft, but what do you really expect from someone like Jobs?

    1. Re:Solution: by Actually,+I+do+RTFA · · Score: 2

      . The end user doesn't know what they want, but you do. Make the decisions for them.

      Unlike the rest of your snarky post, this part is most certainly true. An end user rarely knows what they want.

      Of course, if you ignore what they say they want, you have to actually be able to deliver something that scratches that itch. Basically "fulfilling the exact spec from the user" is just the least culpable way of failing.

      --
      Your ad here. Ask me how!
    2. Re: Solution: by Anonymous Coward · · Score: 0

      That is the job of the product manager, not of the developer

    3. Re:Solution: by Anonymous Coward · · Score: 0

      Actually the end user usually knows what they want, or at least what problem they want to solve.
      Unfortunately they are computer illiterate so they don't have the vocabulary to express what they want in a way that the programmer understands.

      I've found it extremely useless to discuss features with users. Unfortunately someone who isn't used to dealing with development will think that the programmer is a retard that doesn't understand what a normal user wants to do.

      I think it is best to try to avoid talking about features with users. Let the programmer decide what the features should be.
      What you should do with the user is to put together use cases. Write together scenarios that describes what the user does and how the program should respond. Don't detail the intermediate steps or talk about them as tools and functions that the user can apply.

    4. Re: Solution: by Anonymous Coward · · Score: 0

      What if I want to do both?

    5. Re:Solution: by Anonymous Coward · · Score: 0

      Sure, he didn't create Microsoft, but what do you really expect from someone like Jobs?

      Yeah, he didn't create Microsoft. You know that that is a compliment around here, don't you? And a damn fine one too. As in: Sure, Mr. Jobs has annoyed us in many small ways, but at least he did not create Microsoft.

    6. Re:Solution: by epyT-R · · Score: 2

      This is the mentality that's made modern software easier to use for very simple tasks at the expense of making it a lot harder to do complex tasks (or simple tasks with different options). Today's answer to 'the customer doesn't know what he wants' is to strip out all the advanced settings and flexibility and give the user a fisher price turd. Fuck that.

    7. Re:Solution: by SQLGuru · · Score: 1

      Talk to the users about the problems. Talk to a User Experience designer about the features to solve those problems. Talk to a developer to implement those designs. Programmers are too analytical to solve the problem in a way that makes sense to the average user (which is why so many of the older programs were deemed difficult for lay people to use). User Experience designers do a lot of A/B testing to figure out what visual metaphors make sense to the users with guidance about what A and B can be from the developers. [I say this speaking as a developer, knowing my own limitations.]

    8. Re:Solution: by Bengie · · Score: 1

      As a programmer, it is my job to get into the head of the end user and figure out what they're trying to do. Requires seeing what they do, unrderstanding why they do it, and the end result.

    9. Re:Solution: by david_thornley · · Score: 1

      If you're working on a solution for a user problem, then, yes, the user knows at least what the goal is. That's not how Apple became that rich.

      Suppose Jobs noticed people with MP3 players and asked them what they thought would be better. They wouldn't have described the iPod. If he'd asked people with smart phones, they wouldn't have described the iPhone. The iPad is somewhat different, as I've seen a lot of similar concepts floating around (Star Trek, for example), but a focus group concentrating on designing Star Trek PADDs would not have come up with the iPad.

      This approach has high risks and potential rewards. If you guess right, and Jobs usually did, you can just stand there and suffocate in the money people throw at you. If you guess wrong, you do something like write off nearly a billion dollars of Surfaces.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  8. playing with fire by Anonymous Coward · · Score: 0

    A mans comfortable self-loathing in well adorned mediocrity is not to be trifled with lightly.

  9. Cycle of life by warewolfsmith · · Score: 1

    All things are born, grow up, grow old and die, corporate citizens are not excluded from entropy. I guess you need to decide if you are a cell in the parent organism, destined to stay the course until the end. Or you're a bacteria destined to spread yourself and your progeny around to ensure your genome survives. Or your a virus destined to steal all the useful DNA and jump to a new host, whilst ensuring the ultimate demise of the old one. Or you could just go with the one that hires the youngest secretaries with the biggest tits.

    1. Re:Cycle of life by justaguy516 · · Score: 5, Interesting

      I was once working in a software company, doing maintenance on a product (an embedded telephony module) which was pretty much going to be end-of-lifed soon. It was one of the most enjoyable times of my career. There was me and two other guys, all of us junior engineers and no supervision whatsoever. We were able to make radical changes at our own discretion; I was a young man and didn't really mind spending nights and weekends working on that stuff. We got some things wrong, but we also fixed very very old bugs and re-wrote an entire module to test out some ideas we had about performance bottlenecks. The customer, who was basically running out the clock on warranty was somewhat surprised at all the releases he was getting, but didn't seem to mind. His test and field staff were actually quite happy.

      The whole thing didn't put off the inevitable, because nobody in the company paid any attention to the fact that the product had actually been re-engineered into somewhat workable. In any case, there was no follow-up planned, so eventually the entire product line was closed down and the customer was migrated to something else. But we had fun while we could and learnt a lot.

    2. Re:Cycle of life by rtb61 · · Score: 4, Insightful

      For companies is it not quite the same. Reliable older company treats it's staff and customers well. Along comes the psychopath vulture capitalist who works out they can buy the company for more than it is worth and the dress it up for sale by trading on trust while delivering cheap crap, getting rid of expensive stuff, wiping out after sales service and support and voila big profits for a few quarters until it all goes boom but then it has been sold by then.

      Reality is companies pretty much keep going until the slick psychopaths take over all full of charm and bullshit and try to fill their own pockets for as long as possible until the company goes belly up as a result of their total incompetence beyond their skill and getting employed. They of course focus all their efforts on blaming everyone else for the problems created by the psychopaths.

      Want to keep companies going longer, really easy answer, start testing for psychopathy before letting new executives in the door.

      --
      Chaos - everything, everywhere, everywhen
    3. Re:Cycle of life by Opportunist · · Score: 2

      That's not what the shareholders want. They are in on the pump and dump scheme, the last thing they'd want is to end it.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    4. Re:Cycle of life by Anonymous Coward · · Score: 0

      Along comes the psychopath vulture capitalist who works out they can buy the company for more than it is worth

      I thought the general strategy was to try to pay *less*?

    5. Re:Cycle of life by tlambert · · Score: 2

      All things are born, grow up, grow old and die, corporate citizens are not excluded from entropy.

      The oldest continuously running company is Kongo Gumi; it was founded in the year 578. Not dead yet.

      FWIW, there are 5,586 companies older than 200 years. Like the Stiftskeller St. Peter restaurant in Austria, which was founded in the year 803, or Sean's Bar, an Irish Pub, founded in the year 900. Even the U.S. has gotten into the act; Shirley Plantation is a farm founded in Virginia in 1613. A surprising percentage of them are alcohol related, although there are also a lot of hotels, confectioners, and other businesses.

    6. Re:Cycle of life by Anonymous Coward · · Score: 0

      Not long-term investors..

    7. Re:Cycle of life by Opportunist · · Score: 1

      There is still such a thing? I thought they have become a piece of our mythical history. Like work ethics, or customer service.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  10. Great - except for one thing by forgottenusername · · Score: 2

    The business side is why the company exists. When they add feature creep etc, it's generally because they don't really know what the customer wants and are trying to see what lands. They don't understand the cost of changing the design / refactoring. They tend to not even really understand how to tell if a time estimate is BS or not.

    It comes down to trust and working relationships. The business side almost never bridges the tech side - it's up to tech folks to bridge that gap and help them understand. Often times they simply won't care.

    Sucky but that's the way the industry generally works. There are a few bright spots but they're few and far between. However the attitude of "I'm going to be a lone hero and push this out!" is just setting yourself up for more frustration and failure. There's a quote - "in writing, you must kill your darlings". Same thing applies to softdev, be prepared to write elegant code you are proud of, only to have it rot away and disappear. Your options are basically;

    1) stay professional, do your job, collect your paycheck
    2) try to find some startup with ideals like fogcreek (when it comes to valuing individual developers)
    3) simplify your lifestyle and financial requirements and write code for your own projects, do a little contracting or take a job in a different field

    1. Re:Great - except for one thing by Anonymous Coward · · Score: 0

      They tend to not even really understand how to tell if a time estimate is BS or not.

      There's only two kinds of time estimates: BS and then the kind you make after you know how long it takes because you already did it.

    2. Re:Great - except for one thing by Bengie · · Score: 1

      If a project is to take less than a month of uninterrupted dedicated work, I can usually get the time within 80%, siding on caution, so typically early. The further a project is expected to take, the more buffer I need to add in case things take longer.

    3. Re:Great - except for one thing by tlambert · · Score: 1

      The business side is why the company exists. When they add feature creep etc, it's generally because they don't really know what the customer wants and are trying to see what lands.

      In my experience, this tends to happen when marketing gets involved in the design process, and starts asking for previous_product++. One of the reasons Steve Jobs was so effective is that he understood the technical side of things well enough to help make design decisions.

      They tend to not even really understand how to tell if a time estimate is BS or not.

      The best way to get good at estimating is doing a couple of fixed price contracts that end up working out to you making less than minimum wage. Then you either get good at estimating, or you go out of business.

      All managers who've worked with people who are bad at estimating automatically apply a scaling factor, which usually depends on the person making the estimate, and then you scale it for the real estimate, because people are frequently bad at estimating. In general, there are two types of people (substitute gender, if you wish to): Mr. Right, and Mr. Right Now. Both of these can be valuable to a company, but generally, if you want to scale to a large number of customers without huge built-in costs, your prototype is done by Mr. Right Now to get to funding, and then your released product is done by Mr. Right.

  11. Rogue != Cowboy by WinstonWolfIT · · Score: 1

    A rogue as described in TFA prototypes, demonstrates, estimates the effort remaining, and gets buy-in. Getting the time comes from the same place where tech debt reduction comes from. In contrast, the cowboy pushes to completion and commits it.

  12. The "damn the torpedoes" quote by myid · · Score: 4, Informative

    Regarding the "Damn the torpedoes" quote: According to this military.com article,

    The heavily guarded bay entrance was filled with mines, then known as torpedoes. Farragut's cry of "Damn the torpedoes! Full speed ahead!" is now the stuff of legend, but it was also good tactics. All but one of the fleet's 18 ships passed safely through the channel ...

    I heard a speech by a military historian, who said that "Damn the torpedoes!" did not mean "to heck with the mines, let's ignore them". The historian said that Farragut was cursing the mines, like he was saying, "Damn those torpedoes". Then he ordered his men to go full speed ahead, to get out of the dangerous minefield ASAP, before a mine blew up a ship.

    So Farragut was being prudent, not reckless.

    1. Re:The "damn the torpedoes" quote by Anonymous Coward · · Score: 0

      I heard a speech by a military historian, who said that "Damn the torpedoes!" did not mean "to heck with the mines, let's ignore them". The historian said that Farragut was cursing the mines, like he was saying, "Damn those torpedoes". Then he ordered his men to go full speed ahead, to get out of the dangerous minefield ASAP, before a mine blew up a ship.

      So Farragut was being prudent, not reckless.

      That is interesting. Not so much from a historic perspective but it is a great example of how flawed English is as a language.
      In speech it is easy to distinguish between the two meanings, but the difference is in intonation that doesn't translate directly to writing.
      This leads to a situation where purpose and intention is lost in historic texts. Usually one can rephrase to make things more clear but you can't really change citations.
      I wonder if it is feasible to intentionally steer a language away from situations where those dual meanings can exist. I guess it isn't as simple as just adjusting a few words, things like the serial comma shouldn't be needed for clarification.
      On a tangent that brings up another interesting thing about language design. It appears as if it isn't a good idea to make punctuation have meaning beyond providing readability. Sometimes I've seen bugs be introduced into C-code when it has been restructured because of the way semicolon is treated.
      When a do {} while(); is changed into a while {} it is unnecessarily easy to bring the semicolon for example. A similar situation exists for if clauses.

    2. Re:The "damn the torpedoes" quote by myid · · Score: 3, Interesting

      In speech it is easy to distinguish between the two meanings, but the difference is in intonation that doesn't translate directly to writing.

      Right. Suppose I ask you if x > y, and you reply, "I think so." That sounds straightforward. But consider the way you say it. If you're 90% sure that x > y, then you'll say "I think so" quickly, in a higher-pitched voice. But if you're only 60% sure, then you'll say "I think so" slower, in a lower-pitched voice.

    3. Re:The "damn the torpedoes" quote by Anonymous Coward · · Score: 0

      So, according to the unfalsifiable conjecture of one historian, Farragut was being prudent, not taking an action which might seem reckless to the naive but was actually sound military strategy.

      FTFY.

    4. Re:The "damn the torpedoes" quote by Anonymous Coward · · Score: 0

      I'm sure all the men on the bridge understood the order. If you want to cite an example of a flawed language you could compare it to French, where there are so many ways to say "I surrender" that battlefield chaos ensues. Even the Russians know enough to charge an incoming torpedo, as depicted in Red October. The fact that you had to have this explained to you is not the fault of language. I have to admit, the made up quote attributed to John Paul Jones, "I have not yet begun to fight" was at odds with the count of dead crewmen strewn about the ship and had he not been Commodore, would have left his superiors wondering what he was waiting for.
      Only an idiot would use a semicolon for readability in any code.

    5. Re:The "damn the torpedoes" quote by Anonymous Coward · · Score: 0

      Well, it turns out that the Time Flies also like a watermelon, but fruit flies like a hollow wooden rabbit catapulted over a castle wall.

    6. Re:The "damn the torpedoes" quote by Anonymous Coward · · Score: 0

      My own understanding of this, was that can be paraphrased to "ok, we're in a mine field, the most likely reason for the mine field is to slow vessels so that shore guns can pound them. the shore guns are the bigger threat, move."

  13. Bravo by lucm · · Score: 4, Insightful

    When I found out I couldn’t commit CSS without headaches, I rewrote the entire front-end.

    Says the guy who bitches about unrealistic deadlines.

    --
    lucm, indeed.
    1. Re:Bravo by OneSmartFellow · · Score: 1

      He re-wrote the entire front end ?

      Another ass-hat !

      Real developer fix existing code, and don't resort to a re-write except as a last resort.

    2. Re:Bravo by tomhath · · Score: 2

      Then, a week later he learned that someone else (who knew how to commit code) had rolled back his changes without telling him.

    3. Re:Bravo by Bengie · · Score: 1

      Sometimes the only way to fix cancer is to destroy it.

    4. Re:Bravo by Anonymous Coward · · Score: 0

      In this case, introducing 10-100 times as many bugs as before.

      Basically, you should never rewrite unless part of a new project / bigger change that can cope with the level of flaws in "shiny new code".

      Yes it sucks.

  14. If you can handle all outcomes... by Anonymous Coward · · Score: 0

    ...then GO FOR IT!!

    Short of burning yourself out, or closing off other opportunities, or wasting your energy on a project that won't help you increase your knowledge and skills, just take your implementation ideas and execute to the best of your ability! Almost any project can be transformed in to both a success and a great learning experience.

    Ignore any negativity. Work around other developers if you have to, but remember that they're on your team, aiming for the same ultimate goal; so, if you can, try to win their support for your vision. If some people just won't collaborate on your vision, then secretly fork the code base, and continue to work in parallel with the mediocre version until your fork is essentially complete and demonstrably better in all respects (like correctness, reliability in the face of adversarial input, code clarity, maintainability by average developers, and speed). I believe you really need to clearly show the superiority of a solution, leaving no questions, even as days go by and people can consider the less evident, but crucial, aspects of your work (particularly, reliability in the face of adversarial input, code clarity, and maintainability by average developers; qualities which oftentimes aren't given the attention they actually deserve). If you do this, though, make a renewed effort to win the support from any developers who doubted your vision, to see if they will join your virtual team within a team, a day or two before debuting your work to management. Make it clear that you just think this design would be beneficial to everyone, and you'd like to give anyone the opportunity to buy in to it before presenting it. Meanwhile, anticipate that there might be negativity from colleagues, or lack of recognition of the virtues of your work from management, and keep an open mind about moving on to a new company. But, I really think that if you see an opportunity to do great work, and you know you could actually do it with the resources you have without exhausting yourself, and you think there's some chance that it will help other people (like fellow developers, or, even better, all of the end users!), then go for it. Yes, go for it! Do something awesome.

    1. Re:If you can handle all outcomes... by Anonymous Coward · · Score: 0

      If some people just won't collaborate on your vision

      It isn't your vision if you don't own it. Save your vision for something you have a genuine stake in.

  15. Chasing features by phantomfive · · Score: 1, Redundant

    I wasn't exactly sure what he meant by "Chasing Features". Because building features into your product is often a good thing, it makes your product better. After reading the article, what he meant was, "We built features the users didn't want." Which of course is a problem.

    His point has nothing to do with that, really. His point was, "instead of being a mindless drone, try to figure out how to make the company better." Good advice, poorly written article.

    --
    "First they came for the slanderers and i said nothing."
    1. Re:Chasing features by Anonymous Coward · · Score: 0

      Even if you're building features that the users want, there are times when it's more important to improve what you have than to chase more tick marks on a feature list. There's a reason for the phrase "feature fallacy".

    2. Re:Chasing features by Anonymous Coward · · Score: 0

      "Try to figure out how to make the company better."

      I have never seen a good deed which is more poorly rewarded. Look out for yourself. Treat the symptoms/pain for your immediate supervisor, but don't ever cure it.

    3. Re:Chasing features by Anonymous Coward · · Score: 0

      It isn't a good deed. The main problem in an organization is always communication. Never implementing stuff.
      There is a very large possibility that the leader has failed to communicate his long-term vision of the product to the developer. Typically the leader doesn't know enough about programming to use the right words or expressions to communicate what he wants.
      Just because the leader starts to stutter or can't answer when asked what a feature should be used for or what he wants doesn't mean that he doesn't have a plan.
      By making assumptions and guiding the project in his own direction just because the communication wasn't complete he moves the project away from that long-term vision and substitutes it by his own.
      This leads to problems later on when new directions aren't coherent with the way things have been previously implemented and the developer will think that the PHB is even more of a retard since he is now trying to make the product into something it is not.
      Usually both sides thinks that a 10-minute meeting where no-one has been able to say something useful for 5 minutes is a waste of time when they could actually have done work at the time. A 5 minute break and a continuation of the meeting after that can solve communication issues, but then again both parts thinks it's a waste of time.
      It's better to just get started and waste a couple of weeks with implementing features that one doesn't want and the other thinks are retarded.

  16. You will never be supported by MrKaos · · Score: 1

    That's the difference between a developer and an innovator, you will only be supported when you succeed.

    --
    My ism, it's full of beliefs.
    1. Re: You will never be supported by Anonymous Coward · · Score: 2, Informative

      No, credit will be stolen from you if you succeed. That's the only thing modern idiot MBAs are any good at besides firing people to pump up stock prices.

  17. Quit by thehumbleburger · · Score: 2

    Quit

  18. Simple by Anonymous Coward · · Score: 0

    But how does any developer overcome the management

    You don't. The most important question you can ask yourself is: what's in it for me? The answer more often than not is that there's nothing in it for you. Why work at something just so that others who contribute less will benefit more? The best thing you can do is find better employment that delivers you more return for your investment.

  19. I work for a payroll company that uses JIRA... by Anonymous Coward · · Score: 0

    and most of our bugs are over seven years old! If getting paychecks wrong every month doesn't slow down new feature development, I don't know what will.

  20. This right here is the truth by melted · · Score: 5, Interesting

    As a developer, you're typically not in a position of power. In large companies as long as you're obviously not going to leave, you're pretty much universally perceived as a cog. Sometimes as an expensive cog, but a cog nevertheless. The most power you can have is when you vote with your feet and go work elsewhere.

    To a company this means they'll have to replace you with an unknown dude, who is difficult as heck to hire, and they'll likely have to pay quite a bit more money as well. So some tactical effort will likely be made to keep you (assuming you're valuable). This never leads to any kind of long term improvement though, so whatever irked you before this tactical last-ditch thing will continue to irk you in the future, and you should leave anyway.

  21. martyrdom. by Narcocide · · Score: 2

    That is what it takes. Be ready to be reprimanded. Be ready to be fired and blamed for the problems you were trying to fix. Be ready for your former boss to immediately turn around and accept the credit for the fixes you worked so hard on in your free time. If you love the company that much, be ready to sacrifice your job to save it.

    Just a word of personal advice though; don't do it. History is written by the winners.

  22. Remove features as well by johannesg · · Score: 1

    Pruning the tree, so to speak. I regularly identify features that are candidates for pruning:

    - Because they are disruptive in the code base (needing an inordinate amount of developer effort to keep them working in a changing environment, or because they make testing much more difficult, etc.)
    - Because they are disruptive in the user interface (needing a lot of screen space while barely being used)
    - Because they are disruptive in the user manual (if you cannot properly explain it, perhaps because it relies too deeply on internal knowledge, or because the set of conditions that cause the feature to work is just too large)

    Some of these I propose to the customers for removal (I work on a rather specialized industrial application, so the number of customers is not that large). Others I break in a subtle way and wait to see if anybody complains. If they don't, the feature is gone in the next version.

    Writing software is a lot like gardening. You shouldn't let your garden grow wild, it's ugly.

    1. Re: Remove features as well by DNS-and-BIND · · Score: 1

      I knew someone from Google Maps would stop by to comment.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
  23. We already knew that ... by Anonymous Coward · · Score: 1

    As the Slashdot community well knows, chasing features has never worked out ...

    Those of us who have been here for quite some time already knew that fact, unfortunately Dice doesn't

    They kept trying to turn /. into something that's totally incoherent, adding features which don't make any sense ...
     
    Who suffers?

    Everyone !!

    1. Re:We already knew that ... by epyT-R · · Score: 2

      Seems to be a common trend in a lot of software nowadays, especially with GUI design and forced obsolescence of local storage.

  24. no by Anonymous Coward · · Score: 0

    you'll get fired.

    Just stop working for these people, they have no business running a software business on nothing but buzzwords ignorance and gut feeling. Their just morons with money who like to play dress up.

    Start your own business

  25. Not going to be feasible at a publicly traded cmp. by Maxo-Texas · · Score: 1

    They have controls in place that require executive approval of all changes. Any unapproved changes are a firing expense. So the little tuning changes we always used to do for "free" can't be done. Likewise, the changes won't be approved since by management point of view, there is no value to the activity since it is not a feature (this is true at small companies too- had a developer bend my ear on this issue literally today a few hours ago).

    --
    She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
  26. Who knows best? by gsslay · · Score: 0

    So the developers think they know better than the management what the company should be doing? OK. Four points.

    1/ Welcome to the working life. Whatever the industry, the staff always think they know better than the clueless bosses.

    2/ If the developers really know better than the management, then the company is doomed whatever they do.

    3/ If the developers are wrong, then ignoring management and doing their own thing is a sure way to either get fired, or sink the company in a pit of missed deadlines, squandered budgets and undeliverable product no-one wants.

    4/ Who do you suppose might have the greater amount of experience in the company's market?

    1. Re:Who knows best? by Todd+Knarr · · Score: 3, Insightful

      Counter-argument: Obviously management knew much better than the engineers how to run the Space Shuttle program, so they were entirely right to ignore the engineers' warnings about how freezing temperatures would affect the SRB sealing rings on Challenger and how ice strikes would affect the leading edges of the wings on Columbia.

    2. Re:Who knows best? by kurisuto · · Score: 1

      Management knows more than I do about how to manage a business. I know more than they do about how to build technology.

      Management is paying for the use of my brain. Good managers will give serious consideration to what their hired brains are telling them.

      Of course, in any real-world situation, plenty of poor decisions come down, even if your management is pretty good. So when that happens, you have a few options:

      1) You can follow orders, even though you know it's a bad judgment call; or
      2) You can try to convince management differently (which sometimes works); or
      3) You can do something rogue to mitigate the effects of bad decisions.

      Anyone in a technical industry is regularly engaged in this balancing act.

      I'd note that there is rarely a very clear dividing line between doing something rogue versus exercising judgment within the range of your own authority. There have been plenty of times when I've undertaken efforts which were neither authorized nor prohibited. I've never gotten in trouble for this. Of course some efforts get silently ignored, but others get adopted and praised.

    3. Re:Who knows best? by gsslay · · Score: 1

      Entirely different situation. The question posed is more like "I'm a NASA engineer and I think we should be building a rocket to Venus, not Space Shuttles. So I'm just going to do that instead."

    4. Re:Who knows best? by Anonymous Coward · · Score: 0

      VG post!

      Yes, we are specialists and strongest in our field of specialization. Tech should defer to management on the strategic/business side of things. Management should defer to Tech on the tech/implementation/tactical. And ideally, both should be able to raise ideas and questions in the other's field of specialty.

  27. Can I ask why? by Anonymous Coward · · Score: 0

    Why would you do that? Your work will be sold for ten times what you get back, and if it does really well, you won't get paid more, it just means bonuses for the owners. So why the hell would you put all that effort into making a kickass product against the wishes of the owners of the business when the benefits of ignoring them go to the owners and the risk of being sacked is entirely on you?

    When productivity and your wages went up together, there was reason to work harder. Since the late 70's, the productivity has gone up pretty much consistently,yet wages are flat and now even going down. It's even more like the "ruinous taxation" that rich fuckers whine about, except it is over 100% tax.

    Yet when our work isn't resulting in more wages, it's made OUR fault because we're not increasing productivity enough to entice people to invest in job creation.

    I THOUGHT THAT WAS THEIR FUCKING TITLE!!!!! JOB CREATOR! As if they're fucking creator of the frigging universe!

    1. Re:Can I ask why? by Bengie · · Score: 1

      A programmer's productivity is relatively static. What's important is the quality of the code that allows the programmer to multiply the productivity of others. Code quality becomes very important as each layer of dependencies compounds the complexity of the system. 80/20 rules great until you're 3 dependency layers deep and 0.8^3 is only 0.5.

  28. Why I quit my last job by kurisuto · · Score: 3, Interesting

    At my last job, I spent three days coding up a solution which would save us days of work on every client-facing project. I had been thinking about the problem for a long time and saw a simple and elegant solution. It was ready to go, including testing and documentation. When I demoed it, folks were impressed.

    Unfortunately, management had the idea that the way to contain costs was to have the Product division develop these kinds of tools. My division was supposed to focus on deploying Product’s solutions to clients, not build solutions ourselves. Management could see the value in my solution; they just didn’t like the fact that it had come from me, not from Product.

    So I was told to write up a spec for the solution I had already implemented, and give it to Product to reimplement. I did that, but Product was notoriously slow and ineffective. They had way too many masters to serve, and they weren’t immersed in our day-to-day work to understand our needs.

    Two and a half years later, the solution was still not rolled out. I was still trying to get Product to fix the fatal bugs in their crappy implementation. I had escalated it multiple times.

    I ended up quitting that job in disgust. The case I just described was a symptom of a large and serious organizational problem; I kept running up against it. In my resignation letter, I did the math to show management how many hundreds of hours we would have saved by now if we had adopted my solution when I wrote it. I sent that letter around to a bunch of senior managers. There was a belated plea for me to stay, but I already had another job lined up.

    1. Re:Why I quit my last job by Anonymous Coward · · Score: 0

      Unfortunately, management had the idea that the way to contain costs was to have the Product division develop these kinds of tools.

      So this is a wag.

      And I'm going to speak in analogy.

      You are a hen that has laid a golden egg. Your company is in the edible-egg-production business.

      Advantage: The egg is of high value as a singular unit and can be produced at a predictable and regular rate.
      Disadvantages:
      may not work with existing machinery
      Existing machinery supports 100x value of the singular egg in daily production
      Existing machinery's cost is 1000x daily egg production value and is already sunk or mortgaged
      Golden-egg production is limited time opportunity (life of hen)
      Golden-egg production cannot be increased (hen is sterile, cannot be effectively bred)
      Golden-egg is a threat to existing egg handling infrastructure
      Golden-egg volume is too low to qualify for volume sales of resulting gold

      You get the idea. Software is a very small slice of business. Even if it saves time, you have to prove that the total cost isn't a problem and that it introduces no new - risk in the event of its failure (data exposure? Return to previous manual model? IP costs to keep running? IT licensing costs?). Without going through the regular machinery there is no value to what has been done. It might make your life better. But the needs of the business may not mean such is a priority. How you did it means there is no framing of the costs so that it can be properly evaluated.

      In short micro view != systemic view.

    2. Re:Why I quit my last job by Bengie · · Score: 1

      This is where a good manager comes into play. My current and past manager would tell the other departments that if they could not do a good job in a timely fashion, we would do the job.

  29. Nothing lasts forever by msobkow · · Score: 1

    Even "Blue Chip" companies like IBM are a pale shadow of their former selves. Microsoft has lost billions on failed acquisitions and "new technology" that never took hold of the market.

    The point is, former success and profit are no guarantee of the same in the future. Companies come, and companies go.

    Expecting to be employed by one single company for an entire career is a fools game in the internet age. The sooner you wake up to the fact that even if you do save a company from itself, you're not going to be appreciated nor rewarded for your efforts, the sooner you can start planning a career of moving from one interesting job to the next.

    Anyone who is targeting the executive levels of business knows damn well they are going to get their next "promotion" by jumping ship for another company, leveraging their current skills and position as the experience needed for a higher level position. You just flat out don't get promoted into those positions by companies any more, because they don't want you to leave your current role if you're doing a good job. And if you're not doing a good job and are replaceable, they're going to replace you anyhow with someone who isn't replaceable, or they're going to farm out the work of your position to some agency that uses cookie-cutter staff to fill the role.

    Companies don't owe you anything, and you don't owe the company anything -- especially not "loyalty."

    Get over the idea of "saving" the company. Do your job, do it well, find a better position, and get the hell out while the getting is good.

    --
    I do not fail; I succeed at finding out what does not work.
  30. fixed it by Anonymous Coward · · Score: 0

    > that drive a lot of development straight into mediocrity, if not outright urination

    this may solve it: San Francisco's Public Works Agency Tests Paint That Repels Urine

  31. good luck with that if you do agile / scrum by murdocj · · Score: 1

    This idea sounds great... do the right thing, convince management of your brilliance. Except, with the "agile process", particularly with scrum, you are managed almost minute by minute... certainly hour by hour. The only way you are going to have time to do any cleanup work, prototyping, etc is if you starting padding your estimates. If your manager is remotely good, he's going to smell a rat.

    In general I like the concepts of agile... do things incrementally, rethink priorities, get early feedback. But it does tend towards micro-manangement and that can kill any chance you have to improve code.

  32. Become a contractor by Viol8 · · Score: 1

    That way you might still be a cog, but you're a cog paid somewhere between 50-100% more than the permie staff plus you don't have to put up with any of the political BS that you find in every company. Do your work, get paid, go home. Done. Ok, it has its downsides but in general I found the upsides outweigh them quite considerably.

  33. Fuck that: most developers are customer-ignorant by mveloso · · Score: 4, Insightful

    I work with an application where the VP of engineering burned 6 man-years on dynamically loadable plugins, a feature nobody IRL actually gives a shit about. It made the code unreadable, caused all kinds of work due to the total refactoring of the application, and caused performance to degrade tremendously.

    In addition, it is practically impossible to tell what version of a plugin is correct or if it's loaded.

    Why? Because he thought it was cool.

    So, when developers tee off on upper management decisions that kill companies, I can swing right back on dumb engineering decisions that kill companies.

  34. Re:Fuck that: most developers are customer-ignoran by Anonymous Coward · · Score: 2, Informative

    If the guy was a VP, he had already strayed too far into management to be much of an engineer. That's still a poor management decision.

  35. It's not creeping. by Anonymous Coward · · Score: 0

    The software industry has fallen head first into rampant mediocrity, if not downright abysmal quality.

  36. Because your anecdote trumps data, right? by Anonymous Coward · · Score: 0

    RE: Crap like this is why people around here hate Unions.

    Right, because the slashdot geniuses all know that anecdotes trump data. Every time.

    40 hour workweek. Safe worker conditions and overall worker safety. Weekends. Abuse and harrasment protections.Reduction in debt prisons and indentured servitude. (Now coming back. H1-B is not much more than a modern version of indentured servitude.) The list of union benefits goes on.

    Fewer unions, like undocumented workers = more control and abuse by the management class. It's simple human behavior.

    Yes, Unions, like every human organization, have their faults and issues and cases of abuse. They are also necessary to avoid complete domination of labor by management. On balance there is no better force, with a better mix of negotiation and violence, to offset the natural greed of the oligarchy.

  37. management by superwiz · · Score: 1

    management often only posses like it knows what it is doing. responsibilities are given. power is taken.

    --
    Any guest worker system is indistinguishable from indentured servitude.
  38. Here's an idea: by Anonymous Coward · · Score: 0

    Stop being mediocre.

    Seriously.

    Just stop.

    Stop sitting around blaming bugs on everyone else.

    Stop sitting around waiting for someone else to fix them.

    Stop rushing your code to meet deadlines when you know the code does not work.

    Stop accepting bad code just because your bonus depends on meeting a date.

    Yes, management sucks at setting dates, but it is your responsibility as a developer to provide good code. If you do not have good code to provide, do not provide it. Period. Put something in your nutsack that resembles balls and do the right thing.

  39. Depends on who minds the gap by Anonymous Coward · · Score: 0

    The business side doesn't know a for loop from their assholes so it depends on who ever is the bridge between business and tech. If this person just does the things described in the article and doesn't ask if they can do unit testing or apply a new framework etc. No one is the wiser. All the business side knows is they get products faster with less bugs.

  40. Developer unfriendly companies by Bill_FFR · · Score: 1

    You can almost never change a company but you can change companies.

  41. Prototype - NIMBY by Anonymous Coward · · Score: 0

    I don't know about your management, but if I do a prototype, they take it and put it into production. So, everyone looses.