Posts by James W.
"Delivering new code has dropped in price to almost free... but delivering good code remains significantly more expensive than that." - simonwillison.net/guides/agent...
Don't build your UI around resources, (e.g. a form to edit the configuration object), instead build them around user intents I want to publish this thing.
A solid post by Gregor Hohpe on the power of metaphors in technical conversions:
> "Because the metaphor shares the dynamics and constraints of the solution, your audience can reason in the metaphor and understand the decisions and trade-offs".
architectelevator.com/transformati...
"Everything you could want from a company - promotions, bonuses, internal respect - comes from shipping projects, not from [just] closing out tickets." www.seangoedecke.com/party-tricks/
Thinking about doing the thing is not doing the thing. Doing the thing is doing the thing. - www.softwaredesign.ing/blog/doing-t...
"What actually does motivate software engineers is often more of an internal compulsion. If you’re in that category, then it’s worth figuring out how you can harness that compulsion most effectively." www.seangoedecke.com/addicted-to-...
If I change behaviour, I must change tests.
If I change behaviour, I must change tests.
If I change behaviour, I must change tests.
If I change behaviour, I must change tests.
This might even be better: justfuckingusereact.com - I do enjoy a bit of Alpine.js here and there though
I see a lot of complaints about untested AI slop in pull requests. Submitting those is a dereliction of duty as a software engineer: Your job is to deliver code you have proven to work simonwillison.net/2025/Dec/18/...
I wish Shadow traffic testing was as cool as it sounds but excited to use it in an enterprise production environment soon!
Can you answer for the mistakes in your AI generated code? You should reap the rewards, and the blame. timkellogg.me/blog/2025/09...
“Discovery Coding” a great term for something I do a fair bit of. Sometimes you just need to ‘flail away at the goddamn thing’ to truly understand what you’re solving.
One of the more interesting “firsts” of this year has been being a certain popular online collaboration tools first enterprise tier migration to a competitor. We used their service so much their export tooling just times out 🤷
“To ensure development doesn’t slowly grind to a halt, we need to ensure our code creates more value than debt.” Is all code tech debt?
Crafting a software system can be challenging, but attempting it a second time might prove beneficial.
Code is always addressed to someone. As Structure and Interpretation of Computer Programs puts it, “programs must be written for people to read, and only incidentally for machines to execute”