The Age of Managed Services

Posted 2 months ago | Originally written on 17 Oct 2024

Software used to shipped. Literally. You had to get a physical disk (floppy or optical) to get access to a company's software. Then the Internet happened. While the Internet lent itself to being a software platform, it took a while for the technology to develop that could support this. This is why, in the early days, writing Internet-based applications was a royal pain. Eventually––as with all tooling endeavours––sufficient momentum was developed to make web-based applications easy enough that individuals and companies could build software applications with ease. Initially, remote applications depended on technology like CORBA, SOAP and WSDL but now we have REST APIs and frameworks like Phoenix which use WebSockets for efficient client-server communication.

In the present cloud-computing era, no one needs to ship any software; keeping your family jewels only accessible via managed services means that you can have the best of all worlds: bill only for use while never needing to reveal your code to users. Furthermore, managed services extend beyond software only with hardware taking the form of a utility: pay only for the hardware you use with the option to instantly scale as when you need to.

Will this post open source model hold? What is the future of open source?

The sad reality about managed services is that the limit to scale is the proprietor's capacity to absorb demand. Granted: if you're an AWS or Google then your scale is almost without bound. But for anyone else who is merely hiding 'something special' behind a backend there's not much gain. Suppose you write some awesome alternative to PostgreSQL and you hide it behind a managed service. You now begin to mint from all those years you invested in adding precious optimisations that you want only paying users to enjoy. How many users can you support? Why not make the code open to world and only provide the managed service for quick implementations while benefiting from universe of use cases that potential users will adopt in the wild?

Managed services (without a correponding open source offering), it seems to me, become their own worst enemy.