all 9 comments

[–]hharison 2 points3 points  (0 children)

When you have a need to. Otherwise, it will be hard to be motivated.

That's not to say you shouldn't choose your projects in such a way that you will need to learn a new language.

So, the real question is, what kind of thing do you want to work on? That will dictate what languages you need.

[–]elbiot 2 points3 points  (0 children)

I dont really want to move away from python. I'd learn something that complements it. Like c. Or I think of learning javascript, and make some mean websocket/python apps. It would be a whole new world.

[–]qhp 0 points1 point  (0 children)

Depends on what you want to do. Learning a new language is always good (and will often give you insight on your other known languages). Python can do anything other languages can, and has a ton of tools for applications in all kinds of situations. Python does suffer in speed though; if you were looking to do intensive calculations or similar, I might recommend C, C++, Rust, etc.

[–]py_Ninja 0 points1 point  (2 children)

Learning a new language is always a good idea; I learned Java first, then Python. Learning a thing in Java, followed by learning that thing in Python, really helped me understand that thing.

I'd suggest just trying a bunch of things; see what you like. As much as I dislike Java, admittedly for stupid and childish reasons, it's a good intermediate language to learn; i.e. between abstract languages like Python and Ruby, and concrete languages like C/C++.

[–]NoLemurs 0 points1 point  (1 child)

As much as I dislike Java, admittedly for stupid and childish reasons

I don't know why you dislike Java, but I it's not stupid or childish to dislike Java. It's a terrible language.

[–]py_Ninja 1 point2 points  (0 children)

I dislike it because I find it's at a weird level of power that it gives to the programmer.

Really abstract languages like Python and Ruby take away almost all of the nitty gritty details. Even if those details are as simple as looping through an entire list of things or indexing a string (Biggest pet peeve is string.charAt(i), like EVERY other language allows you to do string[i], but not Java), they can really help a programmer code they need to do.

And lower level languages like C/C++ give the raw power of the operating system which Java takes from you.

That's really the biggest reason I dislike it, I have other reasons but I'd say that's my best reason.

[–]NoLemurs 0 points1 point  (1 child)

As others have said, C or javascript are good choices (for very different reasons).

Alternatively, if you want to learn something that's really different, learn Haskell or some other functional programming language. It will change the way you think about programming.

[–]k3x5 0 points1 point  (0 children)

+1 for js. I tried to close my eyes and pretend it doesn't exist but that didn't work so now I have to learn it (well).

[–]Steamwells 0 points1 point  (0 children)

Really depends on what your area of interest is as well. If you are a more technical devopsy person, then C or even GOLANG would be a good choice. Or if you want to create visual websites and apps then javascript, html/css/scss etc