ai newsFr., 23. Okt.
EilmeldungAnalyse von 471 Claude-Code-Sessions: Wohin sechs Milliarden Tokens flossen

I'm Learning to Code in the Age of AI. Is That a Problem?

“Adapt or die.” That phrase perfectly sums up the unstable software engineering industry in this age of AI. Whenever we set aside the fear of AI taking our jobs, we’re often met with the same reassurance: AI isn’t replacing developers; developers who know how to leverage AI will come out on top. An

dev.toFreitag 20:40 · 23.10.4 Min. Lesezeit
Bild: dev.to

“Adapt or die.” That phrase perfectly sums up the unstable software engineering industry in this age of AI. Whenever we set aside the fear of AI taking our jobs, we’re often met with the same reassurance: AI isn’t replacing developers; developers who know how to leverage AI will come out on top.

And sure, that sounds reasonable for senior developers with years of experience and solid skills to back them up. But what about junior and entry-level developers, myself included? How do I possibly leverage AI to become a better software engineer when the foundation hasn’t been built yet?

Before I start, it’s probably best to offer some context. I’m a full-stack developer currently focused on web development, though I plan to expand my skill set down the road. I’m still an entry-level/junior dev, and my only “working experience” so far comes from a remote internship I recently completed at a somewhat shady company.

Now, it should be obvious that I still have plenty of room to grow, both in terms of my technical skills and actual work experience. But that’s exactly the problem. With how volatile the industry is right now, thanks to AI and the aftermath of post-COVID overhiring (and now layoffs), being at the very bottom of the software development career ladder isn’t exactly a great position.

Despite all this, I’m still learning to code manually. According to many experts, though, coding by hand is dead. What matters now is having “taste,” making high-level decisions, and understanding trade-offs while letting AI handle the “boring” part: implementation.

That sounds great. Until you consider that those skills and that judgment come from years of learning and experience, often gained on the job. You can’t reliably judge an AI’s code quality or spot its flaws when you don’t yet understand what good code looks like.

Whether for better or worse, it's clear that AI has changed everything. I'm not particularly against artificial intelligence (GenAI, to be specific), though I'm quite aware of its numerous downsides.

When it comes to learning to code, I actively use AI as a learning tool. It helps me break down obscure concepts, provides coding challenges, and even points me toward useful resources. Whenever I get stuck on a problem or confused while debugging my code, getting help is just a click or prompt away. And that, in itself, is the problem.

I've come to realize that solving problems doesn't automatically make you a better programmer. The friction involved in solving them matters just as much. Taking a problem, working through it, deeply thinking, making mistakes, and eventually finding a solution helps develop the problem-solving skills software engineers need.

But with a handy assistant always within reach, I've made it incredibly easy to bypass that friction, even when it's exactly what I need. It's like being stuck in tutorial hell, except somehow worse. I get a false sense of progress that looks solid at a cursory glance but crumbles when put under real pressure.

Outsourcing your intelligence to AI is one of the worst things to do. Letting tools like ChatGPT or Claude handle our thinking, problem-solving, and decision-making actively weakens our “mental muscles” due to lack of use.

With AI at my side, I sometimes solve problems without giving them much thought. I accept its answers without much questions, and that makes things harder when the assistant isn't there. I start overthinking, doubting things I genuinely know, and struggling to recall even basic concepts I haven't practiced in a while.

A quick search led me to the concept of cognitive laziness: the tendency to avoid putting in mental effort when an easier alternative is available. Over-relying on AI can encourage this habit, particularly when we let it do the thinking instead of using it to support our own. It’s a horrible cycle. The more we depend on AI to solve problems, the less practice we get solving them independently, which can make us even more dependent on AI.

In my own case, I sometimes struggle to explain code I've written with AI's help. Adapting it to changing requirements can be difficult because, while I understand the overall idea, the actual implementation feels foreign to me.

Most developers who embrace the AI boom argue that it “lets them skip the boring part of typing and focus on high-level decisions.” Well, I actually love what they refer to as the boring part. Thinking through problems, typing out code to solve them, and simply enjoying the logic feels great to me.

So, even if it makes me feel slower in the short term, I'll try to avoid reliance on AI tools. For now, I'll attempt to solve problems myself, thinking deeply when I'm stuck, rather than relying on some tool, and take the time to understand an implementation instead of blindly accepting it.

Using AI to speed up as a shortcut feels like strapping a rocket to a horse-drawn carriage. Sure, it'll go faster, but how long before the whole thing falls apart? And if that becomes the norm, I’d have to ask whether I’m still learning software development or signing up to supervise AI.

Quelle: dev.to (dev.to). Original öffnen