Talks to Watch

Keynote: What is a Component (and Why)? - Luke Wagner, Distinguished Engineer, Fastly

7K views · Sep 11, 2023 · 29:51 · 3 HN recommenders · 7 mentions · discussed 2024–2026

Luke Wagner of Fastly explains what a WebAssembly component is, how it relates to familiar concepts, and what the Component Model enables. It emphasizes security, composability and modularity.

Why Hacker News points people here: HN recommends it as the best starting point for understanding the Wasm Component Model and WASI direction, straight from its designer.

“I thought this keynote presentation[0] by Luke Wagner at Wasmcon was great and covered it very well.”HN comment, 2024

What Hacker News said 7

RecommendsboomskatsJan 2024

“I thought this keynote presentation[0] by Luke Wagner at Wasmcon was great and covered it very well.”

Great, thorough explanation of the Wasm component model by Luke Wagner.

Full comment

I thought this keynote presentation[0] by Luke Wagner at Wasmcon was great and covered it very well. I also found the WIT Format design doc[1] in the component model repo to be the most complete explanation of how it's all going to hang together. [0]: this video [1]: link

in “WASI 0.2.0 and Why It Matters” · view on HN
RecommendsjauntywundrkindJan 2024

“The WasmCom keynote What is a component? (and why?) by Luke Wagner is also a great intro.”

Great intro to capabilities and the component model.

Full comment

This does such a good job laying out the real fundamentals of what's happening. Capabilities model, component-model; it's well covered and nicely tied together. The WasmCom keynote What is a component? (and why?) by Luke Wagner is also a great intro. this video

in “WASI 0.2.0 and Why It Matters” · view on HN
RecommendsjauntywundrkindJan 2024

“there's a pretty damned fine talk my Luke Wagner that covers wasm components & the promise.”

Covers wasm components and their cross-platform promise.

Full comment

Now that there's a canonical ABI as specified by component-model, it seems like the good work can start. As recommended elsewhere in the comments, there's a pretty damned fine talk my Luke Wagner that covers wasm components & the promise. He talks about cross-platform was 18m35s in: this video

in “WASI 0.2.0 and Why It Matters” · view on HN
RecommendsjauntywundrkindMay 2024

“Luke Wagner has a talk going through WASI 0.2 that's pretty excellent.”

Walks through properties the component model enables, like composability and sandboxing.

Full comment

WASI preview1 modules aren't very modular. You can't compose them. All you can do is one shot compile & bundle the world into one massive module. You can't use that module to power another module, it basically has to be standalone. Luke Wagner has a talk going through WASI 0.2 that's pretty excellent. The title is What is a component (and why)? , and we go step by step through the properties component-model enables: a Standard Portable Lightweight Finely-Sandboxed Cross-Language Compositional Module . You get basically none of these without component-model. this video The properties are amazing. Not only do we get Cross-Language, not only do we get composable, but ideally we get very very lightweight sandboxed processes that can safely re-use modules already loaded by the runtime. This could be such an incredible way to sandbox actively, with a base of supportinginrsriss dwarfing anything computer science has done before. The wasm view here has been so shortsighted & brutal. Once again, the hype cycle has gotten big enough that a lot of people are very angry & actively trying to tear down & discredit. Like systemd, like K8s. With not even a passing attempt to show balanced views in the process, no nods to the possible or good, just remorseless total war. This is the famous typical dripping sense of disdain, arising again in angry stirrings, here now to rage against component-model. Holy shit yes is it ambitious and hard. Yes you should be afraid of failure, of this crew not pull

in “'WebAssembly Is Finally Usable, Almost'” · view on HN
RecommendshectamanJun 2026

“Luke Wagner's keynotes are the best place to start”

Architectural direction straight from the source.

Full comment

I don't think it's fair to say this work has happened in the shadows. I work on CNCF wasmCloud, and I know how hard we try to make this content available. - Many standing meetings organized around SIGs, all on the public community calendar: link - A dedicated Zulip: link - Conferences organized around exactly these topics: Wasm Day, WasmCon, Wasm I/O, and the Bytecode Alliance Plumbers Summit - CNCF projects: wasmCloud, Spin - Blogs, many with recordings, summaries, and transcripts: link , link , link If you want the architectural direction straight from the source, Luke Wagner's keynotes are the best place to start: - "What is a Component (and Why)?" (WasmCon 2023): this video - "The Path to Components": link - "Towards a Component Model 1.0" (Wasm I/O 2026): link I mean this, though - what else would you like to see to try and make the content and process more accessible? Are there communities that are doing this really well that we could use for inspiration?

Cites ityoshuawAug 2025

“If core WebAssembly is a portable instruction format, WebAssembly Components are a portable executable/linkable format.”

Cited as the explanation of Wasm Components as a portable executable format.

Full comment

We are more or less trying to solve this exact problem with Wasm Components [1]. If core WebAssembly is a portable instruction format, WebAssembly Components are a portable executable/linkable format. Using them is unfortunately not yet quite as easy as using repr(wasm)/extern "wasm". But with wit-bindgen [2] and the wasm32-wasip2 target [3], it's not that hard either. [1]: this video [2]: link [3]: link

in “Rust in 2025: Targeting foundational software” · view on HN
CriticalteteJun 2026

“It should not be Systems Interface but Standard Interfaces”

Full comment

> - "What is a Component (and Why)?" (WasmCon 2023): this video At 18:00 the speaker states something like "It should not be Systems Interface but Standard Interfaces" which honestly sounds like a different project. As an implementer or even as just a user in general, can it be trusted that tomorrow it isn't something completely different? Seems like an odd standard to follow.