A few months ago, I had an interesting conversation with a friend. We were discussing how beneficial or detrimental using AI agents for coding might be to our individual intelligence. He stated that using AI for coding might make one lazy and could diminish one's learning abilities; he cited recent studies suggesting we are getting dumber. I understand where this observation comes from, but my experience has been quite different. In my opinion, two things underlie this topic.
How hard or easy it is to acquire new knowledge.
How we keep our brains in good shape to actually think.
My grandpa was an extraordinarily wise person. He was a doctor, an educated mind, able to remember many things (from poems to songs to science, history, or medical facts).
He always needed to consult a book when he did not know something exactly. For example, whenever I visited a place or traveled, he immediately took one of his good old paper encyclopedias and searched for every town I visited or every fact he did not know so he could acquire that knowledge. He took every opportunity to gain new knowledge. I was happy to always be there, listening to whatever he wanted to explain to me.
Not only this, he was always actively keeping his brain in shape. I used to see him performing math on a napkin, and when I asked him what he was doing, he always answered me: “Keeping my brain in shape.” One day, he told me that the brain is like another muscle, but instead of needing physical exercise, it needed to solve problems and be used to stay in good shape.
When working in such an intellectually and creatively intense job as a software engineer, I tried to mimic what my grandpa used to do.
Whenever I find a concept I do not know, I often search for it on the internet so I can quickly learn something new. Perhaps that is why I always felt very drawn to hacker ethics regarding knowledge.
When it comes to keeping my brain in shape, instead of solving math problems on a napkin, I try to find plenty of "excuses" to solve software problems. These are not math problems, but rather software ideas I try to solve to push myself out of my comfort zone. In other words, I’ve started focusing more on the big picture and zooming-out.
I am quite different from my grandpa; he was very intellectual, and his approach to learning centered mainly on books. In this regard, I differ: I need to experiment first, then read. I need to get my hands dirty to understand concepts; only then is my brain ready to absorb deeper knowledge related to what I have tried. And, friend, these are the best times for that. Nowadays, you can simply use an LLM in plan mode and a brainstorming skill to explore any crazy idea you have, then execute, then learn something new. Maybe the idea was not so good? Maybe the execution was not the best? Perhaps you gain something interesting? In any case, this enables anyone to prove ideas right or wrong much faster and gain knowledge that otherwise would take weeks, if not months, to acquire.
This last year I started many projects: a slide presentations editor, a reference collector management tool, a professional photographer’s platform, and finally a game! Each of these projects taught me a huge part of product creation that I had not been exposed to before.
Now with agentic AI programming, you do not really need to know the implementation details that much. It is true that not knowing them makes reviewing and fixing something an AI agent messed up harder, but often, the agent itself can debug, figure out a better solution, and implement it (if you know how to guide it in the right direction, of course).
Programming this way doesn't mean you lose something in the transaction. Have you considered that you can learn many things while you create? Nothing stops you from opening another AI agent CLI and asking questions about what the running one is doing. After all, you have plenty of time while you wait for build mode to finish. If you have not tried yet, next time your agent does something you do not fully understand, open a parallel agent and ask what this is about; try to feed as much context as possible, ask for tradeoffs, etc.
Additionally, I use "plan mode" as much as possible! That is where the questions and redesigns become interesting, and I can learn from the process too. Most importantly, I can choose the best solution for the problem I am trying to solve.
And finally, I never forget traditional ways to keep my brain active! In my case, I try to read as many books as possible, the ones that force you to think outside the box, :)
They are vital to always have some food for thought.
I love you grandpa, I owe you so much <3