Programming Language Index Reports Reascendance of Ruby
The latest edition of the TIOBE Index that plots the popularity of programming languages focuses on the reascendance of Ruby in the rankings.
"Ruby is currently at position 8 in the TIOBE index," said the May 2016 note from TIOBE software BV. "This is equal to the highest position it reached in December 2008."
Ruby moved up the ladder from No. 15 last May to grab the No. 8 slot on the strength of a 1.07 percent increase in its rating. TIOBE went into some detail in explaining the reprise of Ruby.
This second peak is quite the opposite of the first one. In 2006 the Ruby evangelists were shouting the language to the top. There was no room for self-reflection or discussion: Ruby and its programming environment Rails were about to conquer the world. And they succeeded in this to some extent. Ruby became the language for fancy start-up companies with their tight time to market schedules. It was even awarded 'Programming Language of 2006' until its popularity peaked at the end of 2008. Then scalability appeared to be a problem. Performance dropped significantly if much data needed to be processed. In the beginning of 2010 one of those fancy start-ups, Twitter, started to replace Ruby by Java for this same reason. The Ruby evangelists vanished to other cool new languages and Ruby seemed to be on its way out. But not really. After being out the limelight for quite some years, Ruby's popularity started to grow again at the beginning of 2015. This time it seems to be a more sustainable growth based on actual usage of the language instead of shouting.
According to Wikipedia: "Ruby is a dynamic, reflective, object-oriented, general-purpose programming language. It was designed and developed in the mid-1990s by Yukihiro 'Matz' Matsumoto in Japan. According to its creator, Ruby was influenced by Perl, Smalltalk, Eiffel, Ada and Lisp."
According to its Web site, Ruby is: "A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write."
The site lists the following features of the language:
- Ruby has exception handling features, like Java or Python, to make it easy to handle errors.
- Ruby features a true mark-and-sweep garbage collector for all Ruby objects. No need to maintain reference counts in extension libraries. As Matz says, "This is better for your health."
- Writing C extensions in Ruby is easier than in Perl or Python, with a very elegant API for calling Ruby from C. This includes calls for embedding Ruby in software, for use as a scripting language. A SWIG interface is also available.
- Ruby can load extension libraries dynamically if an OS allows.
- Ruby features OS independent threading. Thus, for all platforms on which Ruby runs, you also have multithreading, regardless of if the OS supports it or not, even on MS-DOS!
- Ruby is highly portable: it is developed mostly on GNU/Linux, but works on many types of UNIX, Mac OS X, Windows 95/98/Me/NT/2000/XP, DOS, BeOS, OS/2, etc.
The language's popularity partially profits from its companionship with the widely used Ruby on Rails Web development framework, just last week moved up to a 5.0.0.rc1 release candidate status.
The Ruby Web site also documents the rise of the language about 10 years ago, saying it achieved mass acceptance in 2006. "With active user groups formed in the world's major cities and Ruby-related conferences filled to capacity," the site says. From there, just as TIOBE said, things went downhill according to some metrics. "Ruby-Talk, the primary mailing list for discussion of the Ruby language, climbed to an average of 200 messages per day in 2006. It has dropped in recent years as the size of the community pushed discussion from one central list into many smaller groups."
The site, however, has yet to report a Ruby resurgence as reported by TIOBE.
Neither have some other programming language popularity sites, such as PopularitY of Programming Language Index (PYPL), which lists Ruby as No. 12 in its May rankings with a -0.3 percentage trend.
In the Redmonk Programming Language Rankings report for January (it operates on a six-month publishing cycle instead of providing monthly rankings), Ruby clocks in at No. 5, tied with C++ and C#. All of the indices use different metrics to compute their rankings.
Over at TIOBE, the big percentage leaders among the top 20, along with Ruby, included Java (retaining its No. 1 slot) and Assembly (jumping from No. 22 to No. 12). The biggest loser was, unsurprisingly, Objective-C (falling from No. 4 to No. 14), quickly being subsumed by its official successor, Swift (up to No. 15 from No. 18).
Interested developers who want to play around with Ruby can try this Try Ruby! interactive Web site.
David Ramel is the editor of Visual Studio Magazine.