[ ]First, I started developing on open source for a long time. Funnily enough, I released a graphical library for Python. That was about three years ago. While I was trying to create this framework, at some moment basically I dropped my job and I created a company solely focused on this graphical framework for Python. So at that moment I was trying to compete with companies that actually were much more funded than me, because I didn’t get any money from investors… So at that moment - the way to compete against them is “Okay, I’m gonna make this library available in more languages, but without making the effort of recreating the same framework in another language.”

I was taking a look at writing to WebAssembly, and I started basically researching more into WebAssembly and what I can do with it, and what can be done, and I then realized that WebAssembly can be the perfect bridge to compile my framework to WebAssembly, and then be used across any language. So that’s what was the first idea. Then from that I started realizing WebAssembly can also be big not just for universal libraries, but also for universal binaries.

What I eventually saw is “This is gonna be big for edge computing, or in general for localized computing.” Right now, for example, if you have a website that is running on Docker, for example, the way it will work is maybe you set up with Kubernetes, or something else, and then you will have an instance that is running all the time, all day long; even if you have three requests a day. So that means if you have a total of 90 requests in a month, you will need to have a server running fully for 30 days. The cool thing is with WebAssembly we have much more optimized times, so rather than having a startup time compared to Docker of 1 second, it’s 5 milliseconds, and rather than having a container focused on the operating system, that has an operating system and then your application, it’s just the application itself.

So what I saw is because of these startup times were super-low, and because the container sizes rather than being in the order of hundreds of megabytes, will be in the order of just a few megabytes, so it will enable the next generation of edge computing. That means we can start thinking of having servers that run only when you request them. So rather than having to pay for full 30 days of usage, even if you’ve got a server with 30 requests, you might just need to pay for 30 seconds. And we can afford to do that, because we can spin up and spin down WebAssembly instances in a very performant way. Actually, that’s our long-term business.