• Home
  • Blog
  • Projects
  • Bookshelf
  • About

Blog Timeline:

  • 2025

    7 posts published in 2025

    • July

      5 posts published in july 2025

      • Zombie Retros
      • 31
      • Link: How I build software quickly
      • Vacation (and streaks)
      • Multi-step Native HTML Forms
    • June

      9 posts published in june 2025

      • Git Co-Authorship
      • useInterval
      • Polish is Important
      • <Blank> Driven Development
      • All Documentation Should Be Dated
      • Adding Microposts
      • Roundup Notes in Obsidian with Dataview
      • Quick Tip - Theme Aware Images
      • Async Class Creation In JavaScript
    • May

      2 posts published in may 2025

      • In Review - The Belroy Transit Workpack Pro v2
      • Website Redesign v10
    • April

      2 posts published in april 2025

      • Server Side Rendering Compatible CSS Theming
      • Podcasting By Hand
    • March

      1 posts published in march 2025

      • Replacing Dropbox Capture with Raycast
    • February

      5 posts published in february 2025

      • Quick Tip - Specific Local Module Declarations
      • On File-System Routing Conventions
      • You're Building Software Wrong
      • Cursor and Obsidian
      • Single File Web Apps
    • January

      2 posts published in january 2025

      • The AI Development Conundrum
      • Resetting Controlled Components in Forms
  • 2024

    12 posts published in 2024

    • December

      5 posts published in december 2024

      • Thoughts on New Years Resolutions
      • Team Memes
      • A Quick Look at Import Maps
      • Recommended Tech Talks
      • Request for a (minimal) RSC Framework
    • November

      2 posts published in november 2024

      • My Updated Obsidian Task Management
      • Bluesky Tips and Tools
    • October

      5 posts published in october 2024

      • The Bookkeeping Pattern
      • Building a Custom Ghostty Theme
      • TSLite
      • Monorepo Tips and Tricks
      • Offload Complexity, Don't Offload Learning
    • September

      2 posts published in september 2024

      • Next.js with Deno v2
      • More Thoughts on Dogfooding
    • August

      3 posts published in august 2024

      • Dogfooding
      • Git Notes as a Tool for Thought
      • Don't Break the Implicit Prop Contract
    • July

      6 posts published in july 2024

      • A Better useSSR Implementation
      • 30
      • Simple Obsidian Task Management
      • My Current Dev Setup
      • Switching back to Obsidian
      • There Is No Standard Markdown
    • June

      2 posts published in june 2024

      • Abstract Your API
      • Tip: Request and Response Headers
    • May

      3 posts published in may 2024

      • Using Feature Toggles to De-risk Refactors
      • Leaving Wayfair
      • Hohoro
    • April

      3 posts published in april 2024

      • Funport: True Dynamic Imports in webpack
      • My Current AI Stack
      • Configuring Cloudflare Domains with Vercel
    • March

      4 posts published in march 2024

      • React Error Boundaries: Revisited
      • Exporting Custom Slack Emoji
      • Custom Favicon Recipes
      • Corporate Sponsored OSS
    • February

      1 posts published in february 2024

      • The Library-Docs Monorepo Template
    • January

      1 posts published in january 2024

      • Building Better Beacon
  • 2023

    10 posts published in 2023

    • December

      10 posts published in december 2023

      • Project Deep Dive: Tails
      • Churn Anxiety
      • Service Monitors and Observability
      • Type Safe process.env
      • Consistent Local Ports with Wrangler
      • On Adopting CSS-in-JS
      • Being Unopinionated
      • Stop Snacking
      • No Process is Invisible Process
      • Fixing Zed's language server
    • November

      4 posts published in november 2023

      • Project Deep Dive: Microfibre
      • Pair Programming
      • AI Driven Development
      • Teams and Caterpillar Tracks
    • October

      1 posts published in october 2023

      • Go To Git Utils
    • September

      4 posts published in september 2023

      • Jabs and Fluff: On CTO Office Hours
      • Using Marquee with React and TypeScript
      • Finding React Artifacts
      • Learning Go
    • August

      1 posts published in august 2023

      • Speedbumps
    • July

      4 posts published in july 2023

      • Idea: Distributable Web Apps
      • 29
      • Principles for Automated Testing
      • Deno
    • June

      2 posts published in june 2023

      • Fractal Refactoring
      • 10x Engineers
    • April

      3 posts published in april 2023

      • Avoid Distractions
      • My Thoughts on Tailwind
      • Setting up Next.js with Tailwind
    • March

      3 posts published in march 2023

      • Write it down
      • Setting up Shiki on Next.js
      • Dollar: Devlog 2
    • January

      2 posts published in january 2023

      • Navigating Monorepos with Ease
      • Dollar: Devlog 1
  • 2022

    5 posts published in 2022

    • December

      1 posts published in december 2022

      • My Updated Next.js Setup
    • July

      1 posts published in july 2022

      • Yarn Berry Gitignore Settings
    • June

      2 posts published in june 2022

      • On Note Taking
      • On Writing Tests
    • May

      3 posts published in may 2022

      • Switching back to Notion
      • Moving to PNPM
      • Upgrade Guides
    • January

      3 posts published in january 2022

      • My Opinionated Next.js Setup
      • My Two Favorite React Tricks
      • Switching to iPhone
  • 2021

    9 posts published in 2021

    • December

      1 posts published in december 2021

      • Year in Music
    • November

      3 posts published in november 2021

      • Pair Programming (stub)
      • Fast Feedback Systems
      • Video Games
    • October

      1 posts published in october 2021

      • Delete it
    • September

      2 posts published in september 2021

      • Linear Tools Enforce Linear Thinking
      • Mac Setup Guide
    • August

      6 posts published in august 2021

      • Build Your Developer Toolbox
      • Start Fresh
      • On Written Communication
      • Updating Forked Repos
      • React Testing Library: Checkboxes and events
      • Roll your own Obsidian sync
    • June

      2 posts published in june 2021

      • The Squeeze
      • Learning
    • March

      4 posts published in march 2021

      • On Code Review
      • Array Chunking
      • Fast
      • Writing Node Scripts
    • February

      2 posts published in february 2021

      • useConsole
      • yw
    • January

      4 posts published in january 2021

      • Hack Sprint
      • Simple Props
      • Computed Design Tokens
      • 2021: Resolutions
  • 2020

    6 posts published in 2020

    • December

      5 posts published in december 2020

      • 2020: Year in Review
      • Building a Web Sandbox: Part 1
      • Literate (web) Programming
      • NextJS Analytics with Airtable
      • Pair Code Reviews
    • July

      1 posts published in july 2020

      • Enhancing Slack
    • May

      1 posts published in may 2020

      • A Note on Consistency
    • April

      3 posts published in april 2020

      • The Rabbit Hole
      • A Note On Meetings
      • A Note On Anti-Patterns
    • March

      2 posts published in march 2020

      • Stateful Providers
      • Draft Pull Requests
    • February

      1 posts published in february 2020

      • February 20, 2020
  • 2019

    6 posts published in 2019

    • July

      2 posts published in july 2019

      • Summer 2019 - Bend Oregon
      • Theme First UI Development
    • June

      2 posts published in june 2019

      • Deploying Automatically using GitHub Actions
      • Simpler and Smaller
    • May

      1 posts published in may 2019

      • Maintenance Costs
    • March

      1 posts published in march 2019

      • Snapshot Testing
    • February

      5 posts published in february 2019

      • useReducer, don't useState
      • Hooks Tips Ep. 2 - Migrating Instance Variables
      • Hooks Tips Ep. 1 - The Dependency Array
      • Building a Live Editor
      • Start Small, Accept Change
    • January

      1 posts published in january 2019

      • React Error Boundaries
  • 2018

    8 posts published in 2018

    • December

      2 posts published in december 2018

      • Starting Fresh
      • Testing Software
    • November

      2 posts published in november 2018

      • Suspense Plus GraphQL
      • Missing Detail
    • October

      1 posts published in october 2018

      • Matt's Log - October
    • September

      1 posts published in september 2018

      • You've Launched, Now What?
    • July

      2 posts published in july 2018

      • Summer 2018 Trip
      • Taking a Break
    • May

      1 posts published in may 2018

      • Managing Complex UI Component State
    • April

      1 posts published in april 2018

      • Understanding React 16.3 Updates
    • January

      1 posts published in january 2018

      • 2018
  • 2017

    3 posts published in 2017

    • April

      1 posts published in april 2017

      • CSS in JS
    • March

      4 posts published in march 2017

      • Redesign v6
      • JavaScript Weirdness
      • Calendar
      • Rebuilding Mustache
    • January

      1 posts published in january 2017

      • Push vs Pull AI
  • 2016

    5 posts published in 2016

    • November

      1 posts published in november 2016

      • Links
    • October

      2 posts published in october 2016

      • The Great CSS Debate
      • October 4th
    • August

      5 posts published in august 2016

      • My New Website
      • Pull Quotes
      • Redesign v5
      • Attribute Selectors
      • August
    • April

      1 posts published in april 2016

      • Redesign
    • January

      6 posts published in january 2016

      • Afraid
      • Clientside
      • 10,000 Characters
      • Building in 2016
      • DJI vs GoPro
      • My First Project of 2016
  • 2015

    2 posts published in 2015

    • December

      5 posts published in december 2015

      • 2015
      • Looking Ahead: 2016
      • Blogging vs Working
      • Powerpoint
      • The Social Max
    • November

      6 posts published in november 2015

      • Thanksgiving
      • Family Time
      • Weekend Projects
      • The Message is in the Medium
      • A New Look
      • A New Resume