My Love-Hate Relationship with AI
An honest reflection on what artificial intelligence has given me as a developer — and what it has taken away along the way.
A while ago I had a very interesting conversation with a couple of colleagues at work and, as could not be otherwise, the topic ended up being the usual one: AI. The topic that is on everyone's lips and, at the same time, on nobody's — everyone talks about it, but very few talk about what it really means in the day-to-day life of someone who builds software.
Out of that conversation came a conclusion I have been chewing on for a while and that I want to develop here calmly: I have a love-hate relationship with artificial intelligence.
The landscape: gurus everywhere
We were commenting in that conversation that nowadays everything (or almost everything) you see on LinkedIn is generated with AI: both the post itself and the project being shown off. In fact, you see an awful lot of gurus who are already experts in the field. And the question we asked ourselves is inevitable: is there really that much AI expertise out there already?
My opinion is clear: no.
Being an expert at something requires time, mistakes, context and judgment. Generative AI has been among us at this level for a relatively short time, and yet the number of "experts" has grown faster than the technology itself. What abounds is not experience but content: posts that sound good, spectacular demos and projects that show the pretty side without showing the costs, the limits or the failures.
The love side
Let's start with the good, because there is a lot of it and it would be dishonest to downplay it.
I can work on several projects at once. Before, switching context between projects had a huge cost: remembering where you left off, re-reading code, rebuilding your mental state. Now I can launch agents that work on one task while I attend to another, and pick up each thread with a summary of what has happened.
I can learn while the AI works. This is probably the part I enjoy the most. While an agent executes a long task — a migration, a battery of tests, a mechanical refactor — I can be reading documentation, researching a new technology or preparing the next step. The agent notifies me when it finishes and I switch into review mode. It is a paradigm shift: from executor to supervisor.
I can automate the tedious stuff. Every project has tasks that add no value but consume hours: updating dependencies, writing boilerplate, documenting the obvious, preparing test data. Delegating that to AI takes nothing away from me as a professional; on the contrary, it gives me back time for the work that truly requires judgment.
The hate side
And yet.
When I finish a piece of work built with AI, I do not feel the same gratification as when I used to solve the bug myself with logs, debugging sessions and, above all, many hours. That feeling of having chased a problem for a whole afternoon, of having formulated hypotheses, discarded false leads and finally found the guilty line... AI does not replicate that. The programmer's heart, I suppose.
It is not just nostalgia. I believe that gratification served a purpose: it was the signal that you had learned something in depth. The knowledge you gain by suffering through a bug stays with you forever; the knowledge you gain by reading the solution a model hands you, not so much. And that forces me to ask myself what we are failing to learn along the way.
All that glitters is not gold
Beyond the emotional side, there is the practical side: blindly trusting AI is expensive. If you don't believe me, just ask Microsoft and Uber, which have already made headlines because of the consequences of betting too hard and too fast on AI-driven automation.
The lesson I take from those cases is not "AI is dangerous", but something more nuanced: AI amplifies. It amplifies the productivity of a good team with good review processes, and it equally amplifies the disaster of a team that ships without verifying. The difference between one case and the other is not in the tool; it is in the judgment of whoever uses it.
Adapting, but with judgment
In the end, we have to adapt to this new world. That is not up for debate: whoever refuses to use these tools will compete at a disadvantage against whoever uses them well. But adapting does not mean embracing everything without a filter.
For me, adapting well comes down to three things:
- Using AI for what it is good at: volume, speed, mechanical tasks, first drafts.
- Keeping for myself what makes me a better professional: design, architecture decisions, critical review and, from time to time, wrestling with a bug the old-fashioned way — if only for mental hygiene.
- Distrusting the hype: AI is neither going to replace us tomorrow, nor is it a passing fad. The truth, as almost always, lies somewhere in the middle, and we still have a lot to learn to adapt well to this new world.
Conclusion
Love and hate can coexist. I love what AI allows me to do: more projects, fewer tedious tasks, more time to learn. And I hate — or at least miss — what gets lost along the way: the gratification of the problem solved by hand, the deep learning that only technical suffering provides.
Does anyone else feel something similar?
PS: this article, like the post that originated it, was written without AI... or at least that is what I like to think 🤣