Course Overview

What this WebAssembly (Wasm) Programming course covers, how to use it, prerequisites.

A structured, hands-on course on WebAssembly. It runs from what Wasm is and how its binary/text formats work to hand-writing WAT, the JavaScript API, compiling C/C++ (Emscripten), Rust (wasm-bindgen), AssemblyScript, Go, and other languages to Wasm, threads and SIMD, WasmGC, WASI and the Component Model, server-side and edge Wasm, plugin systems, performance, debugging, security, and production deployment.

Covers WebAssembly 2.0 (W3C Recommendation) and WebAssembly 3.0 features (GC, memory64, exception handling, tail calls, typed function references, multiple memories, relaxed SIMD), plus WASI 0.2 / 0.3 and the Component Model. Wasm evolves through phased proposals, so check webassembly.org/features for current browser and runtime support.

Course Overview

Web developers, systems programmers (C/C++/Rust/Go), backend/cloud engineers, game developers, plugin/platform builders

JavaScript basics (for the browser parts), plus one compiled language helps (C, Rust, or Go). Comfort with the command line.

~80–100 hours (self-paced), 9–11 weeks A modern browser (Chrome/Firefox/Safari/Edge), Node.js 20+, WABT, Binaryen, wasm-tools, Emscripten SDK, Rust (rustup) + wasm-pack, Wasmtime, VS Code with WebAssembly extensions

WebAssembly Studio-style playgrounds (wasmfiddle, WAT playgrounds), Wasm by Example, Exercism (WebAssembly track uses WAT)

Foundations (WAT, memory) → JS integration → Compile languages → Advanced features → WASI & Components → Applications → Production
(1–9)                       (10–14)          (15–20)              (21–28)             (29–33)             (34–39)        (40–48)