Can Ruby Survive as the ‘Human-First’ Programming Language?
Ruby, a general-purpose programming language, and Rails, a framework for creating websites, apps, and systems recently released version 7.1.3.2, which addresses several security issues, as well as the ongoing efforts to improve the language’s performance and currency. This was done through features like YJIT (Yet Another JIT Compiler) and Ractors (Ruby’s implementation of the Actor model), demonstrating the community’s commitment to keeping the framework relevant and up-to-date. The language programmed to build websites and apps is used extensively by platforms like Shopify. It uses over 2.8 million lines of Ruby code and 500,000 commits. Besides, the entire backend of Airbnb was built on Ruby until 2018, when it pivoted some parts to Golang. It is also used by Netflix, GitHub, and Soundcloud. But with the conversation shifting to AI, are more developers falling off the Ruby train? The language has declined in popularity in recent years, particularly among startups. As a Ruby developer points out in a Hacker News discussion, “We are in a time where people prefer compiled, statically typed languages, which contribute to Ruby losing its popularity; that’s why alternatives like Crystal are growing.” Despite the efforts to keep the language up to date, its tight coupling with the Rails framework, which is resource-intensive and rigidly monolithic in architecture, is the reason for its unpopularity. Another user on the same Hacker News thread suggested — “Ruby should really try to separate itself from it and shine on its own.” This close association has led to a perception that Ruby is primarily a web development language, limiting its appeal to developers working on other types of projects. Is there a solution? The Ruby community, however, remains dedicated to improving the language and framework. In a recent interview, David Heinemeier Hansson (DHH), the creator of Ruby on Rails, discussed the future of the language, suggesting that Ruby’s ‘human-first’ approach makes it well-suited for developers looking to remain relevant as AI becomes more prevalent in the industry. “As we are now facing perhaps an existential tussle with AI, I think it’s never been more important that the way we design programming languages is designed for people,” DHH stated. This approach includes principles like Convention Over Configuration, which minimises the decisions developers need to make. It also embraces Integrated Systems, where Rails provides a cohesive stack with pre-selected tools that work well together, reducing the setup and configuration tasks. Despite all this, the usage of language is on a steady decline. According to a Stack Overflow survey, the language’s popularity fell from 8.4% in 2019 to 6.2% in 2023. While the promise of AI-powered development is alluring, it’s crucial to consider the potential pitfalls, particularly for a language like Ruby and a framework like Rails. “AI seems like the last nail in the coffin for an easy, slow-evolving, highly standardised ecosystem like Rails,” argued a user on Hacker News. The ease and simplicity that made Rails attractive in the first place might work against it in an AI-driven world. If AI can handle the boilerplate and heavy lifting, the value proposition of Rails diminishes. Moreover, the rapid pace of AI advancements may not align well with Ruby’s slower, more deliberate evolution. As a detailed Reddit post noted, “I don’t think it’ll ever go back to being the primary driver of startups, as the world has passed it by.” As developers flock to languages and frameworks that can keep up with the breakneck speed of AI innovation, Ruby risks being left behind. However, it’s not all doom and gloom. Ruby’s emphasis on developer happiness and its thriving community are assets that shouldn’t be discounted. Rather than trying to compete head-on with the latest AI-centric languages, Ruby’s path lies in doubling down on its strengths – its expressiveness, readability, and human-centric approach. DHH believes that Ruby on Rails will continue to evolve and adapt to the changing tech landscape, emphasising the importance of simplicity in web development. He envisions a future where “individual programmers can understand the entire system that they’re working on”. He further noted the importance of open-source collaboration and community-driven development, stating, “Ruby on Rails, from end-to-end, should be a free and open-source software that is not owned by any commercial entity. Then we can all work together to improve. We should never accept that something is too hard that it has to be done by commercial vendors.” By focusing on integrating AI in a way that enhances rather than replaces the developer experience, Ruby can carve out a unique niche in the AI era.
Ruby’s human-centric approach positions it uniquely for the AI-driven future of software development.
Ruby's human-centric approach positions it uniquely for the AI-driven future of software development.
["Ruby"]
["Go", "API", "programming_languages:R", "AI", "innovation", "programming_languages:Go", "Git", "Ruby", "GitHub", "R", "startup"]
["AI", "R", "Go", "Git", "GitHub", "API", "innovation", "startup", "programming_languages:R", "programming_languages:Go"]
K L Krithika is a tech journalist at AIM. Apart from writing tech news, she enjoys reading sci-fi and pondering the impossible technologies, trying not to confuse it with reality.