• my name (unregistered)

    Did Matt really expect any other outcome? That's TRWTF

  • (nodebb)

    Reminds me of Spinal Tap. "Why not just make 10 louder?" "These go to 11."

  • WTFGuy (unregistered)

    Continuing from the article:

    Matt admitted defeat and fixed the ticket the hard way.

    By quitting that afternoon. And having a second, albeit individual, release party. Release from PHB-driven Dev Hell.

  • NoLand (unregistered)

    There's no problem that can't be handled by another layer of abstraction: create a QA process to the QA process, split the ticket into sub-tickets in QA', report sub-tickets to QA', which in turn closes the QA ticket… After all, it's programming and algorithms! ;-)

  • Dr Spooner built my spear (unregistered)

    I don't work there any more.

  • Hanzito (unregistered)

    It's not only the KPI, it's that the people were committed to sticking to the KPIs. We can't tell the reason, but performance reports and bonuses would be my guess.

  • Dr Spooner built my spear (unregistered) in reply to WTFGuy

    Yep, I left.

  • Pabz (unregistered)

    It just needs two ticket systems - the ticket system for manglement and the real ticket system.

  • Mark J (unregistered)

    I worked at a 3-letter company in the 1980s where we were supposed to release OS code with <= 1 defect per 10K lines of code (the OS products in question were 300 - 600KLOC at the time). We did our best to be honest and NOT create bundled bugs like this example - but I can't remember a single time where we didn't have to get a corporate waiver to release with a higher defect density - more typically about 1.8 - 2.5 / 10KLOC. [Note that I am distinctly NOT making a value judgment about the usefulness of defects/KLOC; that was the metric we had at the time. The OS was written in assembly language; make of that what you will.]

  • (nodebb)

    Sounds similar how stuff is done where I work... they consider work done to be "closed tickets" so there's all this nonsense because nobody has the balls to explain to the business how it should work, management just behaves like we work FOR them instead of being partners with them. Incredibly frustrating to begin with, but it's more frustrating how many people in development act like the other departments are full of dragons or trolls or something that will eat you if you try to talk to them like human beings and explain things.

  • Bill99 (unregistered)

    It's pretty normal to get this reaction to raising bugs/issues where the higher management can see the numbers. Keeping two sets of bugs is a bit dodgy; a better option is to have a flag to distinguish a bug as being 'public', then have it refer to a layer of non-public blockers which are sold as the plan to resolve the main issue.

  • Officer Johnny Holzkopf (unregistered)

    Two things:

    "These are post release bugs. Which means we released software with bugs in it." - That is completely normal today, to be expected, and the only way it actually "works". Everyone does it that way.

    And:

    "But this dashboard doesn't track bugs, it tracks tickets." - When your manglement decisions are based on traffic lights, i. e., on two or three colors, simplify everything. Even your product. That might help. Make it work as expected ("green light"), or not work at all ("red light"); bonus points for buggy software ("yellow light"), which seems to be today's "modern" standard and expectation.

    And finally - three, three things:

    "Matt admitted defeat and fixed the ticket the hard way." - By leaving the company as soon as possible.

    Really, why do programmers still (!) seem to think it is okay to work that way? And how can companies doing this be considered "businessing successfully"? Imagine it was a hospital - patients would just die! "But this dashboard tracks dismissions, not survivors! See? No red lights. See?"

    Fix that problem first, and everything else will follow.

  • LZ79LRU (unregistered)

    Should have just asked him to open those as subtasks. That's what the feature is for.

  • (nodebb)

    I expected the bug on Tuesday to be: "Can't log any tickets..."

  • (nodebb)

    "I cannot do anything without a ticket" is the most stupid and destructive statement you can here and pretty much sums up that the company is completely bugged on a fundamental level - which to no surprise can be seen in their software as well.

  • (nodebb) in reply to MaxiTB

    Tickets for development is kinda stupid anyway. A ticketing system is for your Helpdesk crap. now, yes, for development you see stories/bugs/etc. but that is something for development eyes only. It shouldn't be linked to some kind of generic helpdesk app so Karen in Finance can see what development is doing.

  • (nodebb)

    The VP nodded without listening. "Right, but this dashboard tracks open tickets. We like releases with only one open ticket. The lights are green, see?"

    "Shall I tell the CEO that you and QA are lying to him?"

  • Duke of New York (unregistered)

    "You're getting bugs, you're getting bugs. You can't create more tickets. What can you do? So what we do is, whenever we have bugs and we need that extra room for the release, you know what we do?"

    "You put them under one ticket."

    "One, exactly. So it's a one-ticket release. Almost perfect."

    "Why don't you make the ticket limit higher and track the tickets accurately?"

    "These releases have one."

  • Duke of New York (unregistered) in reply to Officer Johnny Holzkopf

    Really, why do programmers still (!) seem to think it is okay to work that way?

    Because there's a door for them to walk out of if they don't like it, and finding another job is not guaranteed. Duh.

  • (nodebb) in reply to Mark J

    So the OS was written in asm and you had a requirement for 1 bug per kloc... you have direct access to nops in asm, I can't see what the problem is, you can get to 1 bug per anything-you-want.

  • (nodebb)

    Deal with the problem in the only sane manner: let the ticket languish. If anyone complains, just say the application can't be that bad. After all, there's only one outstanding bug, and feature requests are more important.

  • Daniel (unregistered)

    ship it, only 1 bug.

  • (nodebb) in reply to Officer Johnny Holzkopf
    Really, why do programmers still (!) seem to think it is okay to work that way? And how can companies doing this be considered "businessing successfully"? Imagine it was a hospital - patients would just die! "But this dashboard tracks dismissions, not survivors! See? No red lights. See?" Fix that problem first, and everything else will follow.
    More like they have no say - one leaves, ten new are applying already. You could unionise, though...
  • (nodebb)

    The only way to fight stupid policies is by creating policies.

    One option is to create a policy that only one bug gets fixed per ticket, no more. If there are more, only the first bug listed gets fixed.

  • LZ79LRU (unregistered) in reply to Officer Johnny Holzkopf

    Really, why do programmers still (!) seem to think it is okay to work that way? And how can companies doing this be considered "businessing successfully"? Imagine it was a hospital - patients would just die! "But this dashboard tracks dismissions, not survivors! See? No red lights. See?" Fix that problem first, and everything else will follow.

    I can only speak from my perspective here. But my answer would be because I don't care and I should not care. If a patient dies in a hospital that's a tragedy. If software has bugs that's a ticket. Big difference. Nobody should be loosing sleep over bugs.

    And if this sort of thing is the worst annoyance you get in an otherwise decent job why complain? After all, it's just a job. I ain't married to it. Even if the company goes under because of poor management that's not my problem. In this market (and it's been this way for decades) a good software engineer can always find a new and better job over night. And that does not look like it's going to change any time soon.

    So honestly jobs are something you pick up and stay until it stops being comfortable or you drain them dry. And than you move on. Kind of like marriage actually.

    Honestly, I would not have pushed things any further than asking the first QA guy I came across for an explanation at the water cooler. And even that just out of curiosity. I would definitively not have complained to management.

  • ichbinkeinroboter (unregistered) in reply to LZ79LRU

    I used also always say "hey nobody will die because we have bugs" ... Except, then I spent a year working as a dev on the logistics systems for a hospital chain. If the right organs (for example) dont get to the right patient withon a defined time, they are unusable and maybe someone DOES die. I did think about that a bit differently in that job! Aviation, military, vehicles - all other possible "people can die because of a bug" domains. it depends, it depends...

  • LZ79LRU (unregistered) in reply to ichbinkeinroboter

    True enough. But as a general rule the majority of software developers know if their software is going into critical applications such as those or not in advance and can adjust their attitude accordingly. Personally I always made a point of avoiding jobs that require me to bear such responsibility.

    Not that it really matters all that much either way as the odds are vanishingly rare that even if the worst does happen and people die the fallout from that is going to actually reach the developers. At worst the company may get sued into the ground and I might need to find a new job.

    But it still gave me some piece of mind to know that the hospital I might be treated at or the airplane I might be flying on does not have software written by yours truly.

    I am good, bloody good even. But I don't want to be the victim of ironic suicide. :)

  • (nodebb) in reply to ichbinkeinroboter

    You forgot radiation therapy machines, ones that might be called Therac-25.

  • Yazeran (unregistered) in reply to Steve_The_Cynic

    Or the the airplane software called MCAS (Boing 737-Max)

  • LZ79LRU (unregistered) in reply to Steve_The_Cynic

    Did anyone ever get punished for that anyway?

  • Anonymous (unregistered)

    Genuinely naive question: How much trouble would it be to implement a separate bug-tracking system for the developers to use? Break the big sham ticket into separate tasks that can be properly assigned and tracked? Wouldn’t that solve the problem without upsetting the status quo?

  • WTFGuy (unregistered)

    It is precisely the attitude that "quality is immaterial. As long as I can get away with shoddy or selfish work, it's OK. I'm just in it for me." that leads to nasty management defrauding the employees and the shareholders, that leads to slacker I-don't-give-a-shit workers, and the general enshittification of society.

    You (any you) are either part of the solution or you're part of the problem. Lead by example.

  • LZ79LRU (unregistered) in reply to WTFGuy

    There is a big difference between not caring about quality at all and being realistic about your position in reality. Employment is not friendship, it is not love or belonging. Your job is not your life or your family. And it is not about caring or emotions of any kind.

    Employment is a trade transaction.

    When you are an employee you are selling your labor and time in exchange for money and benefits. Therefore it is your contractual obligation to make sure the employer gets what they pay for which includes meeting what ever standard of quality they require. No more and no less. Equally it is the employers contractual obligation to provide the pay and benefits written in your contract. Again, no more and no less. And as long as both sides deliver what is contractually demanded everyone is happy.

    But that is where the relationship ends. Neither side gives a shit about the other beyond that nor are they supposed to.

    It is no different than any other kind of trading.

    When you go to the grocery store all they care about is that you pay them and all you care about is that they have the goods you want and that they aren't spoiled. If you stop coming one day they will just find new customers. And if they shut down one day you'll just find another store.

    It's that simple.

  • Duke of New York (unregistered) in reply to LZ79LRU

    In this market (and it's been this way for decades) a good software engineer can always find a new and better job over night. And that does not look like it's going to change any time soon.

    Something tells me you haven't looked at job board stats and developer personnel trends lately. Or maybe my current technical domain (Android apps) is a highly exclusive niche and I don't know it.

  • Duke of New York (unregistered)

    If what you want is the kind of body-shop where such practices abound (make the client happy, whatever that takes) then yeah, you can find those overnight. But that doesn't exactly make your point.

  • Duke of New York (unregistered)

    Let me see if I have this straight:

    • A job is not a marriage. You don't have to care about it.
    • You just use it and walk away,
    • Like a marriage.
  • ichbinkeinroboter (unregistered) in reply to LZ79LRU

    "But I don't want to be the victim of ironic suicide. :) " yeah, excellent point!

  • (nodebb) in reply to DocMonster

    A ticketing system is for your Helpdesk crap. now, yes, for development you see stories/bugs/etc. but that is something for development eyes only. It shouldn't be linked to some kind of generic helpdesk app so Karen in Finance can see what development is doing.

    Exactly this. A ticket system should be completely separate from a source control, issue/bug, commit tracker. If a bug is found via the former, an issue can be opened by a dev in the latter side and then discussed and worked on by the appropriate devs/team, after which a response can made to the originating ticket.

  • Chops (unregistered)

    We created two buglists. A "triage" set, and the ones that are definitely "real" and need to be fixed. We make sure that there are only ever a few bugs on the "real" list that gets counted at a time. We just move them from the triage list as needed to ensure there are only ever a few "real" tickets open.

    Everyone is happy. We get the tickets to be meaningful and discrete and useful, they get a list of tickets that clearly only has three or four in it. Everyone knows this is what's happening, everyone is happy.

  • Guesty McGuestface (unregistered) in reply to d-coder

    I think you've hit on the real answer. The VP wasn't high enough up the chain. It was the CEO who wanted to see pretty green lights, and the VP didn't care how that was accomplished.

Leave a comment on “A Single Bug”

Log In or post as a guest

Replying to comment #:

« Return to Article