> Distributed object frameworks like CORBA, DCOM, and Java RMI use a programming model similar to ours but suffered from a number of technical and organizational issues [ 58] and don’t fully address C1-C5 either.
And the pendulum swings back yet again.
> Underneath the programming model lies a runtime that is responsible for distributing and executing components. The runtime makes all high-level decisions on how to run components. For example, it decides which components to co-locate and replicate.
So, Microsoft Orleans, Akka, et. al.?
This feels like rediscovery of virtual actor models to me - aka not the right answer for most business applications.
The end game is proper cloud-native, which means stop thinking about 100% of this bullshit. Alternatively, you need to take full ownership and do it all with single machine monoliths on-prem. Playing around in the middle is a death sentence (K8s, multiple machines, DIY networking stuff, etc). Your cloud provider should be the one taking psychological damage over this stuff, not your team.
There was a paper posted a while back that aptly describes modern development modes relative to the cloud - https://arxiv.org/pdf/2307.01045.pdf. Figure 1 really helps to illustrate the spectrum of thinking. I've been using this aggressively to help various c-suites visualize where we are going. The super weird thing is that they seem WAY more excited about the strategic implications than every developer I know.
Are they trying to reinvent IDL interfaces like in Apache Thrift or Protobuf?
Reading this I'm thinking "this sounds super similar to serviceweaver". Turns out, it's serviceweaver they're talking about :)