this post was submitted on 03 Jan 2026
81 points (95.5% liked)
Programming
24397 readers
301 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I think it really depends. If you do embedded/microcontroller stuff, C/C++ is often the only alternative. That's why I use C/C++ at least.
But I think any serious programmer uses half a dozen languages on a daily basis anyway.
A half dozen daily? All I can say is your perspective strikes me as highly industry-dependent.
A FE dev usually has JS/TS, (S)CSS, bash (for tooling scripting), often some kind of templating language, sometimes a separate language for tests (e.g. Java/Python+Selenium).
A BE dev stack that I've had at a few jobs so far: Java + Kotlin as the main dev languages, Groovy+Spock for tests, a templating language for emails, bash for tooling scripting, that abysmal templating language that helm charts use, SQL, Elastic, plus a few random single-purpose languages you need for some random tool in the stack.
If you do full-stack, add both together. And then add languages you need for hobby work.
On a regular day I easily hit half a dozen languages at least briefly. Maybe not as a junior dev, but after a few years in the industry, that's not uncommon.
Unless of course you are a C# or Swift dev, then it's totally possible to stay within your singular language-specific bubble for your whole carreer.
I do C++. And mostly, there are 2 languages daily.
C++withQML, when doing GUIC++withJSONfor DB related stuffXMLfor many other thingsXMLwithCSSfor UI, but here, theXMLpart is mostly offloaded to a GUI toool.Unless you are including
CMake,qmakeandUnix Makefilesof course, but that's not an everyday thing either.Tbh, I would classify everything you do regularly at work as your daily work.
The point remains the same: You need to know all these languages. You cannot say "I'm just doing DB stuff today, so I can totally forget QML and relearn it tomorrow when I have a GUI ticket."
Well, I guess that's one way to put it.
But in that case, I would have 3 years of Python experience, which was <5 hours.
Same experience here, with 20 years of experience in the industrial / embedded field.
Rust for embedded targets has made rapid progress. In fact, if I want to run command-line applications on my Linux/Sailfish PDA, the easiest way is to cross-compile a Rust app.
Also, things which C was formerly used for, like writing to I/O memory registers, is easy in (unsafe) Rust. It was made for that.
Rust is also beginning to be used in satellite and space engineering.
What of course still needs to catch up is architecture support. But once gcc can compile Rust code, most relevant targets are available. Especially since one can call platform support libraries via the C ABI - and Rust can easily be called from C.
Tbh, that a good language can be used in a context doesn't mean it's a good choice.
Java, Python, C++, ... can run in WASM and thus in a browser, but if you need anything, all examples, all libraries and everything else will be in JS/TS. Pretty much any language in existence is better than JS/TS, but hardly any language is better for browser scripting.
So for a language to really make sense to be used in a context, you need all the supporting stuff for that too.