Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Code quality does not affect final product quality IMHO.

I worked in companies with terrible code, that deployed on an over-engineered cloud provider using custom containers hacked with a nail and a screwdriver, but the product was excellent. Had bugs here and there, but worked and delivered what needs to be delivered.

SWEs need to realize that code doesn't really matter. For 70 years we are debating the best architecture patterns and yet the biggest fear of every developer is working on legacy code, as it's an unmaintainable piece of ... written by humans.



> Code quality does not affect final product quality IMHO.

What we need, admittedly, is more research and study around this. I know of one study which supports my position, but I'm happy to admit that the data is sparse.

https://arxiv.org/abs/2203.04374

From the abstract:

"By analyzing activity in 30,737 files, we find that low quality code contains 15 times more defects than high quality code."


The parent point isn't that shitty code doesn't have defects but rather that there's usually a big gap between the code (and any defects in that code) and the actual service or product that's being provided.

Most companies have no relation between their code and their products at all - a major food conglomerate will have hundreds or thousands of IT personnel and no direct link between defects in their business process automation code (which is the #1 employment of developers) and the quality of their products.

For companies where the product does have some tech component (e.g. refrigerators mentioned above) again, I'd bet that most of that companies developers don't work on any code that's intended to be in the product, in such a company there simply is far more programming work outside of that product than inside of one. The companies making a software-first product (like startups on hackernews) where a software defect implies a product defect are an exception, not the mainstream.


It doesn't matter.. Until it does.

Having poor quality code makes refactoring for new features harder, it increases the time to ship and means bugs are harder to fix without side effects.

It also means changes have more side effects and are more likely to contain bugs.

For an MVP or a startup just running off seed funding? Go ham with LLMs and get something in front of your customers, but then when more money is available you need to prioritise making that early code better.


Code quality absolutely does matter, because when everything is on fire and your service is down and no one is able to fix it customers WILL notice.

I've seen plenty of companies implode because they fired the one guy that knew their shitty codebase.


Much like science in general, these topics are never -- and can never be -- considered settled. Hence why we still experiment with and iterate on architectural patterns, because reality is ever-changing. The real world from whence we get our input to produce desired output is always changing and evolving, and thus so are the software requirements.

The day there is no need to debate systems architecture anymore is the heat death of the universe. Maybe before that AGI will be debating it for us, but it will be debated.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: