If you’ve been in the world of web development long enough, you’ve seen many languages and frameworks rise and fall. The shooting star that is Ruby and its web application framework, Ruby on Rails, shone brighter than most. In 2008, just three years after Rails was introduced, this same post raised the question of whether the framework could be the successor to Java, noting that it took the drudgery out of web development and that Ruby-adjacent startups were seeing heavy investment. venture capital. .
Fifteen years later, the idea of Ruby displacing Java seems laughable. The TIOBE index, which crawls search results for queries about different languages, had Ruby ranked 16th the last time I checked. It sits between MATLAB and Object Pascal. (Java came in a respectable fourth.) Filtered, a company that provides virtual environments where job seekers can showcase their skills to potential employers, doesn’t even include Ruby in its eight major languages. Contractors only tested Ruby about 0.5% of the time, they said.
But don’t put Ruby in a museum with FORTRAN or ALGOL just yet. I talked to current and former Ruby programmers to try to trace the rise and fall of the language. They shared their thoughts on how and why Ruby has been bumped off the list of most loved languages, and also why they think Ruby still has a future.
when ruby was cool
There were a number of factors behind Ruby’s initial rise in popularity, but chief among them was that it made it easy to rapidly accelerate development, particularly for front-end applications. And that has not changed. “Ruby on Rails continues to be a great way for a small team to have the impact of a large team,” says Noel Rappin, co-author of Ruby Programming 3.2. “It’s still one of the fastest ways to go from zero to a real, valuable product.”
“Ruby is and always has been the best language when it comes to providing a solid front-end user experience,” explains Pulkit Bhardwaj, eCommerce Trainer at BoutiqueSetup.net. “It provides ease of use for end users and provides a stable and secure experience. It also provides room for experimentation as Interactive Ruby delivers immediate line-for-line expression results.”
Ruby has also been associated with a strong open source community since its early days. Kevin Trowbridge, CTO of Qwoted, believes that the nature of the language itself has a lot to do with it. “It’s the most literate of all the programming languages,” he says, which means “it’s so easy to write and read. That’s why you have the community, which is extremely strong, and the philosophy, which is that it’s optimized. for product developer productivity and happiness.”
But these advantages never gave Ruby and Ruby on Rails anything close to complete dominance. And the other languages and frameworks certainly didn’t stop in the meantime. “Rails came on the cusp of a period of transformation and growth for the web,” says Matthew Boeh, a Ruby developer since 2006. “It benefited from and fueled that growth, but it was a foregone conclusion that it wasn’t going to be the only story.” of success”.
Boeh recently took a job as a senior software engineer at Lattice, a TypeScript shop. “Ruby has arguably been a victim of its own success, as its community was a major driving force in the command-line renaissance of the past few years,” he says. “In the early 2000s, I was introducing REPL-based development for people who had never heard of Lisp, package management for people who would have been scared off by Perl’s CPAN, test-driven development for people outside the highly corporate world of Java and so on. This is all that’s considered gambling on the table today. Ruby didn’t originate any of it, but it was all popularized and made accessible by Rubyists.”
Meanwhile, Python has come to dominate one of the hottest areas of development today, artificial intelligence and machine learning. “Python became popular with the scientific community because they could prototype models and algorithms faster than ever before, so it was years ahead of Ruby,” says Bhardwaj. “Ruby, on the other hand, was perceived as slow running and received no development attention.” New Relic’s Sius agrees: he says that “when someone thinks of a versatile language that can create everything from games to VR to AI to ML, everyone knows that Python is the clear winner.”
But when it comes to data science, Python has the upper hand due to the ready availability of libraries like TensorFlow and Keras. “These frameworks make it easier for coders to create data visualizations and write programs for machine learning,” says Bhardwaj.
And in some niches where Ruby once thrived, it hasn’t been replaced by another language; rather, the floor has moved, so those niches are no longer recognizable. “I started in the business building marketing sites and online stores for the clients of a local creative agency, and I think it’s also easy to overlook how much the lower end of the web development world has become automated,” says Lattice’s Boeh. . “Within a couple of years, that whole business wasn’t viable anymore; nobody was interested in custom sites like that when they could do it pretty decently themselves with WordPress or Shopify.”
Why isn’t ruby going anywhere?
That being said, Ruby is not going away, and Shopify, an ecommerce giant, is one of the main reasons why Ruby on Rails is their primary development platform. “Ruby continues to be the best for building e-commerce applications due to its dynamic functionality and flexibility,” says Bhardwaj of BoutiqueSetup.net. “You can build your app through different modules and modify them later. This makes it easy to update the app for additional features.”
And while Shopify obviously doesn’t operate on the scale of a company like Google, it still claims to act as a patron of Ruby like Google does with its favorite languages. For example, Shopify recently developed YJIT, a just-in-time compiler that improves Ruby performance, and was incorporated into the Ruby standard.
Qwoted’s Trowbridge says that Ruby also thrives “as an excellent server-side ‘glue’ language that works well for the server component of web applications, such as in Rails’ ‘API-only’ mode.” In a way, he notes, that role “leaves Ruby essentially where it started.”
In general, almost everyone I spoke to believes that Ruby and Ruby on Rails will continue to be used in various environments. “There are many languages that are still widely used and relevant, although not as popular as they used to be,” says Trowbridge. “I would present Java as the prime example of this and suggest that Ruby and Java will share a similar trajectory.”
“I continue to use Ruby for personal projects and look forward to using it professionally again,” Boeh adds. “There are a lot of exciting developments happening in the Ruby world right now, and going back six months, there were plenty of job opportunities. Ruby will never be the next big thing again, but I think it’s here to stay.”
Copyright © 2023 IDG Communications, Inc.
Be First to Comment