"What programming language should I learn first?" That's one of the most common questions we hear from new students, though the right answer may be more difficult than you think.
On the other hand, some languages may suddenly be left dead in the water as soon as another comes into vogue. Apple's new programming language Swift, for example, is bound to disrupt the use of Objective-C in iOS app development - even though the latter language was named one of this year's most popular languages on open-source hubs and social media. Wired even predicts that Swift could achieve mass adoption with a speed that "[surpasses] even the uptake of Sun Microsystems’ Java programming language and Microsoft’s C# in the late 1990s and early 2000s."
Now learners have several more metrics to help them decide: Earlier this month, the IEEE Spectrum (the magazine published by the Institute of Electrical and Electronics Engineers) released its 2014 list of programming languages, ranked by popularity, growth, employer demand, and use by open-source and social media hubs. The magazine tracked 49 programming languages, gauging their popularity on Google Search, Google Trends, Twitter, GitHub, Stack Overflow, Reddit, Hacker News, Career Builder, Dice, and the IEEE Xplore Digital Library. You can read more about their method here.
Across IEEE Spectrum's various lists, Java consistently ranks first, followed by C and C++. Java, which offers cross-platform compatibility and a solid foundation for understanding object-oriented programming (also seen in C++, Perl, Python, and PHP), is widely used for a variety of purposes, including web and Android apps.
We've reposted the lists below, but be sure to visit IEEE Spectrum to play around with the original interactive and even create your own custom rankings.
IEEE Spectrum (Overall)
In Demand by Employers
Popular on Open-Source Hubs & Social Media
Online, San Francisco
Data Science, UX Design, Dig..
Berkeley, Chicago, Dallas,..
Front-End Development, HTML/..
Chicago, NYC, Online
Fullstack Web Development, J..