Serverless applications are Hyperobjects… and it really matters

Paul Johnston
9 min readDec 10, 2020

When building a complex system, it’s often really hard to hold all the elements of that system in your head. Then things get added to it, and added to it, and after a while, the application is too much for one person to understand except in the broad and abstract “it does this”.

The biggest serverless systems I have seen and the ones I’ve built seem to exhibit this behaviour more quickly. It’s not that there is more complexity in the overall system, but that the pieces are simply less coupled, less connected, and this is by design. A few functions connecting to more managed services than is normal in a non-serverless application leads to great value in areas such as resilience, and long term maintenance, but can be more complex to understand as a whole.

A couple of days ago, esteemed journalist Bill Thompson asked on Twitter what the name for a system so big and complex that we can’t grasp or imagine it is…

Turns out the word he was looking for was “hyperobject” and it’s a concept I’ve come across before, but not for a while. This piqued my interest though as it seemed a good word for how I look at serverless systems.

--

--

Paul Johnston

ServerlessDays CoFounder (Jeff), ex AWS Serverless Snr DA, experienced CTO/Interim, Startups, Entrepreneur, Techie, Geek and Christian