2026 Personal Tech Stack
My yearly tradition no one sane cares about
This is what is online right now. More will be revived later?
My yearly tradition no one sane cares about
Using NotebookLM to create personalized podcasts for kids
An on-spectrum overview of the tools and services I use regularly
Making your posts a dessert topping and a floor wax
Piping to FZF, with extra steps
Start using your <head> when working
How to look like a cool movie hacker while using Git
Stealing your history back from FitBit, minus the janky interpolated values
Putting round pegs into square image holes
Automating something I don’t even do anymore
Making sure your algorithmic love letters don’t get lost
An unreasonable number of steps to get reasonable disk security on Linux
How to make your co-workers think you’re working from Mordor
stdin with command-line arguments within BashHow to avoid using xargs at all costs
Figuring out why your foot got blown off after you inadvertently shot it
Create an encrypted drive pool in a hundred steps or less
I’m a one-hit wonder on Twitter; this is life with a marginally-popular tweet
Adding IDE-like features into Neovim via the Language Server Protocol
Talking about what I’ve been working on for the last three years.
Using Google location data in order to geotag photographs from a camera via the command-line
Some terminal commands used to tame a poorly-organized set of photographs before uploading to Google Photos
2014 guide to dropping support for older browsers to simplify development
Slides and video from me talking about Treesaver at ISOJ
Talking about Treesaver, dynamic layout, and web design on a podcast
Stop supporting problematic browsers in order to vastly simplify development
Releasing Treesaver as open source and inviting the internet to poke at it
Robert Scoble interviews me about Treesaver
A new way to build paginated reading layouts with HTML, CSS, and JavaScript
Automatically stuffing soft hyphens into HTML so justified text behaves better
Fixing broken vertical rhythm on the web with a little jQuery nudge
JavaScript for responsive layouts
An early Silverlight experiment to do sIFR-style typographic replacement without Flash
Comparing how the usual rich-platform suspects render type at reading sizes
Why premium publishers keep ending up with bargain-bin web ads
A panel video, some demo screenshots, and early reading-experience prototypes
A preview of the many ways attractive text layout can hurt you in WPF
BindableRunA small WPF helper to make Run.Text bindable inside FlowDocument content
Leaving Microsoft, heading to Beijing, and keeping the blog nerdy
OpenType swashes, alternates, and other ways to show off with fonts
The important difference between moving pixels and moving layout
Fancy OpenType glyph substitutions for when one letter shape is not enough
Turning on a centuries-old typography trick in Avalon
Building your own layout engine in Avalon without losing your mind
Why vector UI matters once pixels stop behaving themselves