Before I heard about OpenAI, I'd never have imagined programming to become what it is today. Here are some notes I wrote to gain perspective on my hobby and job.
It's been more than a year now that I have had AI integrated in my code editor.
Without a doubt, I do my job much faster now than before. I even completed two personal projects despite having limited free time: CyberKey and NightCity Tracer.
Because I get solutions to my problems faster, I feel less anxious. I don't spend nights thinking about code anymore. My job got easier, great! Or maybe it's just life? I got better at coding, and I had a baby, so I'd feel less anxious anyway about my tasks and have other priorities...
Okay, these were some positive aspects, but there are negative sides as well.
The feeling of pride.
I remember moments when I felt proud of my work.
A bug that the rest of the team couldn't solve, a security breach that no one saw before, an optimization that considerably sped up a system, a feature that had people saying, "Wow, you did that? That's amazing, thanks a lot!"
Now, a machine can do it. Yes, it still misses some details. It's also often better than me.
So, I obviously use this machine. I get better results with it than without it. The hardest tasks became easy to solve. I don't really see the statement "No pain, no gain" as true anymore.
The lack of focus and progress.
More and more, I start conversations with agents like this: "Let's do ticket XXX.".
The agent takes 2 minutes.
I check a message on Slack.
The agent asks for permission to execute a command.
"Ok, go ahead".
I check an email.
My agent finished.
I got an analysis of the problem and a recommendation of what to do next. I carefully read and understand what is going on and say, "Good, do it".
A quick check on the news...
2 minutes later, the agent finished its changes in my codebase.
I test, check the code, make my comments, and this cycle goes on.
These context switches create mental fatigue. Even though we probably had this issue before the AI era, this took on bigger proportions now. And I know my laziness is responsible for it.
My lack of focus and reluctance to tackle problems myself. Because why bother coding if a machine can do it and give me time to do something else?
And sure, I understand the code produced, but I didn't write it, I only read it, so I am not building solid cerebral connections, I am not making progress. It simply gives me a fake confidence that breaks when a clearly avoidable bug occurs in production due to my mistake.
If you have the same problems, then hopefully, what comes next will help.
Imagine you are a junior police investigator. You are in a closed room, no windows, just cold lights and a table with thousands of paper sheets. They are all the files in your codebase.
1. Don't ask your agent, "Do this ticket."
Dive into this investigation yourself first. Stick the ticket on the wall and read it. Find and stick next to it all the code files that are concerned, and understand how they all work together. Take back full ownership of your codebase.
2. Always find a first solution yourself.
Take your time to come up with a solution. Put those brain cells back to work. Let the creativity that makes us human come back.
Then and only then, call in one of your department's senior colleagues (your favorite AI). Show your wall, explain your idea, and wait.
3. When your agent works, stay in the room.
Don't ask your senior colleague with 30 years of experience to solve the case from these files and just go out for a bubble tea. Or worse, go into another room to start working on another case.
Be professional. Stay in the room, focused on the problem. Continue to criticize your solution, explain it out loud, and search for all potential consequences. Anything you want, but stay focused on this particular issue.
Your senior colleague finished.
It confirms, or not, that you understood the actual problem, that your solution works and is the best in this situation, that you did not forget other areas of your codebase, that you are following the right patterns, etc...
If everything you said was accurate and didn't miss a thing, well, congratulations. Your senior colleague is impressed! If not, it means you just got the opportunity to learn something. Remember it! Continue the conversation if needed but always force yourself to think deeply before sending a message.
I hope you liked this little scenario. It probably applies to others, not just people in tech. But if you are a software engineer, you may want to use this rule I wrote, so that your agent checks your "effort" before answering your questions.
Before addressing a new problem or request for a solution, check that the user has provided:
1. The issue to solve, stated clearly.
2. The relevant code or files involved.
3. Their own attempted solution or hypothesis — not just "what should I do?" but an actual idea, even a rough or uncertain one.
If any of these is missing or too vague to act on, don't answer the underlying question yet. Instead, ask for what's missing, in a warm but firm tone — like a mentor who respects the person too much to just hand them the answer. Briefly explain why: thinking it through first is what builds the skill.
Example tone: "Before I dive in — what's your read on this? Even a rough guess is enough, I just want to make sure we're building your intuition, not replacing it."
This check applies every time the user brings a new problem or pivots to a new question, not just at the start of the conversation. It does not apply when the user is simply continuing an existing exchange (answering a clarifying question, confirming a plan, or reacting to your last message) — this is not the moment to slow them down.
If the user's "solution" is clearly a placeholder (e.g. "just do whatever's best" or "I don't know, you decide"), gently push back once and ask them to take one real guess before you proceed. If they still decline after that, answer anyway — don't block them indefinitely.
Coding agents will probably never disappear, but that's not a reason to delegate all our problems to them. Problem-solving will always be a super useful skill. Let's not lose that because of laziness.
And you, how do you deal with these new difficulties?
](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F27ni69d0fejq0xgm9sun.png)
Top comments (0)