WASM

How I Was Convinced to Take Rust Seriously

In the previous article I described a path from dynamic languages toward TypeScript, and from TypeScript toward stricter compiled languages. Rust is the end of that path — but it took some convincing to get there, and the thing that convinced me wasn't the systems programming story. It was the frontend.

The TypeScript Ceiling

TypeScript is an extraordinary tool within its constraints. The type system is expressive, the ecosystem is vast, and the developer experience — particularly with modern tooling — is genuinely good. But TypeScript erases at runtime. The types you write are a compile-time overlay on JavaScript; they do not exist when the code executes. The compiler can tell you when your model is inconsistent, but it cannot prevent every class of runtime failure.

Read more →

SQLite in 2026

I wrote my first SQLite article in 2011 while debugging an Adobe AIR app. The problem was a quoting edge case; the solution was a one-liner. SQLite was a curiosity — a file-based database you used when you didn’t want to run a server.

Fifteen years later, SQLite is having a moment that few databases get to have. It’s not just embedded tooling anymore. It’s in the browser, at the edge, in production analytics pipelines, and increasingly, in vector search. The same engine, radically new contexts.

Read more →

WASM Tooling — A Practical Cheat Sheet

The WebAssembly ecosystem has accumulated a solid set of command-line tools that don’t get surfaced well in most introductory material. Tutorials tend to focus on one language path — Rust via wasm-pack, or Go, or Emscripten — and leave the broader toolchain unexplained. This is a reference for the tools I reach for regularly: inspection, compilation, optimisation, and runtimes.


The Text Format — WAT

Before the tools: WASM has two representations. The binary format (.wasm) is what the runtime executes. The text format (.wat) is human-readable S-expression syntax — the assembly language of WebAssembly. Understanding WAT is useful for debugging and for writing minimal WASM by hand.

Read more →
Cloudinary DAM

Cloudinary DAM

I was lucky enough recently to implement Cloudinary as a DAM solution on a project. A DAM being short for a digital asset manager. This is a type of cloud service typically used in the media and entertainment sectors. They’ve been around for decades but SaaS solutions have opened up, offering these services to the wider website consumer market. This enables sites running on Wordpress or Mageneto (or any CMS) to pick up an off the shelf solution. There are real SEO and User Engagement benefits to integrating one into your asset pipeline. Lets dig in to what Cloudinary has to offer and why this can help a website.

Read more →