Live data from Hacker News

Not all bugs are worth fixing and that's okay

blog.bugsnag.com

21–30 of 63 posts

Re: Not all bugs are worth fixing and that's okay

#21
post #10

Bugs shouldn't happen. Actually, in some critical systems, bugs can't happen. Bugs aren't magic; they happen for a reason. It could be a broken dependency(unsupported versions, fatal bug in a dependency, deprecation, configuration etc.), resource limitation(out of memory, security breach etc.), poor design which leads to poor implementation(logical errors, bad data abstractions). Abstractly waving your hands and sayi…

I dare you to write 100 lines of useful code without a bug in it.

Re: Not all bugs are worth fixing and that's okay

#22
post #10

Bugs shouldn't happen. Actually, in some critical systems, bugs can't happen. Bugs aren't magic; they happen for a reason. It could be a broken dependency(unsupported versions, fatal bug in a dependency, deprecation, configuration etc.), resource limitation(out of memory, security breach etc.), poor design which leads to poor implementation(logical errors, bad data abstractions). Abstractly waving your hands and sayi…

> Actually, in some critical systems, bugs can't happen.

https://blog.acolyer.org/2017/05/29/an-empirical-study-on-th... says that they found 16 bugs in three formally-verified systems (including two bugs that didn't get caught because of bugs in the verifier). So, I'm pretty sure that bugs can happen. (Unless you mean that in certain critical systems, bugs can't be allowed to happen, in which case I agree.)

More, I'm pretty sure that most bugs don't happen for the reasons you list. I suspect that the majority of bugs are just poor implementation.

It's possible, however, for the opposite extreme to happen: The program wasn't buggy, but circumstances changed, and now it is. I'm thinking specifically of crypto code, which can be perfect... until a new attack is devised. Then the software is buggy, because it can't stop an attack that didn't exist when it was written.

When we do get software that has "no" bugs in critical systems, it's because of extreme care at every step: specification, design, implementation, review, and testing. Obsessive testing, and testing, and testing, and testing.

Re: Not all bugs are worth fixing and that's okay

#23

I have a funny feeling that the nontechnical people on my current project would be nodding their heads along to the article, but the truth is that our applications have bugs that 100% of our customers are running into; they simply aren't immediately noticeable to a layperson. That doesn't mean they're not important. The business relies on complying with the rules of third-party organizations and the software is blata…

One of the toughest things I struggled with while transitioning from a larval junior developer to a senior tech lead to a project manager was the fact that (at least in the context of a for-profit business) not all bugs need to be fixed, even the ones you personally think are really really bad. The goal is to make money, not necessarily by producing the most perfect software. The quality bar needs to be high, but there is always a point beyond which the returns for fixing a bug are outweighed by the costs of fixing it: the direct engineering cost, the opportunity cost of not working on a feature, the cost of missing a deadline and not releasing in time for Christmas, the cost associated with the extra risk you’re taking by making a late change, etc. Good places judge all these costs, and the best ones have formal processes for judging lots of bugs at scale and constantly re-evaluate whether a bug should be fixed at this point in the project or not. Sometimes the clear right answer is “no.”

Re: Not all bugs are worth fixing and that's okay

#24
post #7

I have a funny feeling that the nontechnical people on my current project would be nodding their heads along to the article, but the truth is that our applications have bugs that 100% of our customers are running into; they simply aren't immediately noticeable to a layperson. That doesn't mean they're not important. The business relies on complying with the rules of third-party organizations and the software is blata…

It's not exactly related to your post but remember that Agile != Sprints

That is like Open Source != FOSS, a lost cause.

Re: Not all bugs are worth fixing and that's okay

#25

Something about this rubbed me the wrong way and I realized it was because this pretends that ignoring much of the long tail of userbase is not only okay but beneficial to the majority. If, say, Quip ignored bugs in IE6 that's likely fine because my parents using their CRT iMac aren't going to be using Quip, but imagine if a crucial app like Gmail ignored older browsers; suddenly all the disadvantaged people that can…

Something to perhaps consider: if both groups of 10 people are experiencing a bug, especially one not caused by their own doing, why is one group more "deserving" of a fix than the other?

Re: Not all bugs are worth fixing and that's okay

#26
> There’s no such thing as a bug free application

This is a stretch. Seems like many people think of code as a living thing that just does what it wants, and us programmers have to beat it into submission.

The truth is, there can be bug free applications.

The problem I think is the complete opposite of the point of the article. Programmers need time to write good software. Without stopping to fix the things we run into, technical debt does what it's known for, and exponentially increases, and kills time that could be spent writing features.

So maybe software is like a living being in a way, that it needs to be cared for gently.

Re: Not all bugs are worth fixing and that's okay

#27
post #10

Bugs shouldn't happen. Actually, in some critical systems, bugs can't happen. Bugs aren't magic; they happen for a reason. It could be a broken dependency(unsupported versions, fatal bug in a dependency, deprecation, configuration etc.), resource limitation(out of memory, security breach etc.), poor design which leads to poor implementation(logical errors, bad data abstractions). Abstractly waving your hands and sayi…

> Actually, in some critical systems, bugs can't happen. https://blog.acolyer.org/2017/05/29/an-empirical-study-on-th... says that they found 16 bugs in three formally-verified systems (including two bugs that didn't get caught because of bugs in the verifier ). So, I'm pretty sure that bugs can happen. (Unless you mean that in certain critical systems, bugs can't be allowed to happen, in which case I agree.) More, I…

From my personal experience, the vast majority of bugs happen due to an astounding failure on the part of developers to consider even the most basic edge conditions. Also, terrible contract documentation...

Re: Not all bugs are worth fixing and that's okay

#28
This doesn't mention that crashes aren't the only kind of bugs. In fact, crashes are the bugs I fear least because I know about them immediately. It's the bugs that happily do the wrong thing that worry me. Like sending email to the wrong person, for example. I review email-sending code 3 times more closely than other code.

Re: Not all bugs are worth fixing and that's okay

#29
post #24
post #7

Earlier quoted context omitted.

It's not exactly related to your post but remember that Agile != Sprints

That is like Open Source != FOSS, a lost cause.

No, it’s not. That kind of atfitude is pervasive and wrong.

Loads of teams are nowhere near Scrum and work basically Kanban. That’s reasonably agile.

Re: Not all bugs are worth fixing and that's okay

#30
I don't see any mention of security or legal concerns. Not all bugs can be identified by exceptions, exception frequency is not an indication of their impact, and in some cases stability is less important then correctness. Using bugs per session as the (only?) metric is a horrible way of doing product management.
Post reply on HN