1. 11
  1.  

  2. 3

    One of the ways that this is so interesting and thought provoking is that for us greybeards, fear of this sort of catastrophic spill cascade is built into our very bones.

    Most recently, when your database index can’t fit in memory any more and starts getting paged onto your spinning (!!) disk. Before that, when one disk of your Quantum Bigfoot array has a loose SCSI connector and Ingres starts taking hours to return an indexed query. Before that, when your token ring cable is run through the elevator shaft and someone goes from the top floor to the bottom, inducing a current and causing the 3COM token ring cards to lose their shit and not remember who was supposed to regenerate the token for the Apollo computers. Before that, when your Sun4 has too many CS students trying to run the compiler for their assignments and starts trying to page to an NFS mount across campus. Before that, when your 555 runs just a little bit faster when your resistors and capacitors warm up, and the frequency increase is just enough to make the square waves across your breadboard a bit too soft, causing super hard to diagnose bugs all the way at the other end of your 16x50. All of those outages were sometimes days or weeks to undo…but the problems are getting faster and simpler to detect and resolve as time goes on.

    Computers are littered with billions of surprise phase changes, historically ones of incredible scope and size in their failure modes. But this is getting way better over time because we have so much resource at hand, in terms of raw compute power, latency and bandwidth. The ‘slowhang’ problem is so much less important now that we have entire generations of computer professionals growing up with systems and languages based entirely on acceptable slowhangs, like node.js and ruby and java (and this is nothing against those languages). It will be interesting when our computers become so godly that they can run our algorithms in such legion and with such excess in reserve that radical failure of most of our computations is not even perceptible, or measured, or cared about in the slightest.