Why hasn't the Ruby language taken over the market?

Why hasn't the Ruby language taken over the market?

By lingy | Lingy | 19 Jun 2022


Ruby: one of my favorite programming languages, and one of the most beautiful languages I've ever used. With a flexible and simple syntax, the Japanese language has numerous fans around the world and a very active community. However, despite its attractions, the Ruby language seems to have difficulties in expanding its supporters today, especially in new ventures. Because?

I took the liberty of talking to some entrepreneurs, senior developers, and professors at my university, and I came up with a few reasons.

The best at nothing

Want to program for desktop? It has Java, C, C++, Rust and many others better than Ruby. Want to make games? GDScript, C#, Javascript and many others. Want to program web? You can use Node, PHP, Python… The truth is that, although Ruby popularized the MVC pattern and completely changed the way many people develop their systems, the language itself is not the best at anything. Its niche is focused on being extremely understandable even for the layman audience, but this kind of niche is already taken over by Python, which is more popular.

Beautiful and slow

The Ruby language, even though it is very beautiful, has one big problem: performance. As it is a fully interpreted language, its execution is slower than a compiled language or that has precompiled snippets for bytecode, which makes it more expensive to maintain a system in Ruby than in Python or PHP (which had significant optimizations thanks to influence of big techs that use it), forcing companies that want to maintain systems in Ruby to spend more on hardware resources.

Back to the Perl problem

The Perl programming language, known for its versatility on the internet, despite its versatility, has poor readability, and one of the reasons is precisely its extremely flexible structure. Ruby's structure, despite being easily understandable when reading line by line, requires a lot of attention, because with immense ease the entire structure of the code can become a big tangle. This ends up being a major disadvantage for the language, as it makes it difficult to establish well-established standards within a corporation, even more so if we compare it to another language with great similarities: Python.

Python is also a very beautiful and simple language. Developed with the goal of being easy to read and program, Python has a much stricter syntax, making it difficult to be creative in building patterns within a program, which almost automatically generates a pattern within the company, which contrasts with the syntax of Ruby, which allows for much more flexibility. Even in languages that allow more flexibility, such as PHP or Java, the syntax is more rigid, and this makes “creativity” very difficult when it comes to establishing standards.

In return…

Despite the disadvantages, Ruby's package management system (the “gems”) is extremely efficient, especially when compared to other package managers such as NPM (Node) and Composer (PHP). Its packages are also widely used for sharing simple programs, as is the case with NPM, and its syntax, being easy to understand by anyone who reads it carefully (although not exactly readable), makes it easy even for beginners to participate in the development of more complex projects.

Conclusion

For these reasons, despite its advantages, the Ruby language has stagnated at a point where its total volume of active developers does not increase as much as it used to. This does not mean that language is dead, or even that it will soon die, just that perhaps the current approach to language development is not ideal. Applications like Redmine, for example, are highly competitive even using Ruby on Rails, which proves that such factors are not and will never be an impediment, but it is important to understand the motivations behind those who do not have a love for the language in order to understand the reasons for stagnation in growth.

Bearing in mind that this was an individual and completely informal survey, and may not reflect the reality in most regions.

So, do you agree? Disagree? Are you also a fan and enthusiast of this beautiful language? Tell me in the comments 😊😄

How do you rate this article?

1



Lingy
Lingy

My personal blog about technology

Publish0x

Send a $0.01 microtip in crypto to the author, and earn yourself as you read!

20% to author / 80% to me.
We pay the tips from our rewards pool.