Is It Still Worth Learning to Code in an AI World?

We recently released some new AI features for the JetBrains Academy plugin. Learners will now be able to use machine translation of course content, theory lookup, and AI hints for Kotlin courses. At first glance, these might seem fairly tame. There are no big LLM integrations, JetBrains AI Assistant is not being marketed toward beginners, […]

Apr 23, 2025 - 11:22
 0
Is It Still Worth Learning to Code in an AI World?

We recently released some new AI features for the JetBrains Academy plugin. Learners will now be able to use machine translation of course content, theory lookup, and AI hints for Kotlin courses.

At first glance, these might seem fairly tame. There are no big LLM integrations, JetBrains AI Assistant is not being marketed toward beginners, and we are even considering disabling AI features in beginner programming courses by default at the request of our learners.

During a time when many companies (including JetBrains) are embracing AI for developer productivity, these choices may seem strange. Shouldn’t students be learning to work with these tools from the beginning? Shouldn’t they be adapting to our new AI world?

Our choice to move slowly and thoughtfully with regards to our educational AI features is intentional and assisted by our incredible research team. We recognize that LLMs can be incredibly useful to aid understanding of new concepts. However, we also think it is important to understand how these tools help and hurt learners, because there is good evidence they have the potential to do both. 

How to learn to program in an AI world part 1: Is it still worth learning to code

In an effort to help guide learners during this time, we wrote four blog posts about learning to code in an AI world. This is the first in the series, keep an eye out for the next ones on our blog in the coming months.

Is it still worth learning to code?

Yes. Aside from its current utility in building software, coding builds computational thinking, strengthens problem-solving skills, and reinforces abstract concepts that are important in many disciplines. Programming skills help demystify the digital worlds we inhabit while giving you the power to actively shape and contribute to them.

Most experts expect AI to augment future programming jobs, not replace them. Although AI-generated code is becoming increasingly prevalent, skilled people still need to review, debug, and take accountability for the quality of said code. How much of a technical foundation will they need to be able to do that? The safe answer is everything a traditional coder knows. Organizations are willing to pay for this level of expertise because, ultimately, deep knowledge and experience serve as risk mitigation in the face of evolving technology.

Even in a future where software development can be completely automated with a prompt from someone with no technical knowledge, programming is an excellent exercise in a specific kind of thinking. In learning to solve problems computationally, we develop new ways of seeing. With this new set of eyes come new ways to make positive change in the world. This applies to both the physical world we inhabit (notice how many daily inconveniences might be solved by a simple program) and the digital ones (notice how software could be made better).

No matter how good the machines get, their adoption is guaranteed to be a long and messy process. Success in navigating this ever-shifting landscape will depend on your ability to adapt to new technology, and robust computational thinking skills will make that process much easier.

What is computational thinking and how can you develop it?

Computational thinking (sometimes called algorithmic thinking) is a name for the cognitive skills we build when we program. It involves breaking down complex problems into smaller, manageable parts, identifying patterns, and designing step-by-step solutions that can be implemented with code and algorithms.

Even introductory programming courses naturally develop basic computational thinking. By writing programs to automate tasks, analyze data, or solve challenges, students learn to think in structured, algorithmic ways.

If you want to level-up your computational thinking beyond the basics and prepare for the challenges and opportunities of this new era, consider exploring courses that focus on algorithms and data structures. While they seem less practical than courses about specific tools and frameworks, the thinking tools these courses develop will last decades longer than any library or framework which is currently in vogue. 

Our educational research team is also using our open-source plugin to build Cognifire, a low-code learning environment to help students develop their computational thinking. Keep an eye on our newsletter for more information about that in the coming months!

Finding the algorithms and data structures courses in the JetBrains Academy Catalog
We offer free algorithms and data structures courses you can complete in your IDE.

If you’re at the beginning of your learning journey, just remember that the challenges and frustrations you encounter when you’re programming are productive in the context of developing these intangible skills and intuitions you’ll need to master programming. Always keep in mind that developing this skill requires practice, reflection, and an openness to facing difficult problems that stretch your mental models.

How will careers in programming evolve with AI?

The general consensus is that developers will increasingly validate, debug, and communicate about AI-generated code. This will require a deep foundational knowledge, since it’s hard to efficiently debug code you couldn’t have written yourself.

At the moment, AI models struggle with broad-scope problems like identifying how changes in one part of a large codebase might affect other interconnected parts. They perform poorly with niche frameworks and tools, lack consistent creativity and deep domain expertise, and only really work if the prompter has given clear and detailed instructions, which is a skill in itself.

With time, it’s true that many of these shortcomings will improve, but which and how much is hard to say. If there is one thing we do know, it’s that automation is not new to programming, and AI is just another form of it. The job of “programmer” has evolved from doing complicated math by hand to punching machine code into cards, to writing assembly languages, then high-level languages – not to mention adapting to new IDEs and general tools like Git. Learning from history, we see that the tools always change, but the opportunities for people with technical knowledge and high-level reasoning skills continue to flourish. 

Looking into the future, we can expect the same dynamic: the robots are best used for repetitive, predictable work, and everything else will be handled by people. Put concretely, gone are the days of abundant programming jobs with relatively simple, repetitive, and mundane responsibilities.

So, does that mean junior developers will be more easily replaced by AI?

While it’s true that roles and duties may change faster for inexperienced programmers than for others, that is because more (but not all) of their responsibilities involve wrestling with the boilerplate code that AI can generate most reliably. This doesn’t mean juniors are going to be replaced by AI – it just means they might spend slightly less time writing code, and more time thinking about it.

This is the first post in our series How to Learn to Program in an AI World, keep an eye out for the next ones on our blog in the coming months.