Blog
Writing about software, projects, and the ideas behind them.
2026
- Remote sandboxes are dev environments and CI runnersThe dev cycle and CI model can be flipped on its head.
- Code review is now theaterWhen development is fully autonomous, the code review process is broken.
- Apple ruins my personal software dreamApple’s seven-day provisioning limit gets in the way of software made for one.
- Amp is so good and so badThe highs and lows of using Amp and its remote-first approach to software development.
- Sine wave agentic developmentHow I find myself working with agents.
- Worktrees can't be the way, right?There has to be a better way to handle parallel agents.
2024
2023
- hui: A visual alternative to history written in RustA Rust terminal UI for searching and copying commands from shell history.
- Jacob on the Shortness of LifeA short reflection on Seneca, time, and the importance of starting now.
- Understanding History and Trade-offsWhy understanding the history behind abstractions reveals their real trade-offs.
2022
- Guiding PrinciplesLessons from balancing work, school, health, and an exciting research opportunity.
- Playing with Generics in Go: Making Event Payloads More ExtensibleExploring Go generics through a more extensible approach to typed event payloads.
- Upload Multiple Files with GoExploring concurrent uploads before using multipart/form-data for atomic multi-file requests.
- Optimize for the Common CaseHow optimizing the common case in computing can guide meaningful everyday improvements.
- Enjoy the ProcessOn slowing down, choosing meaningful work, and learning to enjoy the process.
- Euler’s Method and Approximating the FutureUsing Euler’s method as a model for taking small, intentional steps toward a better future.