How I sign git commits with Secure Enclave keys while remoted into my main Mac from an iPad or a cheap laptop. All it takes is Secretive, SSH agent forwarding, and one well-placed symlink. These days, my main MacBook Pro does most of its coding without me. I mostly show up to take the credit. For example, every day I walk with my daughter to a coffee shop while Claude Code churns through tasks in
20 Jul 2026You've been Haacked is a blog about Technology, Software, Management, and Open Source. It's full of good stuff.
Latest posts
Merge conflicts don't have to ruin your day. I use mergiraf for structural merging and a Claude Code skill for everything else. Here's how to set it up. Git is great at merging until it isn’t. Most of the time, when I rebase my feature branch against the main branch, it all goes to plan. Nothing to do for me. But when it doesn’t go to plan, it can be a big mess. Git dumps a wall of conflict marker
25 Mar 2026Reflections on my first year at PostHog. The last thing an engineer wants to see is their GitHub avatar next to the pull request that caused an outage. Yet there it was. My smiling face. On that PR. This was my first year at PostHog, and it felt like a real test of the culture. Would they blame me? Let it quietly color opinions of my work? Fire me over a mistake? Nah. My colleagues were supportive
6 Jan 2026Working on multiple branches simultaneously? I built tree-me to manage git worktrees without the ceremony. Convention over configuration for the win. I firmly believe that Git worktrees are one of the most underrated features of Git. I ignored them for years because I didn’t understand them or how to adapt them to my workflow. But that changed as I began using LLM coding tools to do more work in p
21 Nov 2025Ever tried to remember why you made a change six months ago? I built Spelungit so you can search Git commit history with natural language instead of praying to the regex gods. Supporting a large codebase is challenging. Sometimes, the questions you have can’t be answered by the code at hand. For example, “When did we switch from class components to hooks and what discussion led to that decision?”
29 Sep 2025A git alias to clean up gone branches. Even ones that have been squashed and merged. A long time ago, I wrote a useful set of git aliases to support the GitHub flow. My favorite alias was bdone which would: Checkout the default branch. Run git up to make sure you’re up to date. Run git bclean to delete all the branches that have been merged into the default branch. And this worked great for a long
17 Apr 2025PostHog is a product analytics platform that helps you build better products faster. It contains a set of tools to help you capture analytics and leverage feature flags. PostHog helps you build better products. It tracks what users do. It controls features in production. And now it works with .NET! I joined PostHog at the beginning of the year as a Product Engineer on the Feature Flags team . Feat
25 Feb 2025Taking the plunge into a new job at PostHog. Last year I wrote a post, career chutes and ladders , where I proposed that a linear climb to the C-suite is not the only approach to a satisfying career. At the end of the post, I mentioned I was stepping off the ladder to take on an IC role. After over a year of being on a personally funded sabbatical, I started a new job at PostHog as a Senior Produc
7 Jan 2025You may want to deserialize JSON to strongly typed values, but sometimes you run into a situation where the API doesn't comply, until now. I love using Refit to call web APIs in a nice type-safe manner. Sometimes though, APIs don’t want to cooperate with your strongly-typed hopes. For example, you might run into an API written by a hipster in a beanie, aka a dynamic-type enthusiast. I don’t say th
17 Dec 2024Sometimes stepping off the career ladder is the best move you can make. The career ladder is a comforting fiction we’re sold as we embark on our careers: Start as Junior, climb to Senior, then Principal, Director, and VP. One day, you defeat the final boss and receive a key to the executive bathroom and and join the C-suite. You’ve made it! If you’re lucky, your company supports a tall Individual
10 Dec 2024