Second-tier languages are waiting to break into the mainstream but haven’t quite made it. They have proven their worth by building strong communities of support, but they still aren’t used by a large number of more conservative software companies. Scala, Go, Swift, Clojure, and Haskell are languages I would put in the second tier. Some companies use these languages in a few services, but wide industry use is rare (except for Swift, which is starting to overtake Objective-C as the primary iOS language). Go and Swift both have a good chance of moving from the second tier to the first over the next two to three years.
Most of the languages in the top tier are firmly entrenched. It takes a while for a programming language to fall out of the top tier, and it’s very hard for a second-tier language to break into the top tier.
The emerging languages of this article are in a third tier, and they are just starting to gain a following. Some languages have been in the third tier for many years, never taking that next step toward popularity, while others have burst onto the scene in just one or two years. Here are five languages that fall into the latter category within the third tier.
Emerging languages: Why these five?
The five programming languages that I’ll focus on are fairly new (so this might be the first time you hear about them in detail), and they clearly have a strong chance of breaking into the group of second-tier languages in the next two to three years. Maybe someday one of these languages will even be able to crack the top tier.
Here’s why these five languages were chosen for this list.
Kotlin has been around for about five years, but it finally reached the production-ready version 1.0 this year. Although it hasn’t achieved the popularity of Scala, Groovy, or Clojure—the three most popular and mature (non-Java) JVM langauges—it has separated itself from the myriad other JVM languages and seems poised to take its place among the leaders of this group. It originated at JetBrains—makers of the popular IntelliJ IDEA IDE. So you know it was crafted with developer productivity in mind. Another major reason Kotlin has a bright future—you can easily build Android apps with it.
Crystal is another language that hopes to bring C-like performance into the highly abstracted world of web developers. Crystal is aimed at the Ruby community, with a syntax that is similar to and, at times, identical to Ruby’s. As the already large number of Ruby-based startups continues to grow, Crystal could play a key role in helping take those applications’ performance to the next level.
Elixir also takes a lot of inspiration from the Ruby ecosystem, but instead of trying to bring C-like benefits, it’s focused on creating high-availability, low-latency systems—something Rails has had trouble with, according to critics. Elixir achieves these performance boosts by running on the Erlang VM, which has a strong performance reputation built over its 25 years in the telecom industry. The Phoenix application framework for Elixir—more than any piece of this blooming ecosystem—has given this language legs.
Now, take a quick peek at four of these five languages making their way up the popularity ladder, according to StackOverflow and GitHub data:
Each of these languages already has an enthusiastic community and its own weekly newsletter (That’s when you know you’ve made it!). If you’re thinking of learning a younger language with exciting possibilities for the future, then you can go ahead with these. I hope this article will make everyone clear about these rapid growing languages.