Language: English
2023-07-30, 14:50–15:20 (Asia/Taipei), TR 213
This talk covers integration patterns of WebAssembly through backend software, like CLIs and side cars. It shows how to embed WebAssembly into Go applications, and what to watch out for when programming. When we’re done, you’ll have a good sense of how WebAssembly fits into what you’re working on.
WebAssembly is a buzz word appearing everywhere, not just in the browser. We see it applied in edge functions handling our HTTP traffic and a way to run Python in Go. How it all works is less discussed, especially outside demo projects. This session is about WebAssembly in practice, given by an open source maintainer of a popular WebAssembly runtime written in Golang, detailed with real projects in use today.
This session covers concrete open source practice of WebAssembly, from the backend perspective. What it is and how it works is introduced through practical integrations starting at service, container, and finally programming abstractions. No example used is demoware, and all are integrated into programs written Go. These include popular tools such as Dapr, SQLite, Trivy and several others. You’ll learn the difference between your Go runtime and the third party wasm you allow it to run. You’ll understand which areas are routinely problematic and why. We’ll conclude with developments in the Golang ecosystem, both the wazero runtime and the programming language, both now and the near future
The goal of this talk is to inform, not to promote. Whether you begin your practice now, next year or not at all, you’ll have sound reasons for your decision.
Advance
Target Audience –Developers with interest in WebAssembly. Specifically Go developers will see practice.
Adrian is an engineer working at Tetrate on Open Source projects. He’s been a routine contributor to open source for over a dozen years. Lately, he spends most of his time on wazero: the zero dependency WebAssembly runtime for Go developers. His past notable project work includes Zipkin, OpenFeign, and Apache jclouds.