3 ms·
Absolutely! In fact, you should try to learn as many languages that have real differences between them as possible. There is something to be gained from a low
by 0x12 15y ago
Absolutely!
In fact, you should try to learn as many languages that have real differences between them as possible.
There is something to be gained from a low level perspective on how a computer operates just as much as there is from higher levels, even if you will not use that in your everyday job.
No point in learning three varieties of the same thing but you get real insight from learning languages that are very different.
C/C++/Java
Python/Perl/Ruby/PHP (puts on flame proof gear)
Lisp/Clojure/Scheme
Smalltalk/?
APL/R/J/Mathematica
IO/Forth/Factor
Assembler (there a many different flavors of assembly)
VHDL/Verilog (not true programming languages but very interesting all the same).
Pick one or more entries from each of the above lines and you'll have a better perspective than if you left that line out.
Of course there are many more options than the ones in the list above, but you get the general idea.
- rednum 15y agoI'd add to this list: prolog haskell/ml/ocaml/f#/
- cageface 15y agoLearning new languages is valuable but consider also that this time could be spent learning a new problem domain. Coding a music synthesizer or a simple web server or learning OpenGL can pay more dividends than learning one more language that you'll never really use.
- tsm 15y agoThough I agree with your sentiment, I strongly dispute putting C and Java in the same category. If pressed, I'd suggest having this: C/non-OO C++ (er, that is, C...) C#/Java/ObjC/high-level C++ I'd also recommend appending: Shell scripting for your platform of choice
- gaius 15y agoThey are both Algol variants, but yeah, you are right.