You can get paid a lot of money to code COBOL, but that’s probably a career-limiting choice. The less popular a language, the more an employer will be likely to pay. It’s a simple matter of supply and demand—or, as MongoDB’s Kelly Stirman defines it, “revenue potential and adoption [are] inversely proportional.”

Which is why Quartz’s list of the “most valuable programming skills to have on a resume” is wrong-headed and deceiving. Which programming language is “best” depends on a host of factors, perhaps the least important of which is how much that skill will pay you today.

Popularity Contests

After all, the best programming language may well be the one that is most likely to help you consistently find a job, not necessarily the one that pays best.

By that metric, Redmonk’s quarterly list of popular programming languages (culled from matching data from GitHub and Stack Overflow) may be a better place to start when figuring out which language to learn next:

Source: Redmonk

In this ranking, Java and JavaScript remain neck-and-neck for the top spot, with Google’s Go language rocketing up the charts to #21. So is one more important than the other?

Maybe.

As Pivotal’s chief scientist Milind Bhandarkar stresses:

@mjasay c++11 is new assembly, Java is new C, go is new java, and python is new cobol. There were never "most" imp langs & never will be. — Milind Bhandarkar (@techmilind) November 26, 2014

Bhandarkar is correct, but while there may not be an objective way to evaluate the importance of programming languages across the industry, there is absolutely a subjective way for each developer to determine the best language for her. Namely, pick the language that matches where you see the future going.

Defining The Future

So, for example, cloud expert Simon Wardley notes, “If the Internet is the operating system then JavaScript is its language.”

And if you believe cloud is the future, well, Go should be high on your list, as it’s the “most interesting [language] in the cloud era” because it “solve[s] hard problems easily,” according to Red Hat’s Paul Lundin.

Mobile? Hard to argue against learning Swift (Apple) or Java (Android).

And if you don’t trust your own judgment, programming language popularity rankings like the one Redmonk assembles can provide a cheat sheet on the future. Just watch for big spikes in popularity like we’ve seen with Go.

Or look for relative popularity with employers, not ranked by salary but instead by volume of jobs. By that metric Ruby is waning, Python is relatively constant and Go is exploding, according to Indeed.com data. But if you really want to see hyper-growth, Node.js may best them all:

Source: Indeed.com

The Web, presumed dead, seems to be doing quite well.

Getting Paid To Code What You Love

Not that developers must always choose between future relevance and present salary. Quartz’s list sports a number of languages that both pay well and are popular, like JavaScript and Python (an excellent all-around language that doubles as a Big Data heavyweight):

Source: Quartz

Indeed, it’s unlikely that learning any programming language could be considered a bad investment these days, what with developers becoming market makers. Enterprises are falling all over themselves to hire and motivate developers, a trend that won’t diminish anytime soon.

With this in mind, do what you love. And code in the language that best expresses the future you most want to see. There’s never been a better time to be a developers, whatever the programming language you choose.

Lead graphic courtesy of Shutterstock