this post was submitted on 15 Jan 2025
32 points (100.0% liked)
CSCareerQuestions
1004 readers
59 users here now
A community to ask questions about the tech industry!
Rules/Guidelines
- Follow the programming.dev site rules
- Please only post questions here, not articles to avoid the discussion being about the article instead of the question
Related Communities
- !programming@programming.dev - a general programming community
- !no_stupid_questions@programming.dev - general question community
- !ask_experienced_devs@programming.dev - for questions targeted towards experienced developers
Credits
Icon base by Skoll under CC BY 3.0 with modifications to add a gradient
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
Some more explanation that I forgot to add about embedded applications: I wrote a few embedded applications but it's not my main job and I have little experience with that. It seems to be polarized somehow: either you write old spaghetti-like C code tied very closed to the hardware and you won't have a good time, or you can write higher-level code which can be more fun (modern C++, Rust, or Zig).
I've been writing C++ for more than 20 years and I hate it, but I hate other languages more. It's very complicated though and I do not recommend it. Modern C++ can still be easy and simple, but you have to know all the rules and it takes a lot of time and experience.
Your conclusion about Rust or Zig is good IMHO. Both could be very good languages for embedded systems. I would not use Go though for that since it is more of a competitor to Python, it is too high-level, and Python is more professional nowadays thanks to new tools like "uv." Even if Google tries to sell Go as a systems' language, I still see it as a "compiled" scripting language that has less libraries than Python, which is why I don't make the switch yet.