This content originally appeared on Level Up Coding - Medium and was authored by Dylan Oh

For a software engineer coming from a background in strictly typed, high-performance languages like Java, C++, or Go, this can feel a bit… wrong. We are taught to obsess over performance, concurrency, and type safety.
So, it feels like a massive contradiction:
Why has the most computationally demanding field (Artificial Intelligence) chosen a language known for being slow and interpreted?
If you are thinking of pivoting into AI, you might be asking:
“Do I really need to learn Python? Can’t I just stick to my trusty Java or Go?”
I asked myself the same thing. After digging into it, I realized that while you can use other languages, there is a particular reason why Python won the war.
And the reason isn’t just because it’s “easy.”
It’s about Cognitive Load.
The Steering Wheel vs. The Engine
The biggest misconception about AI is that it is “running on Python.”
Well, it isn’t.
If you look under the hood of deep learning frameworks like PyTorch or TensorFlow, you won’t find Python doing the heavy lifting. You will find highly optimized C++ and CUDA (NVIDIA’s GPU programming language). These are the engines crunching matrices at lightning speeds.
So, where does Python fit in?
Think of an F1 Race Car.
- The Engine (C++/CUDA): This is the beast. It burns fuel and provides raw power. It is complex, dangerous to touch while running, and requires deep engineering knowledge to build.
- The Steering Wheel (Python): This is the interface. It allows the driver to control the beast with simple movements.
Python won because it allows AI researchers to focus on the ideas, not the memory management.
Peter Wang, the co-founder of Anaconda, put it perfectly:
“You don’t want extra cognitive burden. You don’t want to pay attention to details that don’t matter. But when you want to tweak something, you can easily go and turn a screw.”
Take the Transformer architecture — the breakthrough behind ChatGPT and Gemini. The core logic of a Transformer fits into about 100 lines of dense Python code.
If you tried to express those same ideas in C++, handling arrays, loops, and memory pointers manually, it would expand into a “gnarly” mess of thousands of lines. It becomes unapproachable.
Python allows us to express complex math as simple lines of code. It is a Swiss Army Knife for slicing data and feeding it into dense linear algebra, without requiring the researcher to be a C++ expert.
Can I Use Java, Go, or Rust Instead?
This is a valid question. Many companies use Go or Java for their backend systems because of their speed and stability. And yes, you absolutely can build AI applications in these languages.
But here is the reality check: It’s about the Ecosystem, not the Syntax.
In the AI world, Python is the “First-Class Citizen.”
- Network Effect: Because it was the first choice for scientists (thanks to libraries like NumPy appearing way back in 2006), the entire ecosystem grew around it.
- The “Lag” Zone: If you choose to stick to Java or Go for AI Application Development, you will often find yourself waiting for the community to port new features. When a new model drops on Hugging Face today, the code is in Python.
As Peter Wang noted, even if you invented a language better than Python tomorrow, you would have to beat the tens of millions of people who already know how to debug, deploy, and build tools for Python.
So, while you can fight gravity, using Python makes the journey significantly smoother. It allows you to focus on the logic of your AI product rather than fighting with integration tools.
So, Do You Need to Be a Python Expert?
Well, I didn’t want to pause my projects for six months just to master the nitty-gritty of a new language.
Here is the good news: No, you don’t.
If you look at the job descriptions for “AI Application Engineer” today, they are not looking for someone who knows the dark magic of Python meta-programming or how to optimize the Global Interpreter Lock (GIL).
They are looking for someone who can use Python as Glue.

I call this the “Minimum Effective Dose” of Python. To be effective in building AI apps, you just need to be fluent in these specific areas:
- Basic Syntax & Data Structures: Lists, Dictionaries (extremely important for JSON handling), and Comprehensions.
- API Interaction: Being comfortable using libraries to talk to LLM APIs (like OpenAI or Gemini).
- Data Handling: Knowing your way around pandas to clean and structure data before feeding it to an AI.
- Modern Python (Type Hinting): This is crucial. I am currently using Pydantic heavily, which relies on Type Hinting to force AI to output structured data (yes, structured data!).
You can safely ignore the complex, low-level stuff for now. Your goal is to build, not to reinvent the wheel.
The Verdict
If you are a software engineer coming from another language, don’t look at Python as a step down in performance. Look at it as your access pass to the AI ecosystem.
It bridges the gap between human thought and machine intelligence better than anything else right now.
So, don’t worry about becoming a “Python Expert.” Just focus on becoming a builder who knows how to use the steering wheel. The C++ engine underneath will take care of itself.
If you find this insightful, do consider subscribing to this newsletter. I will be sharing more about my journey of building AI apps and the specific Python patterns I am using in the coming weeks. But probably I will talk about Pydantic first this weekend.
Cheers.
Why Python Won the AI War was originally published in Level Up Coding on Medium, where people are continuing the conversation by highlighting and responding to this story.
This content originally appeared on Level Up Coding - Medium and was authored by Dylan Oh
Dylan Oh | Sciencx (2025-11-25T16:57:00+00:00) Why Python Won the AI War. Retrieved from https://www.scien.cx/2025/11/25/why-python-won-the-ai-war/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.