It's always been a problem. Premature optimization may be the root of all evil, yeah, yeah, but that quote is sort of a waste of breath as premature optimization is not that big of a problem. Over engineering is the great disease of the software profession. I suppose premature optimization is one source for it, but more common is premature generalization and excessive levels of abstraction. Other major sources includ…
Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
11–20 of 60 posts
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#12It's always been a problem. Premature optimization may be the root of all evil, yeah, yeah, but that quote is sort of a waste of breath as premature optimization is not that big of a problem. Over engineering is the great disease of the software profession. I suppose premature optimization is one source for it, but more common is premature generalization and excessive levels of abstraction. Other major sources includ…
I'd say overengineering and premature optimization are nearly synonyms.
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#13It's always been a problem. Premature optimization may be the root of all evil, yeah, yeah, but that quote is sort of a waste of breath as premature optimization is not that big of a problem. Over engineering is the great disease of the software profession. I suppose premature optimization is one source for it, but more common is premature generalization and excessive levels of abstraction. Other major sources includ…
I'd say overengineering and premature optimization are nearly synonyms.
You could argue for equivalence under a broader definition of optimization and engineering, but in the context of software engineering the more specific definitions used above seem to be fairly well established.
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#14Meanwhile as machine learning gets more advanced, it's able to tackle certain "essential complexity" problems that were supposed to always require hand-coding by a human programmer. So there are trends working in many different directions.
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#15The kind of over-engineering for the CV polishing almost always comes from our college hires. It's not really their fault, as I understand the attraction to the shiniest object when your a newb. When their monstrosities are allowed to make it into production, however, is when you have a dev manager that doesn't really understand software engineering.
For my part, I used to scream from the mountain tops that we were over-engineering everything, but now I just let them fuck shit up cause I'm tired of trying to save people from themselves.
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#16The field may hit a point where there's an obvious standard way to build things, (e.g. most houses in the US are wood-framed with drywall because it's cheap an durable enough for most use cases), but this won't happen for a long time. We've had thousands of years to figure out how to build houses and roads, but software really only started in the second half of the last century.
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#17There is a parallel to this where people were trying to where people write c++ programs in visual studio realize they often can do so without needing the microsoft visual studio runtime and its routines and their program drops from 68k to 2k and a dash of code to bring back what is missing in most cases, if it is even needed. https://hero.handmade.network/forums/code-discussion/t/94
I love looking at things and thinking about this, people in this field often find themselves over-implementing(or using software that is a source of over-implementation), setting up a tremendous amount of foundation to get a little thing done, getting carried away, and finding out it got too involved and over-engineered when there is a tight and simple solution that matches exactly what is needed.
Of course there are situations where microservices are still needed: https://semaphoreci.com/blog/2017/03/21/cracking-monolith-fo... Everything should be thought out and joining the latest craze isn't necessary. If you really need it, you will find yourself looking for or implementing the solution, regardless of what it is currently called, microservices have been around in one form or another before the hype, and used as needed when needed, instead of getting being used to wax a resume.
Your accidental vs essential comparison has real world monetary consequences. There are many examples that while it might take 2-3 months to stop and think and analyze what is going on instead of adding to the pile, you can save 100k-300k a month for even smaller scale deployments.
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#18In regards to the SPAs, what exactly is the alternative? In my mind you have two possibilities: 1. The most ideal is to "pick the right solution for the problem." Meaning, you will analyze the problem and do the right thing, e.g. content mainly? server side rendering. web application? SPA. 2. Do what you know, consistently. In many cases, this means using an SPA basically all of the time, whether or not it's necessar…
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#19Can you please cite some examples of this accidental complexity? I'm very curious to hear, if for nothing else than to avoid it if I agree that it's indeed accidental. I do agree that because of the "GitHub resume" phenomenon, lots of devs are engaging in the type of engineering you describe.
Anything beyond HTML forms, a SQL database, and maybe a bit of Javascript and CSS is likely to be more complexity than you need for something like this.
Re: Ask HN: Is Accidental Complexity Growing Faster Than Essential Complexity?
#20Yeah, that will simplify everything :-). It only looks shiny because the people doing it weren't around in the 90's to get sick of it the first time around. Ah... who am I kidding? 4GLs have been around since the 70's... :-P