Hacker News new | ask | show | jobs
by isoprophlex 845 days ago
I agree, and to add on to that sometimes there's irreducible complexity to a problem, requiring complex code.

But never complicated code: crufty fixes upon fixes, too many layers of indirection, templates templating templates; you won't need that to solve complex problems.

1 comments

“Three” seems to be a good number, that shows up a lot. Arithmetic is functions with “3” cardinality (operator, data, data).

Three levels seems good: a solid foundation of high-quality library code; working application code on top of that; dirty workarounds on top of that.

As you say, the problem comes when you stack workarounds on top of workarounds.