Code & Context
Where technology meets human behavior in software development
2026
- Drive-By Feedback Doesn't Stick You nod through a quick fix mid-deploy and make the same mistake a week later. Drive-by feedback is rented. Two minutes with the reason makes it yours. The same is true for AI agents.
- The Definition of the Work Small AI wins and big AI stalls are often the same problem: unfinished human translation of abstract intent into doable work. Architects called it construction documents. Product owners call it ready.
- A Retry Pass Is a Bug I spent a Saturday with agents fixing every CI test that failed and then passed on retry. The fixes mattered less than the rules we wrote into AGENTS.md so the next agent-written test does not add a flake.
- Put the AI Context in the Repo Models and code already live somewhere. The scarce artifact is context — briefs, skills, constraints — and it should live in the repo where humans and agents both find it.
- Intentionally Limiting Communication Bandwidth Team Topologies argues that limiting inter-team communication bandwidth improves performance. I am practicing that with culture 1:1s and bounded CoP sessions instead of more all-hands collaboration.
- Product and Engineering Are Becoming One Job In an agentic week, product and engineering collapse into one job. The scarce skill is no longer the keystrokes. It is the brief: the questions, the context, and the judgment to stand behind the answer.
- Forward Deployed Is a Product, Not a Staffing Label Forward deployed gets used as a nicer word for staff aug. My version is productized: senior engineers inside the client's system, owning hard problems and delivery quality across the lifecycle.
- The Scarce IP Is Leaving the Code Artifact AI writes code faster than humans. The scarce intellectual property is no longer the file in git. It is the documented system: decisions, processes, and the people who can hold the why.
- Eight Months on Omarchy. Mail and Calendar Are Still the Gap. I moved to Omarchy as my daily driver eight months ago. The desktop is fine. What I still do not have is a real email client or a calendar I like, so Notion Calendar and Gmail in the browser are doing the job.
- Go 1.27: An Upgrade That Mostly Pays for Itself Go 1.27 shipped in August 2026 with cheaper small allocations, a rewritten encoding/json, generic methods, and a goroutine leak profiler. Here is what matters for production services.
- The AI Acceleration Whiplash AI doubled merge rates for some teams and flooded everyone else with review debt, incidents, and abandoned agent PRs. The gap is now about ownership, not models.
- AI Coding Assistants: Speed Is Nice, Flow Is the Point Research shows AI coding assistants cut task completion time by 55%, but their strongest effect may be on developer focus and satisfaction.
- Drinking from the Fire Hydrant: Completing MIT's Blended CTO Program and Winning the Impact Project Prize I completed MIT's Blended CTO program and my team won the fire hydrant prize for a mobility project for people with reduced mobility. Here's what the experience changed for me.
- Agile Isn't Dying — It's Becoming Agentic The 2025 State of Agile report shows Agile is not fading; it is absorbing AI, ROI pressure, and hybrid models. Here is what the data says about the shift to agentic Agile.
- DORA 2024: AI and Platform Engineering Fall Short The 2024 DORA report found AI adoption cuts delivery stability by 7.2% and throughput by 1.5%. Platform engineering boosts team productivity by 6% but hurts core delivery metrics. Documentation and user-centricity still outperform tooling hype.
- The Developer Productivity Metrics That Actually Matter Two-thirds of developers say current productivity metrics don't reflect their real contribution. Here's what the data says about measuring what actually counts.
- The Three Debts of AI-Native Engineering AI coding tools are everywhere, but most teams haven't updated how they work. The data reveals three hidden debts that determine whether AI makes you faster or just busier.
- Small Businesses Are Winning the AI Race. Here's Why Big Companies Can't Catch Up. Small businesses adopt AI faster and see bigger returns than enterprises. Less bureaucracy, no legacy debt, and owners who actually use the tools make small teams the real AI winners.
- The AI Verification Bottleneck: We're Speeding Up the Wrong Part of the Pipeline AI generates code faster than ever, but review has become the bottleneck. Here's what the data says about trust, verification, and where teams should invest next.
- Code Reviews in the Age of AI: Why the Bottleneck Just Moved AI-assisted coding generates code faster than ever, but code reviews haven't kept up. Here's how engineering teams are adapting.
- Go 1.24's `go tool` Kills the tools.go Hack (Finally) Go 1.24's new tool directive brings sanity to managing development tools like stringer and mockgen—no more blank import hacks in tools.go files.
- Go 1.26's `go fix` Is the Antidote to AI-Generated Old Go Go 1.26's rewritten go fix command modernizes outdated patterns—especially useful when AI assistants keep generating pre-generics Go.
2025
- Syncthing to my NAS Sharing my experience setting up Syncthing to sync files between my computers and home NAS. A practical guide to continuous file synchronization with real-world configuration tips.
- Go and Loops: How Music Sampling Reflects Go Development An exploration of the surprising parallels between the worlds of music sampling and Go programming, from finding libraries to managing concurrency.
- Lost in Translation? A Founder's Guide to Communicating with Your Development Team Bridge the communication gap between business leaders and developers. This guide provides actionable tips to avoid costly misunderstandings and build better products, faster.
- The 100ms Advantage: Caching Headers Boosting Revenue Learn how HTTP caching headers can boost your website's performance and revenue. A 100ms speed improvement can increase conversions by 7% - discover the simple technical strategies that deliver real business results.
- Beyond the Firewall: A Guide to Understanding and Defeating CSRF Attacks Learn how Cross-Site Request Forgery (CSRF) works, why it's a critical security threat, and how to implement robust mitigation strategies like anti-CSRF tokens.
- Stop Buying Pixels: How to Invest in a Design Partner, Not Just Hire a Freelancer Stop hiring freelancers for pixels and start investing in design partners. Discover a new mindset for working with UI designers that drives growth, conversions, and a powerful ROI.
- Static Site, Dynamic Soul: Building Forms with Elegance and Edge Ditch expensive form services. Learn the art of building a zero-cost, serverless contact form for your static site using Cloudflare Workers and HTMX for an instant, elegant user experience.
- When Logic Fails: How We Settled the Monty Hall Problem with Go When our team couldn't agree on the Monty Hall problem, we turned to Go programming to settle the debate. This article shows how we built a simulation to prove that switching doors really does double your chances of winning.
2023
- Maximizing Efficiency in Product Development: Agile Strategies for Small Tech Teams This blog post delves into how small tech teams can utilize Agile methodologies to enhance product development efficiency. It covers Agile practices like Scrum and Kanban, benefits such as improved productivity, strategies to overcome challenges, and the importance of specialized tools, offering a comprehensive guide for tech teams.
- Get to Know DORA Metrics: The Key to DevOps Success Knowing how well a team performs can open the door to improvements to the current development process. DORA Metrics allowed us to know more about the characteristics that make a high-performing team and can help us visualize how well our team is doing in terms of performance.
- Open-source licenses and their implications Open-source licensing is an important element that could add complexity to the work of software development teams. In this post we will cover the most popular open-source licenses and the implications in the use of them.
- Application Performance Monitoring In the context of software, observable systems can help your team accelerate its way to a solution when troubleshooting. While building web applications in golang, instrumenting them with APM technologies can allow you to monitor your application’s resource consumption and open the door for future improvements in the overall experience provided to your users.
2022
- Using Plush with Go Learn how to enhance your Go templating with Plush, a powerful template engine. Discover how to simplify template creation and management in Go applications using Plush's intuitive syntax and features.
- Page layouts in Go Master Go template layouts using block and define expressions. Learn how to create efficient, DRY web page templates and eliminate layout repetition in your Go web applications
- Go embed for better SQL query management Learn how to improve SQL query management in Go using the embed package. Discover how to leverage SQL files with editor syntax highlighting while embedding queries directly into your Go applications
2021
2020
- Using Go's build tags Master Go's build tags to optimize your Go applications. Learn how to use build constraints effectively for platform-specific code, testing, and development configurations.
- Go's Locations & Alpine Docker image Learn how to properly configure timezone support in Go applications running on Alpine Docker images. Guide to including localization files for accurate time handling using Go's time package in containerized apps.
- TIP: Ensuring your team uses YARN/NPM Quick tip: Learn how to maintain package manager consistency in your team by enforcing YARN or NPM usage. Simple steps to prevent dependency conflicts and ensure smooth development workflow.