Live data from Hacker News

Ask HN: Why is software quality always decreasing?

news.ycombinator.com

151–160 of 166 posts

Re: Ask HN: Why is software quality always decreasing?

#152

For users (and hence product owners, managers etc) the most important quality is features. That the product does what they want. So long as users would rather have software that does 20 things poorly than 10 things well, then that's what they'll get. Because the software with twice the functionality will cast a wider net and catch or keep more business. The reason you see the buggy and bloated software is survivor bi…

As a user I disagree. For business software I even disagree more. What I need is a software which does have the required functionality. What I don't need is a bloatware which has errors in all function. As a user, I hate CD/CI. After I just get used to the old functionality, suddenly my buttons moved, my function I rely on behaves differently. I have to start to learn again instead doing my productive job.

No one writes software for you as a user, that’s the thing. Software is written for users as a group. That group will require different features so the only software you as a user can afford is the one that has enough users. The software that has enough users is the one with enough features to attract or keep those users.

Re: Ask HN: Why is software quality always decreasing?

#153

Earlier quoted context omitted.

It definitely feels like survivorship bias. We only remember the good software of the past while forgetting the hundreds of buggy mess created by companies that are probably defunct by now

I wonder if people are forgetting that not long ago, it was acceptable and normal that your word processor could have a bug in it which would crash the entire OS. Or how almost everything was insecure by default.

I remember those days. It was never acceptable. We just didn’t have any other choice.

Re: Ask HN: Why is software quality always decreasing?

#154
it is highly dependent on the engineering practices applied and the team structure as well. i'd suggest to check the team topologies book by Matthew Skeleton which suggests to form teams according to the software architecture instead of business needs. The "release often and small", "go with microservices", "independent release cycles" and many other things coming from different needs either derived by the competency in market or the buzz words are either not applied properly or the engineering managers are not able to see that the underlying/existing structure requires changes before you go down those roads. I also think the test automation practices are not well adapted/applied generally because the innovations in that area are massive lately. So its rather a principle and angle than it has anything to do with the codebase or the number of people working on a project. Generally i do not agree that it is decreasing but maybe most of those big projects may need more time to adapt the industrial changes or maybe they will vanish in time anyway because of their competitors are eventually do a better job on the long run.

Re: Ask HN: Why is software quality always decreasing?

#155
In my first job, I remember I had a boss once who said to me, we don't really get bug reports anymore for our component, despite the fact that they are still pouring in for the product. There had been a half year long initiative to improve software quality for my team, supported by the broader organization. It didn't save the company though. But we reached a point where we fixed most/all of the bugs. We added automated tests for corner cases. So things got really quiet. Hard to believe. As an engineer, it was incredibly satisfying.

That phase of my career was very rare. Yes, I have gotten periods of time where I get to pay down technical debt, but mostly the bosses/employers just want me and my colleagues to move on as fast as possible to start the next project. They don't care how many bugs are filed against the old project, and we'll just squeeze in the critical ones.

The go-go-go attitude is what wears me down and makes me want out of the industry. I want to feel like I finished something. Not perfection, but finished you know? That there isn't a mountain of bugs I never even looked at?

I don't think this is something new however.

Re: Ask HN: Why is software quality always decreasing?

#156
The cost of keeping software up to date (e.g. latest practices) increases exponentially as the size of the software grows. When you have a company with over 100 contributors, and/or with many years of code, the value of maintaining some ugly bits becomes excessively high but the value of upgrading that software is not always quantifiable.

A rule of thumb is that you'll always have at least 2x or more code than engineers to maintain it. When setting priorities, you have to be pragmatic about which code to update, and which features to build.

That's probably why you're seeing so much old code.

By the way, as a freelancer, you may also be hired to maintain the ugly bits of a system. Full time employees generally work on building value, whereas freelancers are hired to take care of things that people generally don't want to hire full time employees to do.

Re: Ask HN: Why is software quality always decreasing?

#157
Because the information is widely available for making. The barrier to entry has been greatly reduced. That's why I always troll those people who complain about Haskell being the choice of language for the Cardano cryptocurrency. They say it's hard and no developers will use it. They just demonstrated why they shouldn't be writing anything related to finance or other critical infra. There's so much complaining because they see a gold rush and want to jump in without the skill needed.

Re: Ask HN: Why is software quality always decreasing?

#159

Earlier quoted context omitted.

I had this specific example in mind. How has Linux done it? Was it ultimately due to the benevolent dictator for life (BDFL) management practice?

Probably that, and the average Linux contributor being a lot brighter than your run of the mill programmer.

If someone was to design a good small set of opcodes we could go back to rolling machine code by hand. While at it we might as well fill the atx box with cute tiny isolated computers that talk over ip addresses. They have to be small enough as to not leave space for an OS. Some ROM is fine ofc.

Re: Ask HN: Why is software quality always decreasing?

#160

Earlier quoted context omitted.

Even with those caveats, it's unclear whether the premise is satisfied. The Linux kernel is old (old enough to drink!) large (and getting larger!) and supported by many people. Has its quality declined? I don't think so. It supports more hardware than ever. Kernel panics don't happen nearly as often as they used to. New features (BPF), make kernel programming easier. It's difficult to say that the Linux kernel's qual…

People being up the Linux kernel on the same way they bring up Oprah as an example of being successful in America. 99.99999% of software in big corporations will not have even 5% of the quality of the Linux kernel. The reason the kernel has such a high quality is because of Linux being a dictator, training everybody in not always so nice ways to write code that doesn't break anything and that is maintainable. He care…

Right, politeness is killing corporate software.
Post reply on HN