I have been learning python for a year and I think I can code in python! I just need to work on projects to advance my skills. Lately I have been thinking to learn Java...so I took advice from my friends. They said I will have tough time learning Java because I have learned python before. They said I should have learned Java first and python later... maybe I messed up 😅😅
Is it true? Will it really be that difficult?😩
Python is my first language and I am thinking of learning Java now. Can I?! Please share your opinions
Thanks in advance 🤗🤗
I will just be to the point, I just find it fun to learn how to code and want to be able to independent create code create things without error. There’s an interval between where I learn hello world then language I don’t understand. It’s very small and I don’t know where. Is it all important to learn?
Videos
Hi,
i know Python pretty good and need to learn Java for a job. Is there a learning resource written for folks who already know programming concepts and just want to know the Java specific stuff?
Hi! I’ve been trying w3schools and Codeacademy but when I try to program it I get so many errors. How could I improve my learning?
I am currently attempting to speed learn python because I need it for a shadowing opportunity that I have tmr. I have java knowledge, and I know basic Python. Does anyone have any tips or resources that I can use?
I'm a 1st year college CS student and have programmed with python for a semester. I am very interested in learning about java, but I can't find a good java tutorial amid the sea of worthless "LEARN JAVA IN 30 SECONDS" videos. Where should I begin?
I have set up an IDE already- I just want to get into learning the syntax and uses of java.
Hi all. I am a self taught learner of about 4 months now. In my last semester of school (business major), I took intro to programming and loved it. Really wished I did CS instead. I ended up emailing my professor from that class and asked what his thoughts were on self learning.
He told me to learn Python and Java and to have some kind of structure like an online course. Read the pragmatic programmer, and fluent python/effective Java.
I started with python and eventually found the Odin project and switch gears to js and web dev stuff. I am struggling to find a path and stick with it.
Why would my professor recommend those two languages to start with? Do these languages really relate to web dev? What kind of job opportunities can python and java lead to?
Hi,
I am a Python developer, I am programming since last 2-3 years and I want to learn Java for my next career opportunity.
Which resource would you prefer me to learn java from?
The same as for everybody else, see u/Automoderator's comment and take the MOOC.
Python is so fundamentally different to Java that you will have to relearn a lot of things, so it is best to start from scratch.
Even seemingly simple things are implemented differently in Python to Java, a simple for loop. In Java, it is a traditional for loop; in Python, it is basically a for-each loop.
Loops with else clauses. Great with their use cases. Not existing in Java.
Slicing, which is one of Python's greatest strengths, does not exist in Java. At least nowhere in a way that comes close to Python's capabilities.
Python can do OOP. Java has to do it. In Java, everything is in a class. Everything has to be in methods. In Python? Do what you want and what fits best.
Global variables? No-brainer in Python. Not existing in Java.
List comprehensions, generators, etc. Not existing or completely different in Java.
This goes on and on and on.
Don't get the above wrong, though. I am not dissing either language. Either is great. I like both languages very much. Still in the process of improving my Python skills, but my Java is pretty solid. I also had to basically start from scratch when learning Python despite being a professional programmer since more than three decades and despite having learnt, being fluent, and using over 10 different (some entirely different, domain specific) languages.
As a Python programmer, you are used to think in a very different way. I can see that myself already. You will get the feeling that Java is clumsy and verbose. And honestly, it is compared to Python. Yet, that is deliberate. It gives additional safety and stability. You will feel Java being more restrictive. Again, a deliberate and conscious decision.
It seems that you are looking for resources for learning Java.
In our sidebar ("About" on mobile), we have a section "Free Tutorials" where we list the most commonly recommended courses.
To make it easier for you, the recommendations are posted right here:
-
MOOC Java Programming from the University of Helsinki
-
Java for Complete Beginners
-
accompanying site CaveOfProgramming
-
-
Derek Banas' Java Playlist
-
accompanying site NewThinkTank
-
-
Hyperskill is a fairly new resource from Jetbrains (the maker of IntelliJ)
Also, don't forget to look at:
-
The official Documentation
-
The official Java Tutorials
-
Our community resources thread
If you are looking for learning resources for Data Structures and Algorithms, look into:
"Algorithms" by Robert Sedgewick and Kevin Wayne - Princeton University
-
Coursera course:
-
Part I
-
Part II
-
-
Coursebook
-
Algorithms 4th Edition
-
Your post remains visible. There is nothing you need to do.
I am a bot and this message was triggered by keywords like "learn", "learning", "course" in the title of your post.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
Hello guys, I need some suggestions to learn Python. Recently My boss assign a Django-based project to me. But the problem is I don't have any experience in Python. I tried to follow documentation and tutorial on the Python official website.
I found it is not easy to learn Python when I have experience in java for several years.Because Java has a very strict typing and concepts that are general solutions to any complex problem.
Python tend to abstract these concepts and allow code that might be better at readability, but this comes at the cost of not having good IDE support and more importantly is more prone to error.
What are some recommended learning methods I should follow?
learning new paradigms and writing idiomatically in another language will make you a better developer overall. you should look forward to this opportunity rather than fretting it
sloppy coding is what leads to errors, not the language. just relax, be pragmatic, and you'll be fine. millions of people use python without issue. there's nothing to worry about
as far as IDE support goes, pick up pycharm (or if you already use intellij, install the python plugin) or visual studio. use type hints, and though not as solid as for a typed language, it takes you pretty far
this is a bit old, but it's a good starter: https://dirtsimple.org/2004/12/python-is-not-java.html
dont skip this: http://docs.python-guide.org/en/latest/writing/gotchas/
Raymond Hettinger, one of the Python core developers, has an excellent presentation for experienced C/Java/etc programmers coming to Python, Transforming Code into Beautiful, Idiomatic Python.
Does anyone have any recommendations for material pitched a experienced developers wanting to get up-to-speed with Python quickly. Assume I can already read and write complex code in another language but have never used Python before.
When I was in college, I got my CS degree when the primary language being taught was Java. I am fairly comfortable with Java as a language, but I left the field in 2010. Now it seems like Python is the preferred language, so I am attempting to learn it to hopefully find some sort of part time work.
I am curious where the best place to start would be. I have looked up projects to learn python online, but many seem focused on teaching basics of programming and algorithms and such, which I don't really need given my background. I want to learn the ins and outs and specifics of python as a language.
Any advice?
I'm currently pursuing a Master's in Computer Science and started earlier this year. As this semester wraps up, I've completed an "Introduction to Programming" course in Python. Next semester, I’ll be taking a course on Object-Oriented Programming that requires knowledge of Java.
I understand that learning a new language is easier once you have a solid programming foundation, but I’d like to get a head start. Does anyone know of any online short courses specifically designed for those transitioning from another programming language like Python?
Thanks!
Nebulous and strange question, sorry.
I am a machine learning engineer. 100% of my job is done in Python (and shell, of course). So if I never learn another language, I’ll probably be fine for the foreseeable future.
But I want to learn other languages, both just for fun and because I think it will make me a better coder overall. For some reason Java calls me. But I can’t really explain why, nor could I tell you what I’d use Java for once I learned it.
So for the Pythonistas among us who also know Java, how has Java enriched your life? What do you use it for? How (and how often) do you integrate Python and Java within the same project?
Basically, convince me why what I'm already planning to do (=learn Java) would be not just enriching, but actually useful. Bonus points if you have anything to add here that’s specifically relevant to machine learning, since that is my path.
What are some important things to know going from a dynamically typed language like Python to a statically typed one like Java? Are there any good Python practices/habits that are bad in Java? Are there any good resources out there to help you get acquainted with a new language quickly from the context of your old one?
Finally, are there any things to keep in mind moving from small time start-up dev work to team-based SaaS FAANG dev work? Most of my experience I worked on projects by myself and I am quite nervous about this new aspect.
Thanks!
I started the MOOC.fi course, but after 2-3 sections it felt like a waste of time because I already knew these programming concepts. What resources (mainly books) would you suggest to me? I would like to skip the parts I know already so I don't lose time. Thanks!
Keep going. Really.
You will miss a lot of the peculiarities of Java of you skip things.
Java and Python are very different. Even something as plain as a loop works differently in Python (more like a for-each loop) and in Java (traditional for-loop).
I have similar experience. Now I am reading "Java: The Complete Reference". Not sure how optimal it is if you need to learn as efficiently as possible, but it's a good read and I'm enjoying it.
Cause i start learning Python and its coding tasks are so difficult((
I just started a new job last week and my task is to add a new feature to a complicated Java plugin. I haven’t coded in Java before... I am familiar with OOP but Python doesn’t really rely on it to the same extent as Java. I’d appreciate any resources geared towards experienced developers needing to pick this up fast, particularly focusing on the more esoteric/Javaesque (what’s the analog of Pythonic?) features as opposed to another one of the million “this is how you do a for loop in Java.”
For example, today I was banging my head because there was a function that took in a variable and did a bunch method calls to n the variable. The variable type was an interface and all the basic Java guides say you can’t instantiate an interface so I just didn’t get what’s going on until I understood that it means that any object type that implements the interface is permitted (what a terse way of saying that). So learning these kinds of features is especially valuable.
I've got several months of Python under my belt and have written a few smaller programs ranging from 50-1000 LOC, things like text adventures and web scrapers.
I'm trying to pick up Java and libgdx so I can start coding for android development, but honestly feel like I'm banging my head against the wall. After a month of studying off and on, I don't really feel like I'm getting anywhere, the knowledge isn't clicking for me. I don't expect to eb a pro in a month, or even a year, but I feel like after a month I should be able to at least put together something basic, like the text adventure I did previously. However, I feel like I can't, the knowledge isn't there yet.
Part of it is the highly verbose syntax, which makes it feel much slower to put together something functional, but also the lack of the interpreter to test ideas and methods is frustrating, I really leaned on the interpreter whenever I had a problem in Python, and I'm not sure if there's a similar resource I can use for Java.
Besides that is the syntax quirks, and the frustrating feeling of starting over from scratch because I'm not in the habit of writing Java code, not very familiar with the syntax or the "Java way" of doing things.
Right now I feel like I'm spinning my wheels. I've been reading a ton for Java, but it seems like I've spent much less time actually coding than when I was learning Python, and resources for learning Java seem much more scattered, there don't seem to be any great tutorials to get you off and running. The Official documentation and tutorial is quite good, but doesn't seem to build on existing knowledge, just lays things out one at a time in the trails, unless I'm missing something, and that's been the best resource so far, but still frustratingly dense for a beginner.
Is there anyone else who transitioned from Python to Java who might lend me some tips in overcoming my frustrations in this? Any thoughts?
EDIT - Everyone here is so awesome, I really appreciate all the helpful replies. Also, it seems like the consensus is to give Intellij a shot since I'm not thrilled with Eclipse and have experience with PyCharm, also by JetBrains, and that the free version won't give me problems or major limitations.
Thanks so much all of you. I'm gonna get Intellij and try to spend some time this weekend really plugging away at it, and start redoing some of my Python projects in Java as I have the free time to do so.
EDIT 2 - Okay, Intellij IDEA is so much better and easier to work with than Eclipse. No offense intended to anyone who actually likes Eclipse, but I hated it.
Hi! I'm a junior DevOps engineer and I would like to start developing backend too. I already know intermediate python and worked a little bit with django and I would like to dive deep into python and learn it well.
I asked my supervisor for his advice and he thinks that it's better for me to learn Java first. From his point of view Java is more technical and I can become a better developer by learning the fundamentals with it (like polymorphism, interfaces, data types). He considers python as an uneffective shortcut to learn bad software development practices.
At first he convinced me with his argument but then I documented myself better and I saw that even python has all of those concepts, so I feel like if I'm not lazy and l study python well I can achieve the same expertise I would get with Java.
Since I want python to be my main language I'm essentially very skeptical in using my energies in learning java from zero while I could dive deep in python and get solid with it. It's not like I only want to know python overall, but reading a book of 1600 pages like "learning python" takes time and effort and I feel like I want to make that effort on python, not java.
What do you think about it? I could really use your advice, thanks a lot in advance.
After December we will move away from Assembly at work (I work there as an apprentice and they want me to learn it, they don't actually use it). I get to choose between Java and Python. I will learn the other one later anyway, but in the beginning, which should I take? I work there as a Software developer with only very little pre knowledge.
Python is more like a handy swiss army knife Java is full blown war Tank. I would prefer java.
I had a lot of luck learning the easier things like decision statements and loops with python, but learning OOP and some more complex things was a lot easier to understand with Java. Don’t think you need to learn just one, focus on the concepts!