1. 11
  1. 2

    We could initially ignore it, circa 2007 by pushing shared state down into the database and treating browser pages as a pure function of state.

    Still works pretty well, tbqh

    1. 2

      And we have lots of pretty nice tools for shuffling shared state around, things like RabbitMQ and Redis.

    2. 1

      Whatever abstraction works over the network environment should also work in a single-threaded, single-computer environment without needless over-complication.

      I think this a dangerous assumption to make. The distributed computing setting has much harsher constraints than the single-threaded, single-computer environment, so there’s no reason to believe that we’ll ever have abstractions for it that are as easy to work with.

      This is dangerous, because when you think in those lines, you start to see 3-person start ups building their platforms with 50 users running on 200 microservices.

      1. 2

        My line of reasoning here was that something built for a harsher environment should work for an easier environment. Where it would be an issue is that because it was built for a harsher environment, it’d be over-specified and over-complicated. Wouldn’t that be the case?

        Or are you saying that they’re so different to be orthogonal that even if you get a good abstraction for one, it’ll never be a good fit for the other?

        1. 1

          Oh, I think I see what you mean now, when I read “without needless over-complication”, I thought you meant we should have such powerful abstractions that writing distributed systems should be as easy as writing single-threaded, single-computer programs, which I see no reason to believe to be attainable. But I fully agree with you in the other direction; the latter case seems to me like a strictly easier problem, so if your system description can be interpreted as a distributed system, it should be possible to “emulate” it seamlessly on a single computer.

          1. 2

            Ah, ok. Thanks for letting me know. I’ll work on a rewording for clarification.