Chapter 1. Meet WebAssembly


This chapter covers

  • What WebAssembly is
  • The problems that WebAssembly solves
  • How WebAssembly works
  • What makes WebAssembly secure
  • The languages you can use to create a WebAssembly module

When it comes to web development, one thing that’s top of mind for most web developers is performance, from how fast the web page loads to how responsive it is overall. A number of studies have shown that if your web page doesn’t load within three seconds, 40% of your visitors will leave. That percentage increases for every additional second it takes your page to load.

How long it takes your web page to load isn’t the only issue. According to one Google article, if a web page has poor performance, 79% of visitors say they’re less likely to purchase from that website again (Daniel An and Pat Meenan, “Why marketers should care about mobile page speed” [July 2016],

As web technologies have advanced, there’s been a push to move more and more applications to the web. This has presented developers with another challenge, because web browsers support only one programming language: JavaScript.

1.1. What is WebAssembly?

1.2. What problems does it solve?

1.3. How does it work?

1.4. Structure of a WebAssembly module

1.5. WebAssembly text format

1.6. How is WebAssembly secure?

1.7. What languages can I use to create a WebAssembly module?

1.8. Where can I use my module?