The cost of convenience
It is tempting to build abstractions so developers have to do less and build more. However, this can easily end up causing frustrations with developers if not done right.
WebGPU — All of the cores, none of the canvas
WebGPU is an upcoming Web API that gives you low-level, general-purpose access GPUs.
My approach to coding interviews: Optimize for iteration
A big part of interviews is development velocity and agility. And that can be optimized for.
<video>, HTTP range requests & WHATWG streams
Range requests allow a <video> tag to seek through a video file. Adding support to your dev server is a fun challenge and taught me some interesting things about WHATWG Streams.
Is WebAssembly magic performance pixie dust?
Add WebAssembly, get performance. Is that how it really works?
- … all posts
A quick experiment with MatterJS to visualize a submarine being controller by a PID controller.
Film & Developer comparison
In this YouTube video, Andrew compares how different black-and-white film developers affect different black-and-white film. He kindly provides contact sheets for inspection, but I really wanted a way to properly inspect the differences.
Demo accompanying the Ditherpunk article which dithers an image of your choice with a bunch of dithering algorithms.
WhatWG Stream Visualizer
A visual “interface” for WhatWG streams.
Renders images as a spiral with varying wobblyness (technical term), so it looks a bit like a vinyl record.
- … all experiments