Discover more from Matt Rickard
UGC: User-Generated Code
The concept of time-sharing has been around since the early days of UNIX. However, it wasn't until the advent of virtual machines that the security boundary between two different workloads was hardened enough to support two different customers on the same hardware. True cloud multi-tenancy changed the way we write programs. And it's still improving – lightweight isolation like containers and WebAssembly are becoming more secure.
But the next frontier is running true user-generated code. Sandboxing scripts, functions, plugins and micro applications that users share. Moving beyond constrained and specific DSLs to regular programming languages.
Just like user-generated content ushered in an era of rich online content, user-generated code might do the same in extensibility. Consumer platform companies – not just infrastructure ones. It's already happening to some degree with products like Figma and Shopify, which expose a plugin system that lets users write somewhat arbitrary code and have other customers run it.
While multi-tenancy benefitted infrastructure companies the most by letting them amortize hardware costs across customers, user-generated code will have a much different effect. It will make rigid platforms much more flexible in the workflows (not workloads) they support. At first, the end user of these platforms won't be other companies offering SaaS but consumer end users of companies like Adobe, Salesforce, Shopify, Twitter, or Airtable, extending the platform to solve a particular workflow or use case for other customers. The era of true platform companies.