2025-11-22 Why I Focus on Java, Rust in the AI Era
Right now AI writes more and more code. Because of this, using statically typed languages is even more sane. Languages like Java and Rust give clear rules and strong checks.
I also prefer frameworks that work on a higher level. For example, 20251123122633⁝ SpringBoot 4.0.0 gives many features out of the box: better HTTP client, better observability, cleaner modules. This reduces low-level code and lets us focus on business logic. I think frameworks will keep going in this direction. They should also be easy for AI to use, but I am not fully sure yet what “AI-friendly Framework” really means.
For my own work, I feel that I only need only two languages:
- Java - for business systems, backend logic, and large projects.
- Rust - for very safe, system-level or performance-critical parts, and for fun projects.
Maybe
- TypeScript / javascript - for everything in the frontend. But to be completely honest, I feel like frontend part could be almost completely offloaded to AI. Or even the simple usage of higher level frameworks like https://nextjs.org/ etc .. Ai here can scaffold something useful much better then me.
Why not python:
- Can we refactor safely?
- Can we see errors early, not in production?
- Can we keep architecture clean over years?
However I admit AI is great with python so still ok for:
- quick scripts (through AI)
- experiments (POC / POCs Swarm through more advanced AI tools )
I am not sure I need to understand Python on a deep level. For my work, it is probably enough to know:
- basic syntax
- how to read simple Python code
- how to run a script and install packages
Most of the heavy work in Python can be done by AI tools. I just need enough Python to review the code, spot obvious problems, and connect it with the rest of my system.
Side note:
Also, big blocks of modern monoliths can destroy your company in the AI world (or at least are a high risk), because you should aim to have components you can rewrite quickly - modules with clean interfaces. AI will struggle with monoliths and badly written legacy code. So small components are even more important than ever.