Hasen

Unnecessary Complexity

Why is "modern" web development so complex?

When a problem is understood poorly and solved poorly, new problems will arise from the bad solution.

These problems will then - obviously - be approached with the same mindset that created them in the first place. They will be solved poorly - again - with a new layer of abstraction that attempts to "hide" the problem and provide a "nicer" interface.

This new solution will itself introduce a new set of problems.

Iterate this process enough times, and you will end up with a very complicated mess that no one understands and no one wants to touch.

The way to clean up the mess is not to untangle it one piece at a time.

No.

The way is to throw it all away and go back to the original problem that was solved badly.

Approach that problem with a fresh mindset. Approach it from first principles; not from analogy. Solve it in a way that does not produce all sorts of new problems as a side effect.

If your solution does end up creating some new problems, go back and fix it, refactor it, redo it better, so that it stops producing these new problem.

Iterate until your solution is high quality.

#engineering-values