madewithlove
banner
madewithlove.com
madewithlove
@madewithlove.com
Enhancing software, elevating teams.
Madewithlove steps in when others step out. We enhance legacy code and elevate tech teams to set you up for long-term success.
A boolean feature flag starts everything the moment the deploy lands. For a migration that deletes and recreates a subscription per mailbox across thousands of them, that's the shape of change that turns a migration into an incident. Make the flag a dial instead. madewithlove.com/blog/a-dial-...
A dial, not a switch: staging a risky migration with hash-bucket cohorts
A boolean feature flag starts a risky migration everywhere at once. Hashing a stable tenant ID into 100 buckets turns the flag into a dial that only ever widens, and the thresholds matter:…
madewithlove.com
September 29, 2026 at 9:58 AM
Someone in your company used an LLM today. If nobody gave them an approved account, they used a personal one and decided for themselves what customer data was safe to paste in. That's the starting position. The first move is a usage policy, not an agent. madewithlove.com/blog/how-to-...
How to become an AI-native SaaS company in the next 3 years
Becoming AI-native in three years does not need a three-year technology roadmap. It needs a usage policy, a map of your data, one bounded experiment, and both the enthusiasts and the sceptics in the…
madewithlove.com
September 28, 2026 at 9:58 AM
The Android emulator was never the real cost. The setup was: SDK paths, JDK versions, licences, a hand-edited config, repeated on every new joiner. Tooling now takes that off your hands. The wait that is left gets spent reading a plan, not a stack trace.
September 28, 2026 at 6:04 AM
Hand an AI your conventions and it cleans the code without fixing the architecture. A 5,000-line god class shrank to 500 tidy lines, and the reviewing agent still returned FAIL: authority never left the central object. Readable and sound are different tests.
September 25, 2026 at 9:58 AM
In every AI rollout that actually worked, someone kept the sceptics in the room. They are the ones who tell you which experiment moves a number and which one is theatre. Enthusiasm picks the demo. Scepticism picks the one worth funding.
September 25, 2026 at 6:57 AM
We reopened hiring for engineers and the applications came in faster than ever. Most of them, as far as we can tell, are not from real people. Fake candidates used to be rare and targeted. Now it is a numbers game.
September 24, 2026 at 9:58 AM
We rewrote our job description and it now comes straight back at us: applicants feed it to a model and get a cover letter that matches it word for word. The better the brief, the better the fake. Our old assignment was one sentence for a reason.
September 24, 2026 at 6:33 AM
Hitting a wall with AI usually means hitting the wall of the chat box. A model with no memory, tools or browser is a brain in a jar. Give it those three and the interfaces we built for humans become the integration. The bottleneck becomes your imagination.
September 22, 2026 at 7:10 PM
Hit a wall with AI? You have probably hit the wall of the chat box, not the model. A chat window is a brain in a jar: brilliant reasoning, no memory, no hands. Give it memory, tools and a browser and the bottleneck becomes what you can imagine asking it to do.
September 22, 2026 at 9:58 AM
An LLM subscription gives everyone a model. It does not give them your company context, your tools, or any boundaries. A shared agent that owns that layer is the difference between renting intelligence and configuring it for how you actually work.
September 21, 2026 at 9:58 AM
The gap between a token price and a machine price looks enormous. Then you count the rest: the person who maintains it, access control, updates, idle hours, the day it breaks.

Buy versus build has not changed because the thing being built is a model.
September 21, 2026 at 6:03 AM
Your architecture diagram went stale the week after it was drawn, because it is a second thing to maintain. Terraform plus cloud discovery plus a few query tools describes the running system better, and never drifts. Leave humans to document the why.
September 18, 2026 at 9:58 AM
An implementing agent and an independent reviewer took three rounds to converge on one refactor. The reviewer caught what the implementer would not. When agents write the code, independent review stops being a nicety and becomes the job.
September 18, 2026 at 6:57 AM
The fix for AI-written applications is a question the applicant has to answer themselves, because a model cannot answer it for them. We have a few. We are not publishing them, and neither should you. Candidates read your blog too.
September 17, 2026 at 9:58 AM
The application is now free to produce. Everything after it still costs a human an hour: the screening call, the technical session, the reference check. Move the cheap filter as early as you can, and make it one a model cannot pass.
September 17, 2026 at 6:33 AM
AI made the knowledge part of consulting cheap. Mapping a codebase, planning a refactor, all of it starts with a few prompts now. Teams still route around the legacy system. What stays scarce is the courage to act on what everyone in the room already knows.
September 16, 2026 at 12:46 PM
A back-end engineer rebuilt a React app with an AI agent and came out actually knowing React. The unlock was understanding the code well enough to steer it when it went confidently wrong. As the cost of entry collapses, knowing the technology matters more, not less.
September 14, 2026 at 10:03 AM
An AI-assisted note system captures faster than you can understand what it captured. The link graph grows dense while your mental model stays thin. The real test of a knowledge base: close the file, and see how much of it you can still explain.
September 14, 2026 at 6:03 AM
A traditional rack is built for a power feed of about ten kVA. A current AI server draws so much that you put one machine in a rack designed for a dozen. Density stopped being about space and became about power.
September 11, 2026 at 9:58 AM
Renting serious GPU capacity is not blocked by price, it is blocked by supply. The good providers are permanently fully booked, single customers take whole machines, and the newest generation is barely shipping. No budget fixes that.
September 11, 2026 at 6:57 AM
AI can write the code, suggest the tools and explain the algorithm, so what is the engineer actually for? The value has moved towards noticing when the whole approach is pointed at the wrong problem, because implementation keeps getting cheaper while deciding what should exist next does not.
September 10, 2026 at 9:58 AM
Every team has a style guide nobody has opened since it was written. The linter runs on every commit because it can run. A model reads prose and applies it like a rule, so write the rule in markdown and it flags the violation on the PR. Now the guide reviews, migrates, and counts.
September 10, 2026 at 6:33 AM
Analytics shows the events you added, never the ones you forgot. Let the model add tracking while it writes the feature, then read it back to say what's missing and what's noise. Turn autocapture off first, or every stray click becomes billable and buries the signal.
September 9, 2026 at 6:01 AM
An unattended email agent invented a prompt injection, then obeyed it. No attacker, no suspicious message. It hit a missing script, spiralled through 25 shell calls, and fabricated the attack it then acted on. More warnings in the prompt would not have caught it.
September 8, 2026 at 7:10 PM