For begginers, is Java better than Python?
These two languages have been called easy to use, but i want a second, third, fourth and many more, opinions. Also any comments regarding Ruby are welcome as well
Observing members:
0
Composing members:
0
8 Answers
I don't have any experience with Java, but I can say that Python is the cat's meow. Python is clean and easy to understand, has a zillion libraries you can take advantage of, and has some cool projects going on depending on what you want to do (e.g., the Pylons web app framework).
I have friends who rave about Ruby, but I don't know it well enough to offer an opinion on it.
Java is a great beginners programming language. It's really good for an intro to programming, (and if you look at a lot of colleges, that IS their intro to programming class)
So I'd say Java.
I wouldn't call any language better than any other. They both have their place so if you have the time, learn both. If not, it will probably be better to start with Java first and then if you find the time also learn a language like Python or Ruby (doesn't really matter which) since they are both great if you want to get some things done like prototyping etc. The advantage of Jave in my opinion is, that you can use it out of the box for quite sophisticated GUI applications while Python (or Ruby for that matter) only come with Tkinter.
It all depend for what you want to use the language you want to learn :)
I agree with zerok. It all depends on what you want to use the language for. However, my experience with Java compared to the very little one I have with Ruby tells me that the way Ruby is, makes it easier for someone with little or no programming experience to start programming. Why? Beacuse it is actually like you TALK to the computer, instead of learn a language a way to tell it to do things, for instance, to show text on Ruby you just type:
puts "Hello world"
And that's it. As for java, after you declare classes and stuff, the line that actually makes it would be:
System.out.print("Hello world");
You do the math.
It is true that most schools teach Java. What I know about Java I learned at school, beacuse it was a requiered subject, however, I think Java is a commercial language, it is overrated. I'm not saying it's a bad language, but if you ask my opinion, I prefer writing less code, and ruby does it for me. Looking for web development? Ruby on rails!
Quote[ to show text on Ruby you just type:
puts "Hello world"
And that's it. As for java, after you declare classes and stuff, the line that actually makes it would be:
System.out.print("Hello world");]
Imo, this is why java is better suited to learning programming. The rules and structure of the java language are more transferable to rules and structure of many other languages, whereas ruby is it's own unique language.
My advice is to start on either, but to delve into the other once you've gotten the hang of one. Both are useful, both are fairly easy to learn.
I think Ruby is more intuitive than Java, I'd be my first choice.
I have an extensive history with Java, and more recently a healthy experience with Python (Fluther is built on Python). I would strongly recommend starting with Python.
Java is a great language (and has amazing tools), but Python is so light-weight and well-designed I think it's far superior for beginners. The addition of an interactive console (meaning you can run commands one at a time instead of having to compile a whole file) is also great for learning and experimenting. You can get up and running in Python much quicker and more easily than Java, and that can be important if you're learning on your own.
As for Ruby vs Python--many of these arguments against Java hold true for both (Python and Ruby are pretty similar), but I'd recommend Python over Ruby. it might depend on what you're planning to use it for, but in general I'd say go for Python. Though to many it's a matter of preference. Python is older and bigger, and has a simpler syntax (less ways to do the same thing). You could try both and see which feels right. The more you learn about and use languages, the more agnostic you become.
I have no history with programming languages, but after reading other responses, I would say your decision should be based on your needs. Each will have it’s own learning curve.
Answer this question
This question is in the General Section. Responses must be helpful and on-topic.