Latest

May
31
A cartoon intro to DNS over HTTPS

A cartoon intro to DNS over HTTPS

This privacy standard was a critical strategic push for Mozilla, and the CTO called in a favor for me to
Mar
28
ES modules: A cartoon deep-dive

ES modules: A cartoon deep-dive

In early January 2018, I attended my first WebAssembly CG meeting. At the time, there was no integration between the
1 min read
Mar
18
Making WebAssembly better for Rust & for all languages

Making WebAssembly better for Rust & for all languages

Rust was the first language that really embraced WebAssembly and fully incorporating WebAssembly compilation into their toolchains. Read Making WebAssembly
Jan
17
Making WebAssembly even faster: Firefox’s new streaming and tiering compiler

Making WebAssembly even faster: Firefox’s new streaming and tiering compiler

During this time period, Firefox had a major lead and just kept moving the goal posts in terms of WebAssembly
Nov
17
Entering the Quantum Era—How Firefox got fast again and where it’s going to get faster

Entering the Quantum Era—How Firefox got fast again and where it’s going to get faster

This post was listed in the top-20 posts of all time on Hacker News when it first came out. It
Oct
10
The whole web at maximum FPS: How WebRender gets rid of jank

The whole web at maximum FPS: How WebRender gets rid of jank

The Servo project at Mozilla did some really exciting work maximizing use of the GPU for performance gains. This article
Aug
22
The style engine taking some styles from the CSS and adding them to the DOM tree as computed styles.

Inside a super fast CSS engine: Quantum CSS (aka Stylo)

This article explains how all of the pieces of the browser's rendering engine fit together. It also talks
Jul
19
A robot wearing a WebAssembly T-shirt standing between an instruction manual of compiled code and a box of imports

WebAssembly modules, memories, and table imports series

In the early days, there was a lot of FUD about the memory access that WebAssembly provided. People thought that
1 min read
Jun
14
An encoder ring coding the letter "H" into the number 72 and storing it in memory.

Memory management, Shared ArrayBuffers, and Atomics series

Without the component model, WebAssembly requires a lot more direct sharing and manipulation of memory. This series was intended to
Feb
28
The logos of the four major browsers, holding hands in victory

A cartoon intro to WebAssembly series

This series was published just as browsers were beginning to turn WebAssembly on by default. It was the beginning of
1 min read