4 ms·
You are making the common mistake of confounding essential complexity with accidental complexity. One you are stuck managing and one you can eliminate with ski
by tacon 8y ago
You are making the common mistake of confounding essential complexity with accidental complexity. One you are stuck managing and one you can eliminate with skill. The world isn't getting less complex just because you work harder on your software.
- wellpast 8y agoThe world, from software’s perspective at least, isn’t growing in complexity. What leads one to that?
- swsieber 8y agoThe world growing more complex from the software's perspective. And by that I mean, it has to account for more scenarios or do additional things... unless your software is growing in complexity while you're only removing features... Bugs in software come from thinking we're simplifying the world in one way though the program, while in reality it receives a slightly different picture.
- wellpast 8y agoA well-built software system doesn't have to grow in complexity over time. More features does not equal more complex in the true sense of Simple. Faulty data models and system designs -- that aren't fixed -- lead to ever-increasing complexity. But that is the fault of the data model/designer. I.e., there is a way to build (and grow) systems w/o linear increase in complexity -- but it takes a particular rare skill set.
- wellpast 8y agoAlso it’s not about working harder; it’s about building smarter—building simple systems—which absolutely makes your world simpler. ‘Essential complexity’ is what sophomoric developers decry when they are unable to architect well—and are unwilling to do the hard work it takes to learn to architect well.