The last 20 years IT world is changing from guaranties for everything to best-effort over all the stack — strong to eventual consistency, channel switching to packet switching, etc.
There are less dedicated and more shared resource usage across the industry. It seems like the road to hell, but it's akin evolution from dinosaurs to animals.
Take a look, how everything is changed:
- Monolithic applications gave a way for SOA solutions, which means eventual consistency between the big blocks.
- SOA became microservices with eventual consistency between the small blocks.
It seems like we are getting fewer guarantees from the systems, but in fact, we are getting more reliability. Sounds strange, isn't it?
Evolution in nature have passed the similar way from exoskeletons and giant creatures to social constructs, within which every single creature has fewer guarantees of surviving by itself, but the whole system becomes more flexible, adaptive and therefore reliable.
That's where we go in IT.