In this article, I am going to try to answer the question: what are the advantages and disadvantages of the two predominant programming languages, Python vs Ruby.
For the purposes of this article, we will be talking only about the programming languages per se and won’t be making any distinctions about their frameworks, programming environments, etc. While most of what I say here can be applied to each of those, they will be discussed further elsewhere.
The question was brought to my attention after I wrote about the Python vs Ruby, the language question. I thought that since both of them are very fast-growing languages, it would be helpful to people to see if they can find a comparison of the two.
It turns out that someone already made a good one, so I am going to rephrase it here for this blog and to summarize what I can say about each programming language.
Let’s start with a comparison of the two, and focus on the “what” rather than the “why”.
What is Python?
Python is a programming language that is used for a variety of applications, from very small (single-line) scripts to large (long-running, network-intensive, etc.) applications. You can also use it for GUI and web programming.
Python comes bundled with tons of other stuff: compilers, editors, interpreters, compilers, frameworks, debuggers, documentation, etc. If you install a package from the Python package index, PyPI, then you will have the latest versions of a whole host of other cool software. You’ll need to have Pip to do that.
What is Ruby?
Ruby is a programming language similar to Python. It comes bundled with a whole host of things that you can use for all kinds of applications, including web and GUI programming. It has a large community of users, and an official language website.
If you install Ruby from the site, you can also download tons of additional software.
The comparison – Python vs Ruby
Python: so simple to use when a beginner can read a book about it and start creating applications that help people.
Ruby: a programming language is powerful to use when a beginner can read a book about it, then start writing powerful applications that help people. The question is, what makes a language powerful?
Python is simple. It just has Python. That is an important point. The Python programming language is very popular because it is simple. This is why people don’t write books about it. People like to get some help from a book and not write books.
Ruby is powerful. It is not just a language for writing software, it is also a language for learning.
On the other hand, I’ve found that more Ruby developers, as a whole, know more about the language. But a higher percentage of Python users understand the language that they’ve already used.
I think that the key thing to remember is that it is hard to write bad Python, and hard to write bad Ruby. This means that you should really go for the language that you like best. It may well be the Python in your case. The Python community has many “advocates”, which are basically people who will help you when you get stuck. I guess the Ruby community isn’t so big. However, I think there are still enough users to help you (if you need it).
I hope you are now much more confident about what language you should be learning. Have a good day!