1. 12
  1.  

  2. 5

    Systems are the product of the assumption hierarchies of their creators. The ones that survive completely unexpected conditions do so by accident. We’re going to keep building systems that work well enough. Guess what? Organizations don’t need perfect systems, and they are worse off if they pursue them as a serious goal.

    1. 3

      poppycock. We’re always inventing better systems, and sometimes that requires a rethink to move off a local maxima.

      1. 3

        That seems orthogonal to me. Well enough is well enough, and sometimes that requires a rethink. Perfection chasing is reserved for those who don’t have very many problems they need to solve.

        1. -1

          I don’t even know how to parse your paragraph in any sensible manner, so good luck.

        2. 2

          We’ve always developed new systems!

          Usually we develop systems that some proportion of users consider better. The newer systems are often orthogonal to the older systems, meaning fundamentally different. The newer systems are almost never better by every possible measure. Rather they’re better by enough measures that they get accepted.

          Often a new system has more features and more bugs than the older systems. Occasionally enough of those bugs can be fixed that the new system can be considered fundamentally better but often not.

          The thing is that this move towards featureful but be less robust systems doesn’t just have one impact - because once you get to a certain level of complexity, subsystems wind-up as the ingredient of not just one parent system but many (something the gp misses too). The move to using Windows machines to help manage nuclear power plants is only the most extreme example of this sort of thing. When you have semi-general-purpose thingies, whether chips, board, computers, operating systems, engines or refrigerator, you may find a subsystem-thingie reused by many people in many ways and then find changes in the subsystem percolate up in strange ways. Security is the most sensitive quality here but it’s both canary for any sort of unexpected and perverse effect from systems trade-off () and it’s a factor that isn’t going away but clearly only going to continue getting bigger and uglier.

          At it’s worst, the situation is something like combination of the tragedy of the commons and the tyranny of the majority.

      2. 3

        I don’t understand. This sounds more like a rant against code in general, than anything specific to infrastructure as code.