deadlyRants481852dPython will definitely not be replaced soon. There is almost no other language that's as easy and intuitive to learn.
If you want to learn a secondary programming language just pick one and do it. Doesn't have to be a trendy one.
Root6711952dRust is probably the next big one. Might take awhile, though, since it’s not as shiny.
Geoxion53452dA hot language that can be used for low and high level programming? Yeah, Rust is great!
You can learn more about functional concepts as well with it.
IntrusionCM327352dTry it out. If it feels right, use it. Otherwise leave it be.
"Worth Picking" is usually anything with which you are compatible / comfortable.
Limiting yourself to one or two languages isn't wise.
amatrelan71852dWell python is class based oo language, so perhaps it's good to take something opposite of it. This helps to develop understanding differences of coding patterns and helps to understand when use what. Rust is good as many have already said and I also recommend that, or erlang
Root6711952dWhat @IntrusionCM said.
Find languages you like, learn them, and use them.
Pick up everything, especially if it feels strange and alien. The more different languages you know, the better off you will be.
Pick up C for low-level and learning memory management.
Pick up Rust or Haskell for learning functional programming (FP) and type safety. It’s also useful for high-level applications. While Rust is very speedy, Haskell is meant for precise code, not fast code; keep that in mind.
Pick up Ruby to see how beautiful and intuitive and extensible a language can be — and readable.
Pick up Lisp to learn about completely different syntax and patterns, and postfix. This is also useful for FP.
Pick up Assembly to learn about exactly how a computer really operates. Registers, interrupts, memory management, paging, per-clock optimizations, etc. doesn’t have to be x64; I would very much recommend something simpler like z80.
Pick up python to learn about machine learning and by extension, linear algebra and calculus.
Pick up ErLang to learn how fault-tolerant code can be.
And the best part:
Most of these concepts apply to other languages, too, so you can apply what you’ve learned. And if you really want, you can write your own language that incorporates the best of what you have learned. That’s how Ruby came about; Rust, too.
magicMirror705752d@shadowClaw11 whatever @Root said.
My personal view:
- learn one hard typed language like c, c++, java, c#, go, rust or similar.
- learn one script - bash, sh, python, whatever.
example - Python and C++ covers all 3.
once you control these basics - picking up more is really easy. each lang has it own gotcha's and syntax - make sure you know them!
ShadowClaw114751dThanks for all the advice. It was really useful.
@unclesam It isn’t a replacement for C, and never will be. Why? Kernels. It probably won’t replace C++, though it might eventually. C++ is kind of a mess.
OR asked what’s hot; I answered.
@unclesam You have no idea what you’re talking about.
Rust is not like D. It also competes more with C++ than C. Zig is the main C alternative. I don't know where you see money paid to create hype around Rust.
"replacing C is easy to do"
lmao keep on dreamin'
I recommend actually taking a look at Rust instead of ranting about it with unbased crap. Especially as you already seem impressed with C++'s raii.
Geoxion53451dMan, if you like modern C++, then you'll definitely like Rust.
The only reason to really dislike it, is that the compiler often says you're wrong while you think the code is perfectly fine.
But the thing is, the compiler is always right.
You may think that Rust is very small still, and that's mostly true, but it's already bigger than D. Most importantly, big companies like Google, Facebook and Microsoft are already using Rust.
I don't think Rust will die anytime soon. Whether it'll 'replace' C or Cpp, only time can tell. But it's not an insane bet IMO.
@M1sf3t If I’m being honest, I dislike Java and its ilk. But I agree there is always something to learn.