Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

General Discussion

Is Python a good option after learning Java?

I'm almost done with my Java library with only Hibernate and Spring(frameworks) left to learn. i started the Python track and was wondering if learning Python would hinder my ability to write Java efficiently?

I really like Java and understand it really well, but I want to learn Python as it can do a lot of automation which I am very much interested in and would definitely love to implement.

I guess, in broad perspective, I'm asking whether I would lose my ability to write efficient code of language X if I start learning language Y?

Any answer is very much appreciated! Thank you!

3 Answers

andren
andren
28,558 Points

I think it will be fine, it's pretty common for developers to learn multiple languages (somewhat expected even), the only time it is likely to cause an issue is if you jump between similar languages while you are still learning the basics of them. But seeing as you already seem to feel comfortable coding in Java, and the fact that Python and Java are fundamentally quite different languages you likely won't run into that issue.

I am someone that (for better or worse) tends to constantly jump between languages when learning, and while it can cause some minor confusion from time to time once you have learned a language that knowledge tends to stick with you.

Of course this is just my personal opinion, I don't have anything but personal experience to back that opinion up, so do keep that in mind.

Thank you!

justin stark
justin stark
32 Points

Everyone's perspective is different. Personally I'd rather be a master of one than a jack of all trades but master of none.

Greg Kitchin
Greg Kitchin
31,522 Points

I'm in a similar position to yourself. I'm doing an open degree, and started Java a few years ago And hated it. I personally find it incredibly clunky and obtuse (having to write a class and 5 lines of code just to print "Hello World" doesn't fill me with joy). I did some Python through the uni as well, and couldn't understand it either, which I put down to their teaching methods (Treehouse works far better for me).

But difficulty in learning different languages? Not really. Making sure you write good notes is essential, but the main ideas behind languages will be the main thing you'll need to grasp. Java is heavily defined by being an object oriented language, Python isn't. But having knowledge of lots of different languages will always help.

Also, another advantage to learning multiple languages is you'll see commonalities, so in theory anyway, you'll be able to learn them more quickly. I dabbled a little in Unity3d, and didn't understand all of some code given (it was C I think, it was a while ago), but because it was a class and looked similar to Java, I could follow at least some of it.

Oh, that's great! Then I guess I'm on the right path :)

justin stark
justin stark
32 Points

If you picked up java, python should be a piece of cake.