Learning new programming languages is an essential part of career advancement for professional developers. Here, we look at five up-and-coming languages that are rapidly gaining traction.

The TIOBE Index lists the most popular programming languages among professional coders and developers. The top-ten holds no surprises: Java at number one, followed by C, C++, and Python. JavaScript is in eighth position. Learning any of the languages in the top ten is a safe bet if finding work and making money is your primary concern.
But there are many promising new programming languages making waves in the enterprise. They aren’t a sure thing, but learning one of these newer platforms might pay off in the future: they are in production use at smaller scales or they wouldn’t be on the list.
These languages may also expose you to new programming paradigms and broaden your overall understanding of programming, and mastering cutting-edge platforms can leave you well positioned as a thought-leader in a lucrative and under-served space. Most importantly, tackling a new language is always fun.
Elixir is particularly exciting because it benefits from the performance and concurrency story of Erlang, BEAM, and the OTP, a system originally designed to run highly concurrent critical telecommunications infrastructure. Enterprises using Elixir include Pinterest, Moz, and Lonely Planet.
Also of note is Phoenix, a full-featured web application with performance characteristics that blow Ruby on Rails out of the water.
Kotlin was explicitly designed to provide a safer and less verbose alternative to Java that doesn’t require developers to give up the benefits of the Java ecosystem. It is being used in production by many large corporations, including Uber and Evernote.
Kotlin is one of the two languages officially supported by Android, which makes it a great choice for mobile developers who want to move away from Java. Kotlin can also be transpiled to JavaScript, which is useful if you are interested in using the same language in the browser, on the server, and in mobile apps.
Rust was created by a developer at Mozilla, which sponsors Rust and is using the language to build Servo, an experimental browser engine.
Rust's memory safety extends to concurrency, with a powerful type system, threads, message passing, and a novel data ownership model.
In Scala, every function is a value, currying is supported, there is a lightweight syntax for anonymous functions, and, like Elixir, Scala supports pattern matching. Unlike Elixir, Scala is statically typed with a powerful and expressive type system.
If you want to stay within the Java ecosystem while adopting a more functional approach — and going full-Lisp with Clojure isn't your cup of tea — Scala is a great programming language to learn.
Although Crystal is statically typed, it uses an advanced global type inference system to avoid the boilerplate that normally accompanies static languages. Developers are excited by Crystal because it is as fun to write as a higher-level scripting language like Ruby or Python, while being as fast as the more cumbersome C and C++.
There are many other languages I could have included in this list, but the five new programming languages I chose represent a good mix of functional and object oriented, and dynamic and static typing. They all have an active community and it will be interesting to see which, if any, make it into the upper reaches of the TIOBE index in the next few years.
Capella's competency-based online degree programs provide knowledge, real-world skills and IT certifications that are immediately applicable to your career goals.