4 ms·
It will grow without bound because software is a stack. It grows higher and higher and the bloat is from all the layers underneath constantly trying to adapt th
by titzer 3y ago
It will grow without bound because software is a stack. It grows higher and higher and the bloat is from all the layers underneath constantly trying to adapt the "cruddy, ugly, gross" stuff below into "nice and clean" abstractions for above.
Which of course would be good, if that's what the stack does. But the stack doesn't do that. The stack constantly introduces new, crappy abstractions that eventually no one wants to use directly anymore, and people build new ones on top. Eventually, the new ones on top start to resemble the ones below, until we end up with a cycle. This mislayering is known as "abstraction inversion"--the abstractions at the top end up being crappy and slow reinventions of abstractions deeper in the stack.
It won't ever stop because people keep fancying themselves the most awesomest library designers ever and keep coming up with new crappy ways that clearly not everyone likes. It's an endless game of promising the world but delivering a spray-paint job over someone else's world.
- phaedrus 3y agoIt's not just an aesthetic choice. You have people not understanding the layers below on a technical level. It's partly a lack of talent, partly a lack of willingness to make the effort, and in large part just a lack of visibility into anything 2 or more layers down.