All Articles

  1. June 19, 2026

    Welcome to Mars. Your LCP is 6 Seconds.

    Measuring web performance without lying to yourself.

  2. May 25, 2026

    Your Design System Needs An MCP Server

    One of the best investments you can make for your design system right now is a Model Context Protocol (MCP) server. As AI models evolve they are becoming increasingly more capable, but using them effectively comes at a cost.

  3. March 19, 2026

    Gathering Hyrox Race Insights with Python

    Using Python to analyse Hyrox race data and gain performance insights.

  4. March 13, 2026

    Headless Storybook with Lit

    Using the Component Story Format and the Custom Elements Manifest to mirror Storybook stories in Next.js for server-side rendering validation.

  5. September 21, 2025

    Connecting the Custom Elements Manifest to Figma Code Connect

    Automating the generation of Figma Code Connect files using the Custom Elements Manifest and Figma's REST API.

  6. March 14, 2025

    F45 Broke Their Strava Integration So I Wrote My Own

    They broke my beloved Strava integration, and I'm not happy about it. Let's fix it.

  7. February 19, 2025

    Documenting Web Components With Storybook

    In this article, I want to discuss how you can easily document your Web Components with Storybook so that your documentation provides a good user and developer experience.

  8. October 11, 2024

    Improving Code Quality with Linting

    Code linting is a great way to ensure that your codebase is consistent and that you're following best practices.

  9. June 29, 2024

    Figma Config 2024

    My experience at the 2024 Figma Config conference and some pictures I took there.

  10. June 20, 2024

    Half-Life Dedicated Server With Docker

    Learn how to create a Half-Life Dedicated Server instance using Docker including the ability to add custom configurations, mods and plugins.

  11. March 23, 2024

    Demystifying Web Components

    Learn how to build Web Components and why they're a great choice for your next project.

  12. March 11, 2024

    Visual Testing Storybook with Playwright

    Learn how to setup visual regression tests with Playwright and Storybook.

  13. September 25, 2023

    Let's Chat About Design System Tokens

    This article will focus on Design Tokens, one of the core elements of a design system. The hope is that if you're not familiar with the concept, you'll walk away with a better understanding of what they are and how they can be used.

  14. August 1, 2023

    Syncing Figma Variables and Style Dictionary with GitHub Actions

    Supporting your design system with Figma Variables.

  15. July 21, 2023

    Fostering Positive Change with Innovation Week

    Innovation Week is a week-long event that brings together teams to work on new ideas and projects to help us grow and improve ourselves and our products.

  16. June 30, 2023

    Add your GitHub Sponsors to your project README with Actions

    A simple way to add some value to your GitHub Sponsorship tiers with the help of GitHub Actions.

  17. February 14, 2023

    Virtually Infinite Scrolling with Angular

    In this article we will take a look at some common patterns to improve performance when implementing an infinite scroller with Angular.

  18. March 4, 2022

    Engineering Design Systems In 2022

    In this article I will break down some of the things I have learned over the years of working with design systems and some tooling you can use to help build your own.

  19. February 13, 2022

    When Package Dependencies Become Problematic

    In this article we explore some common security holes caused by npm packages.

  20. January 23, 2022

    Deploying to GitHub Pages using GitHub Actions

    Learn how to deploy your web application to GitHub Pages with the help of GitHub Actions.

  21. November 26, 2021

    Rendering 3D Models in the Browser

    In this article we'll explore different ways to create 3D models, along with some of the options available when it comes to displaying them in a web browser.

  22. December 13, 2020

    Animating Sprite Sheets with CSS

    Sprite Sheets are used in everything from video games, physical devices and even the web. In this post we will explore their use cases on the web.

  23. June 27, 2020

    Generating Last Word Cocktail Variations

    A look into how we can use algorithms to generate a list of Last Word cocktail variations.

  24. May 31, 2020

    Programming an Elevator

    Join me as I put far too much time into solving a question about programming elevators.

  25. March 7, 2020

    Fetching Authenticated API Data with GitHub Actions

    I created a GitHub Action that requests arbitrary authenticated API data on a schedule!

  26. December 11, 2019

    Analysing My Google Music Library

    Let's analyse my Google Music library and see what genres I listen to the most without using an API.

  27. June 3, 2019

    Creating the United Income Component Library

    This article will cover the process of creating the United Income component library, and the best practices we've introduced along the way.

  28. December 5, 2018

    Google Assistant Action for the DC Metro

    Navigating the DC Metro with Google Assistant.

  29. May 12, 2018

    Google I/O 2018

    A write up of my experience at Google I/O 2018

  30. April 23, 2018

    Unveiling ArcAds

    Learn about ArcAds, a new library that simplifies and standardizes advertisement logic in a way that makes sense in the context of large-scale publishers.

  31. August 4, 2017

    Building a Robot with NodeJS

    Apparently you can build robots with NodeJS. Who knew?

  32. March 16, 2017

    AMP Validator Slack Bot

    Automating AMP validation with a Slack bot

  33. March 10, 2017

    Google AMPConf 2017

    I was in Manhatten for Googles AMPConf on behalf of Alaska Dispatch News.

  34. October 16, 2016

    Steam Dev Days 2016

    I attended the Steam Dev Days conference in Seattle, Washington hosted by Valve Software.

  35. May 30, 2016

    Alaska Dispatch News 2.0

    A look at the new Alaska Dispatch News website

  36. May 2, 2016

    What I Learned at RenderConf 2016

    I got to spend a couple of days in Oxford for the Render Conference. Here's what I learned!

  37. September 3, 2015

    Back to Valve Software to Try the Vive

    I was invited back to Valve Software, this time to try the Vive dev kit.

  38. December 1, 2013

    Testing Valves Prototype Steam Hardware

    Valve Software sent me a prototype Steam Machine and Controller to test out. Here's what I thought.

  39. April 21, 2012

    Visit to Valve Software

    I was invited to Valve for an office tour and to playtest an upcoming update for Team Fortress 2.