Coding with AI as an assistant

Oct 24, 2025 min read

Coding with AI: good or bad idea?

We’ll look at the pros and cons of using generative tools when writing code.

A. Context

I took out a Cursor subscription to use the built-in assistant and test AI in my development workflow. I decided to try it and see whether it could save me time on personal projects—or even more.

There’s no denying the hype around generative AI. You hear about it everywhere: image generation, videos flooding social networks, and now development, where the mere mention of it can make people nervous. But let’s try to be objective and see whether it can be a genuine tool to improve our productivity.

B. First steps with Cursor

In principle, nothing to complain about. You ask, it does it.

“Create me a Golang command-line application to determine the language and country of a web page whose URL is given as a parameter.”

Its response:

“I will create a Go command-line application to determine the language and country of a web page. This application will analyze the HTML content of the page and use heuristics to detect the language and country.”

At that point, it feels almost magical. You see the LLM analyze your request, “think”, and—bam!—it explains what it’s going to do: detect the language, find keywords in the text, and even go so far as to analyze the site’s terms of service and the area codes in contact and support pages.

Wow! I have to say I wouldn’t have thought of those last two ideas myself.

See my web-lang-detector project on GitHub for the result

The code is generated, then the tests too, and they’re run straight away. When everything’s okay, it proudly announces the new features and you can try it. And it works. Almost too good to be true.

In under five minutes I had done what would have taken me at least an afternoon. So far, everything seems perfect.

C. But then, is it too good to be true?

We ease off. It seems too easy—and it is.

The catch is that what I asked for was done in such a way that everything works perfectly. The generated code does exactly what it was asked to do.

* So, where’s the problem?

Well, the problem lies precisely in its greatest strength: generating code. AI generates code—and it generates a lot of it. That’s what’s problematic.

We end up with an automaton that creates more code than we can realistically control. Code review becomes difficult, when not impossible. We end up having to trust an AI that, by nature, lacks the ability (remember, it only reproduces existing code) to question its own mistakes or those of the code it imitates. It also can’t tell when the code it’s using is obsolete.

If we’re not careful, we end up trusting code that generates code—and sometimes does it badly. We’re in the same kind of trust situation as with autonomous cars. If we’re not careful, a single bug can have serious consequences—or in the worst cases, on critical systems, destroy a company or even cost lives.

D. So it’s not good, then?

We shouldn’t throw the baby out with the bathwater. As with the autonomous car analogy, things work better when we keep our hands on the wheel.

There are many scenarios where this new tool can save time.

* Do you have very few resources to create a prototype and validate a project?

In that case, it’s ideal. If the code will never go to production, we can afford to be a bit more relaxed about checking the generated code. For a demo, it’s perfect.

* Do you have a microservices architecture where each service has very little code?

With a bit more control than in the previous case, this can reduce the complexity of each piece and keep each codebase to a more manageable size.

So, in conclusion: do we use AI or not?

Yes! But not everywhere, and not in just any way.


If we assume that most codebases are largely filled with soulless code—reused or of little real value—then saving time by replacing that with generated code can make sense, as long as it lets us focus on what actually adds value to our application. We must not, however, lose control over the project codebase as a whole. We must not generate more code than we can review.

AI is good for saving time, but not for ensuring project consistency. Would you give full autonomy to an average developer fresh out of school? No. So don’t do it with an AI either. It will never replace a real developer—who, after all, learns every day.

So in the end: AI can be very useful for saving time, but it should be used in limited contexts and kept under close control.

That said, it’s a lot of fun to use!

-|