I don’t really agree with your premise. Software quality wasn’t pristine a few decades ago. It wasn’t hard to find messy codebases, apps that barely worked, and developers who simply fumbled their way through code until something compiled. If anything, it feels like common softest quality has trended upwards as software engineering learning materials have become more widely and freely available across the internet an…
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
Ask HN: Why is software quality always decreasing?
41–50 of 166 posts
Re: Ask HN: Why is software quality always decreasing?
#42I don’t really agree with your premise. Software quality wasn’t pristine a few decades ago. It wasn’t hard to find messy codebases, apps that barely worked, and developers who simply fumbled their way through code until something compiled. If anything, it feels like common softest quality has trended upwards as software engineering learning materials have become more widely and freely available across the internet an…
Perhaps I should update the question. I'm not referring to ALL software quality. I'm referring to the quality of codebases that are 1) old, 2) large, and 3) supported by many people. You make a good point though. Perhaps I just miss the good ol' days of working on small teams with small codebases that were pretty easily maintained.
For big companies there is no incentive at all for a developer to personally care about and do battle over things like code quality and reduce complexity.
If they are use any kind of agile (lol) system, it will just be about polishing the turd so it doesn't break and add features in some way that doesn't require big rewrites.
Re: Ask HN: Why is software quality always decreasing?
#43Earlier quoted context omitted.
Perhaps I should update the question. I'm not referring to ALL software quality. I'm referring to the quality of codebases that are 1) old, 2) large, and 3) supported by many people. You make a good point though. Perhaps I just miss the good ol' days of working on small teams with small codebases that were pretty easily maintained.
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…
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 cares about the code and he has the status and the mandate to prevent it from becoming shit.
Re: Ask HN: Why is software quality always decreasing?
#44Put 10 senior developers in the room, ask them a question about those practices. You'll probably get 8 variations on a mainstream approach and 2 alternative approaches.
As I'm often switching around stacks I'm shocked how lacking automated tooling is at enforcing basic formatting guidelines in some languages, IMO JavaScript prettify is the best here - it offers so practically no room for subjective tweaks.
For example I'm currently working in C# and it's so much worse in this regard, formatters between IDEs aren't even compatible.
So if something as trivial as formatting is this hard what do you think enforcing style guides and other quality metrics takes ?
In a small young team you can have one or more people steering the ship but when they move on or add more new people even in the best case these guys are trying to guess what the previous team would do to maintain style
Re: Ask HN: Why is software quality always decreasing?
#45I think you mean "code quality" is always decreasing. The more people that touch a codebase, the lower the code quality gets. As soon as you get more than one person involved, the conceptual integrity and code consistency begins to breakdown. Even with a single individual, if they stop working on the code for a long time, then code quality will decrease when they resume development. The very best codebases are the pr…
As such, perhaps its an unworthy goal to maintain high code quality over the long-term.
Re: Ask HN: Why is software quality always decreasing?
#46FreeBSD, OpenBSD, the Linux kernel
Re: Ask HN: Why is software quality always decreasing?
#47This is all my anecdotal experience, I could be totally wrong in the grand scheme of things.
Re: Ask HN: Why is software quality always decreasing?
#48there is constant/limited ability to grasp things, but the things and complexity that (piece of) software represents, grows..
Re: Ask HN: Why is software quality always decreasing?
#49> Does anyone know of examples of codebases (public or private) that have maintained a high quality codebase that is large, old, or supported by a large number of contributors? FreeBSD, OpenBSD, the Linux kernel