Over a million developers have joined DZone.

5 Up-and-Coming Programming Languages to Know About

Staying current means staying on the move. Take a look at some languages, new and old, that are becoming more and more prominent.

· Java Zone

Discover how AppDynamics steps in to upgrade your performance game and prevent your enterprise from these top 10 Java performance problems, brought to you in partnership with AppDynamics.

Staying current in the programming field can sometimes make you feel like the Red Queen in “Alice Through the Looking-Glass.” She said, “It takes all the running you can do to keep in the same place. If you want to get somewhere else, you must run at least twice as fast as that!”

You’re a master at Ruby on Rails? Great, but how are you with statistical analysis in R? Want to work at Google? Forget Python and start building channels in Go.

Introduction to R

You may be surprised to learn that R has been around since 1994. It was built by Ross Ihaka and Robert Gentleman at the University of Auckland and was based on the Bell Labs language S. The turning point for this statistical analysis tool came when it zoomed up to first place as the highest paying tech skill in the 2014 Dice Tech Salary Survey. That can be considered the year that Big Data arrived in mainstream business and R was clearly the best way to handle it.

Though it was preferred by academic data scientists originally, R has proven instrumental for enormous business applications like large-scale financial reporting for Bank of America and Facebook’s Social Graph, which analyzes interactions among 500 million people. Today, companies like Microsoft are using R as a server platform to go further with predictive modeling and machine learning. For many of these companies, R is replacing SQL, which can become extremely resource-intensive for advanced analytics.

Here are three reasons why R has taken off recently:

  • Because R supports missing values as a core data value, it can easily deal with incomplete data sources that are more common in real world projects.
  • A popular data visualization package for R called ggplot2 breaks up the graphics into scales and layers as components. It’s now the most used R extension package.
  • The top-level language shell in R is customizable, and coders have used that facility to build integrated development environments like RStudio. This made R much easier to learn and more widely available for business use cases.

Key Stat

In the Redmonk Programming Language Rankings of 2016, which compares the popularity of code on GitHub vs. Stack Overflow, R ranked 13th.

Introduction to Go

While some of the other languages here are getting a new life, Go (a.k.a. golang) is experiencing its first one. In 2012, Google presented the open source Go v. 1.0, after giving the world a glimpse of the experimental language three years earlier. Google had its eye on the future, saying, “People who write Go 1 programs can be confident that those programs will continue to compile and run without change, in many environments, on a timescale of years. Similarly, authors who write books about Go 1 can be sure that their examples and explanations will be helpful to readers today and into the future.”

Go was made for web services that need to handle thousands of concurrent web requests. Popular app builders like Python can’t deal with the speed and intensity of parallel requests on mobile. For the same reason, it is an excellent HTTP handler.  Like C++, Go is ideal for writing web services with precise control without the sharp learning curve of the aging object-oriented standby. Go has also been compared favorably with Algol.

As you would expect from a language with the backing of Google, Go has been used for major projects like Docker’s large-scale, distributed software projects. Evidence of the range of Go came in the form of Revel, which is a high-productivity, full-stack web framework that was created with Go. Revel is able to handle web essentials like routing, caching, parameter parsing, templating and more.

Go’s power of handling concurrent requests resides in its goroutines and channels. While goroutines function like threads, channels are the communication ports between goroutines.

Here’s how a sample channel operates:

func Run() {

  s := &http.Server()

  sig := make(chan os.Signal, 1)

  signal.Notify(sig, os.Interrupt)

  go func() {


    time.Sleep(30 * time.Second)





Key Stat

Go currently ranks as the 15th most popular language in the Redmonk Programming Language Rankings of 2016.

Introduction to Hack

Hack was an internal Facebook project that was released as open source in 2014. As a replacement of their PHP, Hack is a way of combining the short dev cycles of dynamically-typed language with the core discipline of static-typed ones. It also borrows features from some of the other new languages, such as type annotation and generics that allow you to set parameters for classes and methods, while adding many features commonly found in other modern programming languages.

Facebook reported that many common tasks were becoming problematic in PHP, such as calling a method accidentally on a null object, which would generate an error that you wouldn’t be able to catch until runtime. Another problem was with complex APIs that required developers to look up mundane method names in documentation. Those are merely annoying unless you are working at a company like Facebook, where developers are expected to ship code twice a day. Thanks to the upgrade, Hack is now replacing Facebook’s entire PHP codebase.

While just about any site that uses PHP now could be using Hack, it has not gained widespread acceptance yet. One example of a creative uses for Hack is Vindinium, which is the basis of an AI-driven game system.

Hack lang’s GitHub page provides useful code examples, such as a Composer installer to manage dependencies:

cd hack-example-site 
sudo apt-get install curl 
curl -sS https://getcomposer.org/installer | php 
php composer.phar install

Key Stat

Wikipedia’s MediaWiki runs on the HipHop Virtual Machine (HHVM), powered by Hack.

Introduction to Rust

Mozilla’s Rust has been in development for years, but Rust 1.0, the first stable release, appeared in 2015. Mozilla’s David Herman detailed what makes Rust valuable: “Rust has something unique to offer that languages in that space have never had before, and that is a degree of safety that languages like C and C++ have never had. … [T]here are some things that make doing systems programming terrifying that are gone in Rust.” Specifically, he’s talking about security vulnerabilities in C++.

Rust was made to give programmers complete control through extensive compile-time checking. For example, browser exploits in C++, which caused Firefox to be unstable, would generate compile-time bugs in Rust and close the hole. Dropbox is the highest profile proponent of Rust right now as it extracts itself from Amazon Web Services.

The 2016 State of Rust Survey reported that one-fifth of the language’s users are deploying it for commercial purposes, either full or part-time.

Here’s an example of Rust in action:

fn main() {

    for num in 1..101 { // Range notation!

        match (num%3, num%5) { // Pattern Matching FTW!

            (0, 0) => println!("fizzbuzz"),

            (0, _) => println!("fizz"),

            (_, 0) => println!("buzz"),

                 _ => println!("{}", num)

Key Stat

Rust won first place for Most Loved Programming Language of 2016 in the Stack Overflow Developer Survey.

Introduction to Swift

Apple has many new hardware platforms, like the Apple Watch and Apple TV. Swift was built for them. Initially, it was brought out in 2014 as a better alternative for Objective-C, since it makes it easier to build native apps for iOS. It’s also made for building apps on OSX, watchOS, tvOS and Linux.

At the end of last year it became open source. Many coders with a great deal of JavaScript experience say Swift is easier than Ruby or Python for developing apps. Lyft rewrote their code in Swift, not due to any problems with the existing app, but because Swift made it easy to improve the base code they wrote in a hurry before launch.

Many of the biggest app developers on iOS have already incorporated Swift into their base code, including:

  • Airbnb
  • CNN
  • Eventbrite
  • Imgur
  • LinkedIn
  • Medium
  • Pandora
  • Tumblr
  • The Weather Channel

Here is an example of code from a Swift app for calculating tips:

import Foundation class TipCalculatorModel {
    var total: Double var taxPct: Double var subtotal: Double
        { return total / (taxPct + 1)
    init(total: Double, taxPct: Double)
      self.total = total self.taxPct = taxPct
    func calcTipWithTipPct(tipPct: Double) -> Double
      return subtotal * tipPct
      func returnPossibleTips() -> [Int: Double]
      let possibleTipsInferred = [0.15, 0.18, 0.20] var retval = [Int: Double]() for possibleTip in possibleTipsInferred
          let intPct = Int(possibleTip*100) retval[intPct] = calcTipWithTipPct(possibleTip)
      return retval

Key Stat

Swift has moved up to 17th place in the Redmonk Programming Language Rankings of 2016.


If you just want a quick summary of which new language to use where, refer to this guide:

  • R is better than SQL for statistical analysis and managing Big Data.
  • Go is better than Python for building apps that have to deal with multiple, parallel requests.
  • Hack is an advanced version of PHP that speeds up development cycles.
  • Rust is easier, more security-conscious language for basic web development than C++.
  • Swift replaces Objective-C for native app development on iOS.

The Java Zone is brought to you in partnership with AppDynamics. AppDynamics helps you gain the fundamentals behind application performance, and implement best practices so you can proactively analyze and act on performance problems as they arise, and more specifically with your Java applications. Start a Free Trial.

language design,programming language

Published at DZone with permission of Anand Akela, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}