Building a Better Web
June 11–12, 2018: Training
June 12–14, 2018: Tutorials & Conference
San Jose, CA

What is WebAssembly good for?

Sasha Aickin (Self-employed)
9:00am–9:40am Wednesday, June 13, 2018
Future JS and Functional
Location: 210 B/F Level: Intermediate
Secondary topics:  Developer Experience Track: Tools, Platforms, and Techniques, Technical

Who is this presentation for?

  • Frontend developers, web developers, and Node.js developers

Prerequisite knowledge

  • A working knowledge of JavaScript and web app development
  • Experience with a lower-level compiled language (useful but not required)

What you'll learn

  • Understand which classes of problem are good fits for WebAssembly and, crucially, which are not

Description

WebAssembly holds great promise for the ability to create faster and more reliable dynamic websites, and it is now shipping in all major current browsers. The truth on the ground, however, is a bit more complicated: WebAssembly doesn’t natively support garbage collection, interoperation with JavaScript can be painful, and performance doesn’t always match up to expectations.

Sasha Aickin details the strengths and the limits of WebAssembly through the lens of a medium-sized project that has been ported from JavaScript to WebAssembly using Rust.

Topics include:

  • WebAssembly file sizes and optimization
  • The expense of JavaScript interoperation
  • WebAssembly performance differences among browsers
  • Consistency of WebAssembly performance
  • What is WebAssembly bad at?
Photo of Sasha Aickin

Sasha Aickin

Self-employed

Sasha Aickin has been working in the software industry in San Francisco for nearly 20 years. His most recent position was as the CTO of Redfin. He is currently a React core team member.

Leave a Comment or Question

Help us make this conference the best it can be for you. Have questions you'd like this speaker to address? Suggestions for issues that deserve extra attention? Feedback that you'd like to share with the speaker and other attendees?

Join the conversation here (requires login)