Web Assembly Software Artifacts – Liam Randall, Cosmonic
Cosmonic CEO Liam Randall explains how a platform-as-a-service (PaaS) environment will make it possible to employ Web Assembly (Wasm) software artifacts to finally achieve the dream of being able to write code once and deploy it anywhere.
Transcript
This is Textron TV. Hey guys. Thanks for the throw.
We're here with Liam Randall. Who's CEO for cosmonic and we're talking about the rise of Wasim, and we're and why we're gonna need a pass for those of you that don't know what either one of those are one is webassembly. The other one is platform as a service and it's all coming together Liam welcome to show Thank you so much for having me on today Mike.
I always a pleasure to have an opportunity to speak with you and connect with your listeners and audience at home. So walk us through what's going on here. It feels like there's a new software artifact in the world and starting to gain some traction and it also feels like we don't know what to do with it just yet.
So maybe that's where the past comes in. You're absolutely right. You know when you think back through the last 20 years of tech we've gone through these epics of computing sort of like like a stack here where from the bottoms up we've looked around the landscape for what are the most common components every solution and we've worked to make those into platform.
So 20 years ago, we would bring developers into the loop designing a PC with their software and libraries and operating system hardware and data center and we looked around and we said, you know, there's a better way if we virtualize the computers we can then just start at the operating system layer and developers were happy and made faster progress. They adopted VMware and then later AWS and as we move forward we notice there are friction around making sure that operating systems were configured consistently between development and production and testing and all of the other places that we said. Hey every app needs this.
This is a common layer of the platform. Let's make this a common platform and we adopted a container. And container formats we did the same thing with Cloud apis rather than orchestrate directly on Azure and AWS and gcp we said, hey, let's make this a common platform with kubernetes and one of the challenges that we've had with the successive layers of instrumentation is that they sort of bring Legacy artifacts into today's modern Cloud native World and Other have been a lot of vendor sponsored attempts to create a universal and portable runtime think about Java originally or Silverlight or Flash but webassembly is an opening common standard that's created by the all the most important players in technology.
It's already supported today on your browsers and there's a huge opportunity to leverage this on the server side as well. And that's where the opportunity and the need comes for a new webassembly platform as a service. Where are we on?
This journey can people build webassembly apps and have them run today or is it still in the early stages? Exactly? It's not.
the way It's already here. And what we've seen is we've seen I'm some incredible companies that were essentially born with webassembly. I would assite figma as a great example of that figma build an incredible platform that was extendable using webassembly-based plugins.
It turns out that the properties that you would want for a plugin system for the web. You would want portability you would want security you would want a security models that are affordable like so you can figure it consistently across all of these different domains are the exact same things that we want on the server side and there are existing platforms such as cloudflare such as fastly that are essentially webassembly platforms as a service. Now that organizations have been building on for years.
The opportunity really becomes a cute that when you start to think about playing outside those bold Gardens and while Some Cloud for example, which is a cncf project is a webassembly Runtime so it's a set of software that helps you to use webassembly more easily that lets you take your code to any Cloud including your own and connect those clouds. So really you guys come into this equation. I know you've been working on Wasim Cloud, but what exactly are you guys going to offer folks?
And what can I I guess by and what will you support? Absolutely, so it wasn't cloud is already one of the easiest way to get up and running on webassembly quick quickly today. We leverage a couple of emerging standards in the webassembly community to make composable components.
So think of them as like a set of legots, so awesome cloud is let's a developer bring their business logic and then a flexibly attach things like SQL servers key value stores distributed tracing logging all without pulling all of those complex requirements into their source code. So from the developers perspective, they can go from sketch to scale very quickly. They are have composable capabilities.
They can move from one Cloud to another without having to rewrite or recompile their application as well as a whole host of security advantages. All our facts are signed. They're all tested before they're run and so forth.
But today if you want to use laws and Cloud you still need to turn On your own servers in the cloud or get Watson Cloud up and running. What cosmonic is doing is launching the cosmonic webassembly platform as a service that enables developers to create a new account and start leveraging this technology in five seconds, and then have their first apps out the door a few minutes after that. It's a it's a sketch to scale solution.
They can also extend their Cloud by simply typing Cosmo up at any existing Club location as your gcp 10 cent Oracle even their own clutter developer Workstation. So I can finally obtain this dream of writing once and deploying anywhere, but I'm going to start with the paths because that's kind of where the development tools are going to be and that's where the experience begins. That's exactly right.
Essentially. What the past does is it means that you don't need to you know, sign up for AWS account configure a VPC set up all the load balancers and the routing and turn on a couple of workstations. It just lets you start immediately if with the sort of assumption that you're obser taking care of you I think one of the emerging themes that we're seeing rise consistently with assembly is this idea of no Ops where organizations and developers care less where things are running and care more that they're running and that they're running close to the users and you can scale automatically to me the load of the word of the as the computer requires as they say perhaps somebody else's Ops, but somebody's doing the app somewhere.
Right, but you know webassembly means that we can let go of a ton of complexity. You know, there are three emerging webassembly startups right now. There's us there's suborbital and fermion and what's interesting is is that none of us are actually using kubernetes behind the scenes.
We're actually all using a much simpler orchestrator because our workloads have let go of many of the Legacy because you know components that containers brought along with them. We're all using Nomad from Hashi, which is open source, but gives us a simpler way to orchestrate and scale workloads in the cloud. What do you think the impact of all this is going to be on developer productivity because it is true the developers spend a significant amount of time playing around with infrastructure components.
So are we going to get to a point now where I can expect what from my Developers? Only you're asking the right question. all the techn ology for a minute exactly 100% of all of the things we've done across cloud and containers and kubernetes are not about the technology.
Right? Nobody gains a business purpose from being in those places. What does matter and matters the most is things that we can measure like developer productivity how quickly can you go from an idea to I have an application deployed around the world and just like containers and kubernetes and virtual machines before them.
These Technologies are compatible with so webassembly is one additional arrow in the quiver of the Enterprise toolkit that I think will be especially valuable for those organizations that need to build out to the edges that need to focus on the global distributed use case webassembly really shines in those areas and for most companies, those are Greenfield deployments. Anyway a difference between webassembly and containers are that, you know containers. Really powered this last 10 years of Evolution the great lifting shift into the cloud if you will, but the next 10 years of Technology are really about building out to the edges where the users are where the data is where we need limited and deliberate autonomy where we find different Cloud providers that are sometimes required for use based on legal Regulatory and contractual commitments that we have with our users.
And for the very right that we're operating in certain countries around the world. When I miss the containers is a software artifact. I feel like we're just getting started with this.
So where does that fit in this these containers and webassembly are a Better Together story. This is not a verse Story anymore then containers and virtual machines or a verse Story. They both a mass software artifacts have different properties and they enable you to do different things.
I think out of the advantages that we have with containers. We find that there are you know, huge libraries of existing code and solutions that are already prepackaged with, you know, with code and software Solutions. So webassembly can exist alongside both inside those applications inside those containers as well as completely adjacent to them.
Ultimately webassembly shows up in your Enterprise architecture. Just like any other microservice it shows up as an HTTP endpoint running rest or graphql and in that regards webassembly and things like cosmonic and while Some Cloud are completely The compatible with today's technology, they can be integrated and adopted on alongside where it makes sense in order to give the developers increased productivity to decrease their workload to decrease the maintenance of the applications and to ultimately decrease the cost to build and run and serve your customers. Do you think that our traditional notion of what a platform is is becoming obsolete then because we can run anywhere and maybe we just need to rethink the whole thing and then Well, I think that we as we've started to operate and scale platforms.
I think we've identified a number of critical attributes that are really important for an artifact or platform to be successful. Let me give you an example here. One of the key tenants we see in platforms is that their extendable, you know, they're pluggable that while the platform will solve, you know, 80% of the use cases.
There's always the additional 20% and in our case we look at those composable capabilities, you know, think about new things that people might want to do with Lawson Cloud on cosmonic. So in that example, we might look at some people that have contributed capabilities to our stack Adobe has contributed a an adapter for Azure Cosmo DB and Intel and BMW collaborated to bring both tensorflow and Microsoft Onyx machine learning models to our open source communities just like Any great software platforms that came before these things were extendable by the user. So as they bring those clouds and platforms to themselves.
They have the ability to customize them and integrate them with their specialized needs, but I would also take a step back and say that we have learned through productization. We've really learned a lot about the modern go-to-market, which is typically bottoms up. It's typically self-service to start and a great technologist shared with me wants that he thought the that all product teams should really strive for a five by five mentality what he meant by that was that a user should be able to be up and running productively with the new account in five seconds or less and they the meantime to dopamine or when can they solve their first problem should happen in the first five minutes and that we've really tried to optimize for that experience with cosmonic and with laws and Cloud, you know, anybody with the GitHub ID single click and in Moments, you have a full constellation.
You can type Cosmo up at any Cloud. It opens up your web browser and pulls the off Keys a great experience. Just like tail scale.
You can also do it all via cicd or a command line in API and then you deployed your first actor a few minutes after that. So we really want people to let go of all of the unnecessary things that they do today to innovate. So what's next for wasm where we gonna be this time next year?
That's great. Well, the first thing I would suggest is is that if you haven't had a chance to plan your attendance or to watch it online on October 24th is the cncf cloud native webassembly day and there we're starting with the keynote from the creator of webassembly a Luke who's going to talk about some of the key problems that we're solving collectively as a team, you know webassembly if we think of it as this the tiniest little virtual machine that can sit between different CPUs operating systems and web browsers is very pluggable by Design. So one of the things that's exciting that that will be happening through 2023 is the Sig registry work.
So we're gonna take the popular oci format and extend it in order to allow you to request portions of an artifact. So think about the analogy that's made through the bindle project is setting a table. Whereas in today's world.
When you request the container you pull down the whole image in tomorrow's world, you might want to be able just to select a set of four. Knife and a spoon as you need it to set the table rather than pulling the whole drawer down that's going to let us create capabilities and solutions that are more portable. I think we're also going to see significant interoperability between all of the webassembly run times.
Whether it's one of the large Edge providers today or one of us emerging startups. We're agreeing now today on What's called the component model and what the component model means is that we can start publishing contracts that could be consumed anywhere. It's like a green on the shape of a puzzle and so long as you max that shape of that puzzle in any language that supports webassembly you're able to not connect those puzzle pieces those two standards as they get completed and adopted across the ecosystem are gonna unlock a whole wave of mind blowing Integrations and complexity as well as provide new on-ramps to webassembly as a community.
It's gonna let people from python people from java people from the dot net ecosystem more. Quickly Embrace webassembly as a deployment Target and start to take advantage of it. All right, folks, you're hurting here.
We haven't seen anything yet. As far as Cloud native goes in the next wave is coming Liam. Thanks for being on the show.
Mike thank you so much. If you have a wonderful day, I'll see if you've gone. Cheers.
Back to you guys in the studio.