The Docs Are In: WASM and Philosophy (with Dr. Matt Butcher)

Share via Twitter Share via Facebook Share via Linkedin Share via Reddit

Get more video from Redmonk, Subscribe!

Dr. Matt Butcher, CEO of Fermyon, drops in for a discussion with RedMonk’s Kelly Fitzpatrick on Web Assembly (WASM), philosophy, and Matt’s intersecting interests in the humanities and technology. Topics covered include analytic vs. continental philosophy (and what Descartes has to do with them); Baudrillard on hyperreality; a TL;DR intro to Web Assembly; and how Kant figures into the chapter Matt would write for a book on WASM and Philosophy.

This was a RedMonk video, not sponsored by any entity.

Related Resources:

Rather listen to this conversation as a podcast?

 

Transcript

Kelly Fitzpatrick: Hello, I’m Kelly Fitzpatrick with RedMonk. Welcome to The Docs Are In, the series where we sometimes talk about documentation and we sometimes talk to people with doctorates. Our topic today is WebAssembly, or WASM, pronounced as WASM, and/or philosophy. And with me today is Matt Butcher, the CEO of Fermyon. Matt, it is a delight to have you here today. Can you start us off by telling us a little about who you are and what you do.

Matt Butcher: Sure. And thanks for having me. This is going to be fun. I’m looking forward to it. Right now, I’m the CEO of Fermyon. But if I rewind backward in life, I got into software I did software development when I was in high school by a fluke. I landed at the wrong job and I thought I was going to be mowing lawns and instead ended up doing some software development. But even in high school, my big interest was more philosophy related. So when I graduated high school, even though I was comfortable with programming and things like that, I ended up going into philosophy and then just ended up using this whole computery thing to pay my way through school and ended up doing a bachelor’s and a master’s and a PhD in philosophy. And all along the plan was, okay, I’ll come out with a PhD. I’ll become a professor. I will live in the hollowed house of academia forever and ever. Amen. And I got into teaching and I was like, wow, this whole philosophy thing really does to go slowly. And I’m used to software where new and exciting things are happening all the time.

And I ended up drifting back out of philosophy and back into software development. And ultimately, that led me to a couple of startups that ended up getting acquired by big companies. And I ended up at Microsoft. And then decided a couple of years ago to take the leap with a group of 10 others. And we started Fermyon to build the next wave of cloud computing with WebAssembly.

Kelly: And I feel like anyone who comes on the show, I should probably be like, so did you end up getting into tech to pay your way through grad school? Or anyone who has like any type of humanities degree? Because that’s certainly what I did.

Matt: The true story behind it is I had too much college debt and the only way to ever pay it off.

Kelly: Yeah, but I also feel like the lawn mowing and then it ends up being more of a getting into software bait and switch jobs… at a young age, it was probably also really formative for you.

Matt: Yeah, it was a funny story because I got hired at the local municipal utilities company, and my dad set up a whole interview, and then I went in and they asked me a bunch of questions about yard care. But I never, being young, thought to ask what the actual job was I was being hired for. So when I came in on my first day and they said, what’s your name? And I said, Matt. And they ushered me to this cubicle and got me all plunked down in a computer and everything. I just thought it was a weird job interview. It took two or three months before somebody told me, actually, there were two people hired named Matt, and you were assigned the wrong job. And this other Matt never showed up. And so it was one of those situations where I don’t think I ever would have chosen that for myself. I think I wouldn’t have ever even applied for a job that I thought was computer related when I was in high school. I was more like the lawn mowing kid.

Kelly: I do feel like that prepared you for all of the weird, bizarre whiteboard interviews that the tech industry likes to do. So it’s like, so imagine you’re coming in, you’re being interviewed for a tech job, and it’s like, tell us what you know about lawn care. That just seems like one of the random things we like to stunt people with in the tech industry.

Matt: I mean, yeah, a friend of mine was asked, describe making a peanut butter and jelly sandwich for one of her programming interviews. And I suppose, describe how you’d mow the lawn wouldn’t be that far off from that programming interview.

Kelly: Yeah. So early on, it’s like you were destined for, I think, this industry. In some way, shape or form. But I want to go back to the philosophy part. I want to hear a little bit more about your work in philosophy, especially I know one of your specializations was philosophy of computers and information. I’d love to hear more about that. You gave us the logistics of how you got from that to being the CEO of Fermyon. But tell us a little bit more about almost the intellectual pathway.

Matt: Oh, yeah, sure. These days in philosophy, there are two major, I guess you’d call them, strains of philosophy. There’s analytic or Anglo-American philosophy. And then there’s… I should say this. I should have said it this way. In philosophy, there are two strains in Western philosophy that tend to dominate the landscape. And that’s Anglo-American philosophy, which is also called analytic, and then continental philosophy, which is often where you’re talking about Sartre and phenomenology and existentialism and Heidegger and on into postmodernism and Deleuze and Guattari and things like that. And so when you get into — when you’re finishing your undergrad, you have to make a decision about which of those two kinds of schools of thought you want to go into, because, in fact, most schools are, most graduate schools are bifurcated along those lines. And I came into my grad school hunt more in favor of continental philosophy. I’ve done a lot of work on existentialism and phenomenology, really into phenomenology. I can explain all these terms, but it’s actually… Let’s just get to the punchline.

Kelly: But I feel so… A little background. My background is in English studies or literary studies, and we love continental philosophy. We love theory, we love all that stuff. I feel like some of our viewers out there would be like, I know this. Some people are out there like, why are you talking about this? Please never talk about this again. But sorry, I did interrupt you, but please continue.

Matt: There you go, right? And I think you can look at the way Descartes did philosophy, and you can actually see the branch, right? So Descartes, famous for some of his mathematical formulations, famous for a lot of his very rationalist looking at things. But Descartes is also famous for starting from cogito ergo sum, I think, therefore, I am, and going from that into what’s called a constructive metaphysics, where he began to say, postulate, this is what reality is like. And I think that’s a good way to look at the fork in the road that is analytic versus continental. Analytics or Anglo-American is very focused on rigor, logic, definitions, taking an argument and analyzing it until you’re sure you’ve squeezed every last bit of analysis out of the argument, or you’re looking at somebody else’s analysis and poking and prodding at it until you find even the most minute hole and then exposing that and talking about what that means. Continental philosophy really took the other strand of Descartes and said, okay, well, how do we approach the universe around us? And how do we describe the experience of being a human being in a cosmos that’s essentially unknowable to us?

And so you get out of that, you go with the restraints of phenomenology, which is very much oriented around what does it mean to exist in the world? How do I experience the world around me? On into postmodernism, where you start to critique, can we even make meaningful assertions about this that are anything more than conjecture that are likely very personal in nature? And so you get, again, in analytic philosophy, it’s constructing arguments and poking holes in argument. And continental philosophy, you see constructing worldviews and then poking holes in whether or not we as human beings can adequately develop any meaningful metaphysics or any meaningful epistemology, any meaningful statements the world around us. And I was way more into that to that latter trend when I got going in grad school. Again, also having this background in computer science, which, of course, is on the other side of the Cartesian dichotomy, right? Very much on the rationalist side. So I ended up picking a school, Loyal University in Chicago, that was known for being fairly pluralistic in the sense that their faculty, they had very strong analytic philosophers, very strong continental philosophers, and a pretty good array of other kinds of philosophy in there as well. I think it might have the country’s foremost dental ethics program, which, believe it or not, is a fascinating field.

Kelly: Today, I learned that field exists.

Matt: It’s very well-rounded school.

Kelly: Now I know that is a thing.

Matt: When you think about it, I guess any time you’re putting sharp objects in someone’s mouth, you should have some ethical… I can’t say I ever understood much of the nuance of it, but there was a lot of stuff there that we had very successful people go through that program and on into the field. And people came to Loyola specifically to study dental. So it was fascinating. But from there then, so I came in feeling very continental, started studying in that particular school, really enjoyed a lot of it. But as I got going, and again, I’m in the background, hacking on things here and there and doing five-hour contracts here and writing tech books there.

Kelly: So supporting your grad school life by doing work in the tech industry.

Matt: Because that quote, unquote, full ride scholarship doesn’t really… It’s totally fine if you want to live off of a dried bag of rice for four years. But that was starting to tug at me, and I was starting to think about metaphysics and the construction of the world and software development as far as a constructive metaphysics, where you actually have an experimental playground where you can build a system and see how it works. And so I got… and really the computer stuff pulled me back into thinking about how analytic philosophy was approaching the world, right? And why you would analyze the world in a particular way. And why logicians like Friega and Russell and Whitehead were so set on attempting to build an abstract symbolic system that they felt could represent in some meaningful way, at least some important facts about the universe. And so here I am two and a half years in finishing up my master’s thesis and going, I think this computer philosophy thing is where I really want to go. And so I started hunting around the department to find anybody who would support a dissertation on this.

Because as you know, you got to find somebody who’s going to be your champion, and then you got to find four other people or three other people who will sit in there and at least read part of your dissertation.

Kelly: And they have to somehow get along with each other well enough to sit in that room together, which is always… I think it’s a tricky part when you’re talking about things like that. And with this analytical philosophy and continental philosophy split, too, I think it’s interesting because it’s like… I know that in English studies and literary studies, there can be like, factions where it’s like, you can’t put these people in the same because they will just start arguing. Did you have to deal with any of that?

Matt: Oh, yeah. I mean, and it’s nice to tell a very simple story about, and then I realized computer science was better for me. Part of it, though, really was the fact that I never felt particularly 100 % comfortable in either tradition. And there is a lot of I would say I would go one step further in saying it can border on animosity. You can actually… I sat in meetings where people ended up standing up and yelling at each other, where a conversation started out about who’s bringing the cheese to the next meeting. And by the end, people are yelling at each other about worldviews and things like that. And it was just there was some deep… and this was not like every faculty meeting by any means. These were rare occurrences. But there were strong, strong opinions about it. And part of that comes with the territory of being a PhD. You spend… The goal for those of you who would like my view of what a PhD is, the goal is you want to become the expert or one of the experts in some often very, very, very, very narrow topic. And so you’re really pouring your heart and your soul into this, and it shapes your beliefs, whether you want it to or not.

Shapes your beliefs about the importance of your views. And you pile on to that anything that takes into account humanity at its core, which is probably all academic disciplines, but it’s definitely more on the liberal arts and sciences side, right? You also come to the belief and/or realization, depending on how you’d like to parse that out, that what you’re saying has importance to people, right? When you’re talking about history, you’re talking about the forces that shape to humanity is today. When you’re talking about psychology, you’re talking about the internal state of human beings that causes us to act in the rational and irrational ways that we do. When you’re talking about philosophy, you’re talking about something about the construction of the cosmos and the construction of the rationality that has to do with how we’re going to survive as a species together on into the future. And so I think it’s normal that when you hyper focus and you start to study these things, things that for other people, for outsiders, would appear to be minute disagreements of a technical nit, are to you a deeply foundational principle or point that you feel obligated to defend because of its potential impact on the world that we’re in.

And I think that definitely can lead to some splits. And with analytic and continental philosophy, you definitely saw that become one of those things where on one hand, you have people who say, reality is a construction that can be described best in propositional logic. And we need to root out all of the inconsistencies in our language and try and get as rational as we can. And on the other hand, a group of people who are going, the cosmos is a beautiful, unknowable place. The world is a beautiful and unknowable place. We can take some artistic liberties in interpreting something in order to give our lives meaning in this space. And the two of those schools are not going to walk into a room and agree on anything, apparently, from which cheese you’re going to bring to the next meeting to what an ethical system is and what the proper foundations for ethics are. And those are really big deals. Well, the cheese thing, not so much.

Kelly: I think the cheese thing is a big deal, like what cheese you… it can matter whether people show up. And it does strike me as… Because I think earlier on, you had mentioned that tech industry computers as spending more into the analytical side, but the more and more you talk about it, it’s like that continental side and the idea of reality and our perception of it and how it’s shaped by things like technology. I know that there’s that almost bifurcation, but at the same time, the tech industry, I think, it benefits from both of these ways of looking at the world.

Matt: Yeah, I agree. And I think even continental philosophers have done themselves a disservice in this regard. And that going back to someone like Heidegger who appeared at least in the question concerning technology to be anti-technology, and for good reason, or someone like Baudrillard who uses technology as a cudgel for the fact that we’re floating in a space we’ve invented that might not reflect the reality that is most impactful on our bodies or something like that. I think continental philosophy has done itself a little bit of a disservice in distancing itself from what we are learning about ourselves as a species and about what our power is in the world when we don’t talk about — When we’re doing software development, what are we actually doing? What are we doing when we translate a language of abstract symbols that are really way more what the analytic tradition would be like, oh, yes, this is home. But we’re doing something interesting with that because we’re trying to describe a world that doesn’t exist. And we constantly use metaphors in this world that we’re creating to try and tie it to the one that we are comfortable existing in.

And I can give you a really dumb and trivial example, but it’s one that will immediately stand out to all of us because we all do some shopping online. And this is the realization that hit me. I’m writing an application, building a thing that I have called a shopping cart. And I’m like, philosopher me is like, this is not a shopping… It’s a little voice on my shoulder. This is not a shopping cart. This is not a shopping cart. You’re basically creating a list of numeric indexes that point to things. A shopping cart is a metal thing with wheels on it that you scoot down an aisle and you drop physical objects in it. And yet at the same time, we all go to Amazon and we shop and we what it means to put something in our shopping cart, even though other than a little bit of skeuomorphism here and there where you got a little shopping cart icon or something, there’s nothing in my shopping cart on Amazon that even comes close to resembling the shopping cart that we have in the physical space. And those kinds of realizations, when I hit those, I’m going, okay, so a big part of software development at a philosophical level is attempting to construct systems, abstract systems that perform a certain number of steps according to a predetermined logic.

But another part of it is attempting to build a space that is comfortable for us as humans to approach and participate in. If we’d called it a finagle instead of a shopping cart, then we would have had to train everybody. Okay, so a finagle is where you put the SKUIDs that attach to the shipping codes that will get you a thing. And the conceptual overhead in doing so would have turned everybody off from Amazon back when it was a little bookstore and probably would continue to present challenges.

Kelly: And I feel like– Yeah, and those translations are fascinating, too, because I can imagine a time where we’re no longer even using actual physical shopping carts. It’s almost like the save disk being… the floppy disk being the icon for save. And there are generations of people out there now who are like, what is that? Where did we get this?

Matt: Somebody made a 3D representation of the save icon.

Kelly: Exactly!

Matt: Yeah. Well, and that’s part of Baudrillard critique of reality. So very famously, he talked about humans are creating a hyperreality around ourselves. And the image that always sticks with me from Baudrillard is he talks about Disneyland, and he’s talking about how Disneyland encapsulates the idea of hyperreality. So he says, hyperreality is humanity’s attempt to divorce itself from nature and to do so in order to exert control over the environment in which we live. And it builds on Heidegger’s idea that we commoditize nature, right? We turn nature into raw material, and then we create something new with that. And for Baudrillard, we don’t hike in the mountains anymore. We might think we do, but we’re always staying on a trail, and we’re following all these signs. We’re living a very carefully curated experience of nature. And to him, Disneyland is this par excellence, right? Because here, not even the mountains are real. They’re made out of plaster and fiber glass, and the plants are plastic or carefully selected and put in little pots that are hidden inside of plastic pockets in the side of the fake… What’s the mountain roller coaster ride at Disneyland? Whatever that is.

And that idea is very much what we’re doing with software, I think, as well. We are creating a hyper, maybe a hyper, hyper reality in this case that that is just utterly divorced from, or in Baudrillard’s sense utterly divorced from the laws of nature that are scary. And we’re not the laws of nature. It’s nature itself, right? It’s the terror of the storm coming over the mountain when you realize all you got on is a raincoat, right? And the snow is going to start dumping down on you. Sorry, it’s Colorado and it’s cold right now. The snow is going to dump down on you, and you’re going to be stuck in nature, and there’s nothing you as a human being, solitary in nature, can do about it. That’s the scary part. Baudrillard is saying, we can build ourselves a nice comfy… I wish I could remember the name of the ride, Matterhorn. We can build ourselves a nice comfy Matterhorn Mountain at Disneyland, where the snow is fake, and the trees are curated, and I can go around in a two and a half minute roller coaster ride and come out exhilarated and yet unscathed.

Kelly: Then I can do my drinking-

Matt: It appears in some ways, that’s what we’re doing.

Kelly: Then I can go do my drinking around the world… In Epcot. It’s that very creative and very selective idea of the world as well that you can access. I want to go on the record as being like, I am not the one who introduced Baudrillard into this conversation because it was not me. I have a book where I talk about Baudrillard quite a bit because I talk about…

Matt: Oh, really?

Kelly: Yeah. So like what you’re talking about, in terms of our understanding of the Middle Ages. The way people understand the Middle Ages now is not even through this reality that you can access, even if it’s even possible. It’s like there’s something — this is a little old-school example, but say World of Warcraft or all these type of almost like video games or other experiences that you have that create this understanding of what they think the Middle Ages are, even though they’re not really… they’re not even saying they’re based on the Middle Ages, which is fascinating. And we’re going to move away from Baudrillard, and I don’t want to, just because-

Matt: I was going to go, I just finished the Wheel of Time, and it took me the entirety of last year to read the Wheel of Time.

Kelly: Like all of the books? All of them?

Matt: Yeah. I finished the 14. 14,000 pages, whatever that is. And this is like — how I decompressed at this point is like, okay, I’m going to completely break with reality. But it was such a good example because Robert Jordan is like, plucking out little bits of different mythologies and different chunks of history from the Eastern and Western world and gloming them all together and inventing a world. And at some point you start to recognize this. And I know he’s toying with me, right? I know he’s like, oh, this is Arthurian legend. Oh, wait, this character represents Thor. Oh, wait a minute. And down from the symbol to the [unintelligible] is drawn out of Daoist. So now I’m resonating here. I can see the Baudrillardian undertones in something like this where you’re constructing an environment that at once feels familiar, again, like skeuomorphism in our shopping cart example, right? But at the same time feels exotic and new and exciting. And none of the day to day trials and travails of being a peasant in a field come into play in any of these 14 books.

Kelly: So it turns to something where it’s like, I can get the book on tape or the audiobook and put it on my iPod and go for a run and basically could completely get out of your everyday life.

Matt: Yep, yep. And that’s why we do it, right? Because it helps us. I don’t have to think about that email I shouldn’t have sent or what I’m going to do tomorrow and how I’m going to make it through those meetings, that thing. It’s an escape. Reading about the feudal peasantry would probably not at all be an escape for me. I don’t know about you.

Kelly: Some of us have chosen weird paths in life, but I feel I agree that for most people, that’s probably not the version of the medieval that they want in order to escape from their day to day.

But getting back more to your day to day, I want to make sure we do talk a little bit about WASM, simply because I feel like the overlap of these two things, philosophy and WASM, they both fascinate me. I want to make sure we talk about both. For folks who don’t already know what WebAssembly is, and I feel like some people are probably listening this for the WebAssembly, and they’re like, finally, we got through all this philosophy stuff. There are other people who are here for the philosophy or here from the academic perspective who might not understand WASM at all. How would you explain that to them in a nutshell?

Matt: So WebAssembly, in a nutshell, is very boring idea that gets intriguing the longer you stare at it, right? Very much like philosophy. In essence, when we write software, we compile it to a particular underlying architecture. If I’m building software for my Mac, I compile it for my Mac. If I’m building software for my Windows machine, I compile it for Windows. WebAssembly, the core idea is that you should be able to write code and compile it to a particular binary format, an executable format that can run in a variety of different places. That piece is by no means brand new or startling or anything like that because Java has done that in the past. .Net has done that in the past. But WebAssembly took a very different security posture. And that’s what makes it interesting. I know I just said security and interesting, but bear with me for a moment. I swear. So WebAssembly was designed originally to run inside of a web browser. So if you’re writing code for your web browser, you’re pretty much writing it in JavaScript. JavaScript is a great general purpose language, but is not a panacea of a language.

You might want to do some heavy duty mathematical computing that needs to happen fast. JavaScript doesn’t tend to be a great language for that, whereas languages like C or Rust, they tend to be much better. Or another way to look at the same problem would be to say, also, if we’re going to do everything in JavaScript, what do we do with all that old C code that’s lying around? And so out of these kinds of difficulties, a group of individuals from, first Mozilla, but then from Mozilla, the IE team at the time at Microsoft and the Safari team at Apple and the Chrome team at Google, they all got together and said, okay, we can define a common binary format that can run in the browser and we’ll make it so that lots and lots of different languages can compile to that format. And then we can use the right language for the job, and we can reuse some of those old C libraries from JavaScript and do some cool and exotic things like that. So the technology had to accomplish a few things. In order to be useful in a browser. First one is security.

What you do not want to happen is to download some binary off the Internet and have it get all your passwords and send them off to some sketchy website somewhere or do anything like that. So you need a really good security sandboxing layer. And you need one in which the person writing the outside code in the browser has some abilities to control what the security boundaries are, but that ultimately there’s an outer impermeable boundary that prevents either the JavaScript code or the binary code from getting at your system and doing nefarious things. So that was feature number one. Then there’s this performance feature. It’s got to be really fast because we are very impatient. And if our web pages take a long time to load, we go and shop somewhere else. We need this cross-architecture, cross-platform so that I compile it once and it can run on an arm architecture, an Intel architecture, whatever. Same with operating systems. So it had all these features that made it a really good fit for a browser. Now, I came I hear this from the cloud world where I was going, what do we do in the cloud?

The cloud is basically least compute. We give you… I was at Azure at the time in Microsoft. And the thing is we give you a computer or a slice of a computer or something that you don’t get really any access to. It’s sitting in a data center somewhere, somebody else is maintaining it, but you get to lease the computing power, the CPU, the memory, the storage, and so on. And we’d already built a couple of technologies in that space. There’s virtual machines that are like the big run the operating system from kernel all the way to application with everything in between these massive images. Then we had started building this container ecosystem, which I’m very familiar with, having come from the Docker and Kubernetes space. And that’s like you take this little pie-shaped slice of the operating system and you bundle it up and you can move it around and run that in places. But we’re looking at this problem space where we’re going, what we really need is a third way. So we got a heavyweight virtual machine class, a middleweight container class. We need some lightweight class where we’re going to be able to move these applications around inside of the data center.

Because, again, at Microsoft, we’re thinking, how do we get your compute onto the cheapest possible, but still performing unit of compute? We got an eighth of a computer sitting over here doing nothing. How do we occupy that just long enough to pay a couple of bills and then we’ll free it up and lease it to somebody else for something else? And so that was the original approach to this. And WebAssembly ended up being a really good fit for this problem because the security model is there, which is the number one for all cloud computing. You do not want to lease your computer to somebody and have them be able to use that as a way to attack you or attack one of your other customers. And so security was checked. Performance was the big one that we were after. And then this idea of cross platform, cross architecture meant that we could take a platform independent binary. And if we had a chunk of a Windows server running on an Intel machine available, we could run it there. But if that became unavailable, we could run it on that Linux one on an arm processor.

Essentially, we could shift the workloads to the most cost-effective place to go. And that’s really what got us going on WebAssembly. And the more we got into it, the more we thought, oh, this is actually a very, very powerful technology that can solve a wide variety of problems. So about 10 of us left Microsoft, joined one non-Microsoft person, and we started Fermyon in late 2021 with this idea that we wanted to build out this vision of this third cloud computing.

Kelly: I feel like we just got the first five minutes of the intro to WebAssembly course right there. I feel like your former professor experience just came out right there because that was just beautifully said. That’s a really good background, the intro to WASM and a little bit of background about Fermyon. In addition, WASM, WebAssembly is something Fermyon is all about. But what are you doing with it? What are you making and building for people?

Matt: So with any technology, when you’re introducing an infrastructure technology, you have to solve two major problems. One is you’ve got to fill a void, right? And say, okay, here’s the thing you couldn’t do before. Here’s a way of doing it that’s going to be cost effective and stuff like that. And then the second part of that is you have to make it easy for people to build things that use that technology. If the technology is too esoteric or too difficult to use, people will simply say, regardless of the trade offs, this is not worth my time, or regardless of the benefits, it’s not worth my time to make the trade offs of complexity. So for us, the big problem we were trying to accomplish was very much this idea that this technique called serverless computing has risen over the last several years. And the way I think about it, and this is probably, you’ll get a dozen different answers from a dozen different people.

Kelly: Or two dozen answers from a dozen different people.

Matt: I mean, this is what philosophy is, so I’m totally comfortable in this situation. But also philosophy and me being able to provide my own definition with some degree of rigor or pretend rigor. And to me, serverless computing really has to do with the programming style that a developer where they say, okay, instead of writing a long running server process that I’m going to start up and it’s going to run for days, weeks, months, maybe even years, I’m going to write just a serverless thing, a handler that takes one request and does one unit of work and returns one response and then shuts down. So the lifespan of this goes down from days, weeks, months to milliseconds, seconds, maybe minutes. I’m just going to do a chunk of processing and shut down. Now, there are some very delightful aspects of that as a software developer, and we’ll get to that in a second. But when it comes to the operational aspects of this, because you’re only running something for a small chunk of time, then suddenly when you’re allocating your big cloud into little chunks, you’re only allocating chunks for seconds or minutes at a time and not four days, months, years at a time, which means where most services in the world are sitting there 80 % idle or more.

So that’s 80 % of that space is just the server process sitting there running, waiting for request to come in. Now, suddenly, we have a way of computing in which we don’t have to deal with the idle time. We don’t have to allocate resources resources to sit idle. We can basically just allocate resources to handle a request and then free up the resources, which means, long story short, we can pack a whole lot more applications, orders of magnitude, more applications per physical piece of hardware somewhere in the cloud or a physical piece of hardware somewhere on premises for you. And consequently, cut down cost, cut down energy consumption, cut down the amount of natural resources we need to carve out of the world and turn into chips and and boards and wires and things like that. And so it becomes a far more efficient way of doing things. And that was really the heart of what we were after when we first started exploring, is there a third way to do this cloud computing thing? And WebAssembly was ticking those checkboxes. And so that’s the problem we set out to solve. How do we just absolutely nail this efficiency store?

How do we take cloud from the behemoth and start to trim it down and say we can right size the way that we estimate our cloud usage to the amount of applications that we’re running and the amount of space they need in a better way. That was a very convoluted way of saying, we just want to make everything a lot more efficient, a lot cheaper, and ultimately start to ease up on our usage of electricity and natural resources and things like that. So that was part A. Then part B, we had to build a really good developer tool that made it easy for people to build this. And the serverless paradigm is nice because it’s less code for developers to write. And if we could build a really good user-facing tool, which is what Fermyon’s Spin platform is, then developers spend less time creating new projects, less time coding, and less time deploying. And that is a net win for developers. They experience more productivity, faster, and with less ongoing stress.

Kelly: Happier developers is always a good thing.

Matt: That’s it. Yeah, that’s all I’m really after. Happier developers.

Kelly: All right, so we talked philosophy. We’ve talked WebAssembly. If we were going to do a WebAssembly and philosophy book, which I don’t know if actual philosophers hate those, but as someone who had to teach, I don’t know, Game of Thrones, having Game of Thrones and philosophy as a resource of people writing on that topic was always interesting to me. What top three things would you have in your WebAssembly and philosophy book?

Matt: Oh, wow, I love those whatever and philosophy books, because essentially you’re getting a philosopher with all that background in one particular niche coming in and connecting something you’re familiar with. And I think one interesting way to explore the cross platform thing, right? So the idea is you take a language, you compile it to a binary format, and you can run that on a variety of different systems. There’s something very Kantian about this. So probably the world will never see another philosopher like Kant. He was an incredibly good thinker. He made some outstanding contributions to philosophy, some really marvelous mistakes that will keep us all busy trying to figure out where this went sideways. This is like a philosopher’s dream, right? Somebody who does, who produces a huge amount of very good stuff that is also somewhat problematic. But one of the things he gets at ultimately is, look, we make a lot of statements about reality, and we need to do this. There’s a sense in which this is how humans survive in the world. There’s a sense in which we need an ethical system. We need all of these things. But there’s some incommensurability in the cosmos.

There’s some incommensurability in the construction of the universe in metaphysics that we as humans are just, if nothing else, not cognitively equipped to understand. There’s something about the universe we just can’t ever get at. And so WebAssembly actually ends up being a really interesting way to approach this, because essentially you’re saying we can build different languages, Perl, Python, C, Java, whatever. We can compile them to the same format, which is essentially something that in linguistic philosophy is an ongoing debate and has been for a long time. Can our different languages, at the end of the day, can you boil them down to the same semantics and get approximately the same meanings out of different languages? And there’s tons of literature on this. And if you look at software development, you can actually see this play out in real time as people try and say, how do I do this in Python? How do I replicate this in Java? And sometimes the answer is, well, you can’t really replicate it in Java, but here’s how you get essentially the same thing. And in language and meaning, in philosophy of language and meaning, you’re really going after the same thing.

Do we hit incommensurability in the language aspect of things where two languages can’t ever connect? But WebAssembly says to us, okay, we might be able to get down to some common base level binary format, some base level set of instructions that is consistent, whether you’re writing it in Java or Python, and you can connect a Java thing in a Python thing and they can work together. But you can still do this without knowing the underlying processing process or architecture, which is essentially like this bridge saying you’ve got a logic layer here that somehow can’t connect with the physical reality underneath it. And so there’s somewhere in there, and this is totally raw and unfiltered, you’re getting like, Matt, thinking off the top of his head about what he talked about. But there’s something there that I think, oh, this would be so much fun to write a WebAssembly and philosophy article about what Kant was saying about the limits of human knowledge and the cosmos itself or the world itself. I think that would be really interesting.

Kelly: I feel like there are people out there who… You started with being like, We’re never going to have another philosopher like Kant. And they’re like, Thank goodness. And now it’s like, We have to talk more about Kant. Anyway, interrupting again.

Matt: Kant is the one… The best advice I ever got for reading Kant was, get yourself a ruler. And when you’re reading Kant, take the ruler and put it under the line you’re reading and scoot it down physically line by line as you read because it is totally… I mean, this guy wrote sentences that were a page long. It is just like, and I’m not even exaggerating here. He literally wrote sentences that were a page long. It’s so frustrating to read. But yes, I’m sorry. That was grad school me surfacing again. I’m panicking already. I’m thinking, did I miss an exam?

Kelly: Any other must haves for your WASM and philosophy approach?

Matt: Now, I’m so absorbed on that one that I’m thinking, oh, I still have two more. Would I write something on ethics? Would I write something on — I don’t know. I’m going to have to stick with the Kant answer on this one…

Kelly: Put some ethics in there…

Matt: …and leave the two chapters for somebody else.

Kelly: Be like, this is my chapter. Your chapter will definitely be on that. And we’ll have to get some other folks to fill in some of the gaps there.

Matt: Yeah, yeah. And I shouldn’t veer off too far into philosophy of language because it’s not a subject I was ever much of an expert in. But the more I work on software programming languages, the more I think, oh, that was so fascinating. I wish I’d spent more time reading a structureless post-structuralist material and bulking up on that. So maybe someday I’ll switch back and do that again. I don’t know.

Kelly: There are people out there who think about that. I know this because they’re out there. They’re doing that work for you, I feel like.

Matt: One thing that’s cool is that when I was in grad school, years ago, computers and philosophy was a foreboden topic. It was not really the thing that, again, because we were trying to keep that critical distance between the stalwart age old source of truth for all sciences and this new finagly computery thing over here. And now I think that’s changed quite a bit in the last five or 10 years. And I think this is a very fertile area of research in a wide variety of disciplines, but in philosophy in particular.

Kelly: Very much so. And Matt, I think we could talk about this forever, but I’m going to say we’re at time because I know we both have other places that we need to be. Thank you so much for taking time to speak with me today about WASM and philosophy and just other completely random things related to those topics.

Matt: This is my favorite thing to do, right? This is the way I get all jazzed up. Sometime we’ll just have a show where we read Baudrillard lines back and forth and compare interpretations.

Kelly: We’ll have an audience of three. But they’ll also be like, these are the lines you should have read. Why didn’t you read those lines?

Matt: But we’ll buy you all drinks at the end. So maybe we can bolster the audience up to five with a…

Kelly: Wine and cheese! There will be wine and cheese!

Matt: Wine and cheese! Yeah. Might take us a long time to figure out which cheese, but yeah, it sounds good. Thanks again for having me. This was just fantastic.

Kelly: Yeah, likewise. And with that, the docs are out.

 

More in this series

The Docs Are In (15)