19851990199520002005201020152020
fig #1: my career aspirations over time

Developer. Podcaster. Nerd.

I’m a software engineer specializing in complex UI for web apps. I love all things frontend, but I'm also excited by the potential of new technologies (I'm looking at you, LLMs) to transform our relationship with data.


Where to start

Don't know much about me? I'd say these posts are the most "representative" of the work I like to do. They're all deep-dives into something JavaScript-related, and follow a loose "tutorial/explainer" structure.

How does cosine similarity work?

Cosine similarity measures the angle between two vectors — the dot product divided by the product of their magnitudes. Here's what each part of the formula does.

Popular posts

These are the top performers from a page-view standpoint. (a.k.a. what Google thinks is my "best" content... )

  1. What is a decibel, anyway?

    A decibel is a ratio, not a fixed unit. That's why a jet engine can be '120dB' while a mixing desk's loudest reading is 0.


More about me

I tinker with all sorts of things but my current interests are AI-powered data processing, data-visualisation, and modular synthesis.

I like building things

I enjoy building funny little interactive charts, and lately I've gone deep into the world of Eurorack modualar synths (I love making music without computers). But first-and-foremost I make things for the web.

I work as a lead software engineer at J.P.Morgan, and was previously in charge of frontend development at Cronofy. I co-host the (currently dormant) A Question of Code podcast and I spend most of the day glued to the Fediverse at @thomashazledine@mastodon.social.


Signup to my newsletter

Join the dozens (dozens!) of people who get my writing delivered directly to their inbox. You'll also hear news about my miscellaneous other projects, some of which never get mentioned on this site.