11-04, 15:10–15:40 (US/Central), ROOM 2
This talk will cut through the hype of WebAssembly and teach you the fundamentals. You'll learn the basics of what a WebAssembly module is, how it is executed, and how they are created. This information will help you whether you're using WebAssembly in the browser, on the server-side, or in an embedded use case.
WebAssembly is garnering a lot of excitement because of it's unique combination of portability, security, and performance. We're seeing it used widely across browser, server-side, and IoT use cases. But what actually is WebAssembly? This talk will crack open the hood of WebAssembly and help demystify what is going on inside at a beginner friendly level.
The core of the talk will focus on understanding what a WebAssembly module is and how it is executed. We'll explore the text and binary representations of a module; the data layout within a module; and understand the basics of how its bytecode instructions operate a stack machine.
Then with an understanding of what a WebAssembly module is we'll take a look at how languages are compiling into WebAssembly and the types of runtimes that are actually executing WebAssembly.
Caleb Schoepp is a software engineer at Fermyon. Before working at Fermyon he interned at Microsoft three times on different teams and at the startups UnifyID and Resemble AI. Caleb has experience building on public clouds, mobile apps, full stack web applications, and machine learning integrations among other things. Outside of work he enjoys playing guitar, spending time with family, and learning to play hockey. Caleb holds a BSc in Computer Engineering from the University of Alberta. He lives in Edmonton, Alberta.