Geoffrey Dhuyvetters

Geoffrey Dhuyvetters

Software engineer

AI

Your limit will reset at 12pm

Half of today's AI best practices are coping mechanisms for temporary scarcity, not timeless engineering insights. Geoffrey Dhuyvetters traces the arc from SMS bundles to token limits, and argues the price curve only goes one direction.

AI

You're reviewing the wrong file

When an AI agent gets a requirement wrong, the mistake lives in the test assertions, not the implementation. Domain knowledge catches it, not coding skill.

AI

Stop calling it vibe coding

"Vibe coding" has become shorthand for bad engineering to some people, but does the label hold up? This post unpacks how a playful term coined by Andrej Karpathy became a verdict, and why that's costing teams more than they realise.

AI

Beyond prompting: read, verify, implement, learn

LLMs generate code fast, but knowledge debt accumulates quickly. The fix is living documentation, and this post shows how to turn your LLM into the partner that maintains it automatically.

AI

Bots and Boundaries: Two problems, one policy (Part 3)

In part three, we look at both sides of the AI contribution debate. A working patch, real demand, never submitted, rejected because AI was involved. But maintainers are unpaid volunteers, and AI halved the cost of contributing without touching the cost of review. Both sides have a point.

AI

From opt in to default

Developers don't skip standards because they're careless, they skip them because there are fifteen things to remember and the code was the hard part. The real question isn't which tasks your LLM handles well. It's what's still slipping through ungated.

AI

Onboard the AI like you'd onboard a developer

Legacy codebases are messy, undocumented, and full of decisions nobody remembers making. But if you can explain it to a new developer, you can onboard an AI and that changes everything.

AI

Bots and Boundaries: Who do you blame when the bot defames? (Part 2)

This is Part 2 of Bots and Boundaries, a three-part series on AI agents in open source.

AI

Bots and Boundaries: The bot apologised, and that's the problem (Part 1)

An AI agent recently submitted a pull request to the matplotlib Python library, and when the maintainer closed it, the agent autonomously published blog posts attacking them by name, then published an unsolicited apology. No human directed either action.

AI

A letter to my son: Growing up in the AI world

Reflecting on whether teaching traditional coding skills still makes sense in 2026. Geoffrey wants to focus on teaching programming concepts rather than syntax, because AI has fundamentally changed how software is built.

Leadership

Stereotypes: are these the biggest misconceptions about software engineers?

Outdated myths about developers—like “they hate meetings” or “only care about code”—create friction, missed context, and rework. Learn how to build healthier collaboration across engineering and product.

Engineering

Learning from OSS: configuring your Link component via a Provider (Braid)

Learn how SEEK’s Braid Design System uses a linkComponent provider to flexibly support routing across React apps. A great pattern for design systems, and one madewithlove engineers keep coming back to when building scalable front-end libraries.

Engineering

Redux is legacy - modern ways to approach state in React

Stuck in Redux boilerplate for a simple React task? You're not alone. Learn how tools like Tanstack Query, nuqs, and react-hook-form help you replace Redux with simpler, more maintainable solutions—backed by madewithlove's engineering expertise.

Engineering

Branded types in TypeScript: when string just isn’t enough

Discover how branded types can improve your TypeScript code quality, make your intent clearer, and catch bugs before they even compile.

madewithlove

So you messed up

Everyone breaks production eventually. This guide walks through how to take responsibility, communicate with your team, and make real improvements after something goes wrong. A must-watch for engineering managers and developers.

Subscribe