Hacker News new | ask | show | jobs
by wkoszek 1207 days ago
Your role as a company is to maximize revenue. If presence of bugs makes you lose revenue by customer churning or burned-out developers leaving, fix bugs. If not, create new features. And define a bug as "thing that the customer complained about". If customers don't complain, it's either not a bug, or you are solving a wrong problem.
3 comments

That seems short-sighted. Just because a customer hasn’t complained about it doesn’t mean it isn’t a bug.

I’m not disagreeing that customer complaints are important for prioritisation, but the problem isn’t quite as first-order as that.

In an extreme case, imagine you found a bug that corrupts data if a customer name begins with z. Would you not fix this bug just because you don’t have any customers whose name begins with z?

That's a bit oversimplified. Surely a bug that could lead to data loss needs to be fixed ASAP regardless of whether a customer complains about it or not.
The thing about bugs is their subtle influence on overall product quality.

It's like building a wall; if one layer of bricks is laid unevenly, at least a number of layers built on top of it will have to compensate. Usually, this compensation takes form in increased development times or increased complexity / convolution of new features.

Furthermore, it lowers end users' overall trust in the platform.

Both of these two effects will have at least some negative impact on profitability, though it may be lower than the increased profitability gained by adding new features.

I'm not saying all bugs should be fixed immediately at the expense of new features, but I've rarely been in a situation, where it felt "right" to ignore a bug indefinitely.

That's risk management. If the risk of losing the customers' (or future prospects') revenue is big enough, you should fix the bug. There might also be the risk of fines.
Many bugs don’t cause customer churn short term, but it does long term. And that is difficult to measure. They might not tell you for all kinds of reasons.