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

Well put. Parent seems to be the classic middlebrow dismissal.


Or perhaps parent is aware that the complexity of software is often a product of bad design?


Maybe my reference to "parent" was unclear. I was referring to the top-level comment.

For those who don't know, aseipp is/was a major contributor to GHC and will be intimately familiar with the build system of GHC. His observations are on point.

Relatedly, I'm currently also fighting about 3-4 different build systems which are "classics" of the genre and yet are broken in subtly different and interesting ways.

So... yeah.


I don’t understand this.

Software is always complex, it’s just that the complexity is gradually hidden from the developer by the use of libraries.

Until those libraries get baked into the standard library of whatever you’re using, you’re going to have to implement complexity yourself, or use a dependencies.

Unless you’re scripting, doing something entirely within your languages or OS framework, or implementing everything yourself (hello complexity), you’re going to hit complexity and dependencies very vey early.

The only time I’ve seen this avoided is in the embedded space where you physically don’t have enough bits to get complex.


Well that's just it. Embedded forces people to make different design decisions. We only have this mountain of shitty code because we've given ourselves enough rope to hang from.

We got to the moon with a computer less powerful than my microwave. My old smart phone worked just fine without 4 gigs of RAM and 32 gigs storage, and now this monstrosity in my hand is running out of resources? It doesn't have to be this way.


> We got to the moon with a computer less powerful than my microwave.

Can that computer show a GUI with multiple videos playing simultaneously surrounded by UI elements where multipile peripherials (mouse, touchscreen) can control their display area, all the while running two compilers (C++, Scala), and indidentally also running a Virtual Machine, etc. etc?

"Get to the moon" is an absurdly simplistic way to view complexity and it does your argument no favours.

(That's not to underplay getting to the moon. It's an amazing achievement, but if you look at the resources/humans poured into the project, it's actually not that amazing that it was possible.)




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

Search: