Which programming languages are most popular (and what does that even mean)?

Coding Languages

The result was the rankings in the following chart:

The C-family of languages still dominates. Java, C++, C, C, and even Objective-C are all C-based languages. If youre only going to learn one language, you should pick one of those. Id recommend Java or C++, since those will open you to the rest of the C-family.

ByDavid GewirtzforDIY-ITOctober 4, 2017 — 11:39 GMT (19:39 GMT+08:00)Topic:Developer

Amazon Sumerian now generally available

Google to Gmail users: Heres how you turn on new offline working, Smart Compose

Microsoft moves toward consolidating its many speech services

Second, the Apple-specific languages are lower on the charts than you might initially expect, given the popularity of iOS apps. But it makes sense. If you want to go off and build your own app, you want to learn those languages. But there arent a huge number of companies hiring Apple app developers, at least primarily. Thats why Swift is relatively far down the chart. Objective-C is being replaced by Swift, and we can see it dropping right before our eyes.

Therein lies the rub. Even with an understanding that popularity can be measured based on so many different factors, students and professionals still want to know if theyre guiding their careers and companies in the right direction.

Being comfortable in multiple languages and frameworks is important, because the computer industry is changing so much. Sure, C has been aroundlonger than digital watches and Pong, but Swift is only a few years old and is already in the top ten. What you learn today is probably not going to be enough for your entire career. So learning how to learn languages is as important as learning a language — and the best way to do that is to learn more than one.

The languages in the first cluster, Java, C, Python, and C++, are pretty much universal languages. Theyre not tied to a specific programming platform or focus.

Other times, programmers who are already skilled want to get a feel for whether their current skills are relevant, or whether its time to look at other languages because shifts in popularity might mean its time to bone up on a new language.

This web site uses cookies to improve your experience. By viewing our content, you are accepting the use of cookies. To find out more and change your cookie settings, pleaseview our cookie policy.

Lets start with why people want to know. Usually, at least when it comes to students, they ask which language is the most popular because they want to learn subjects where there are jobs. For most people, it makes very little sense to enter a field with knowledge about something thats not in demand.

Go ahead. Learn some languages. Build great stuff. Tell us about it in the TalkBacks below.

My recommendation is pretty simple. Pick either C++ or Java and learn it. Then learn JavaScript. More and more web-based applications require good JavaScript skills. Then pick either PHP, Swift, or Python, depending on the kind of work you want to do. Once you know one of each of those three sets well, youll be able to pick up whatever additional language or framework youll need with relative ease.

Even thats not complete. You could add some of these metrics to that list:

There are a number of online sites that publish language popularity metrics, each according to different criteria.IEEE Spectrum takes an interesting approach, because it has an interactive chart that allows you to weight different factors, like job site listings or open source hub projects.

The number of times the language name is mentioned in web searches, such as indicated by Google Trends

Weighted aggregate analysis by David Gewirtz based on IEEE, Coding Dojo, PyPl, and Tiobe.

You have been successfully signed up. To sign up for more newsletters or to manage your account, visit theNewsletter Subscription Center.

My advice to you, especially if you want to move into programming, is to learn multiple languages and multiple frameworks. Build things in the languages. Programming is not just an intellectual exercise. You have to actually make stuff.

You get the idea. This can get even more complicated if you factor in popularity across nations. Are certain languages more popular in India? In the United States? In Russia?

This is such an open question that theres aWikipedia article devoted to measuring programming language popularity. The article shows a number of possible factors for measuring popularity, including:

Language familiarity is only a piece of the puzzle. For example, no matter how much you like Python or the very-ancient-but-still-ticking C, if youre programming WordPress plugins or themes, youre writing in JavaScript and PHP. It doesnt matter how popular the other languages are. If your employer is a Microsoft developer, you better know C.

Popularity may not be a single vector answer, but students and professionals still want to know if theyre guiding their careers and companies in the right direction.

Microsoft offers app developers larger share of profit… most of the time

The number of videos on each language on YouTube

So which language is most popular? That, my young Padawan, is not as easy to answer as you might think. The key is to determine what defines popular.

By registering you become a member of the CBS Interactive family of sites and you have read and agree to theTerms of UsePrivacy PolicyandVideo Services Policy. You agree to receive updates, alerts and promotions from CBS and that CBS may share information about you with our marketing partners so that they may contact you by email or otherwise about their products or services. You will also receive a complimentary subscription to the ZDNets Tech Update Today and ZDNet Announcement newsletters. You may unsubscribe from these newsletters at any time.

But the problem is, that really doesnt tell you where to focus. To get to the heart of the matter, I did some data analysis. I aggregated the data from five of the six sources (I left out Coding Dojo because it only showed ten languages). Then I weighted each language based on where it appeared on each chart and how many times it appeared. I took the top ten results and generated the chart the following language cluster aggregation chart.

Material Design update: Google gives app developers new customizing tools

Business executives are increasingly moving to an IT environment that is no longer focused on big, long projects but shorter, more sustainable efforts to drive change and innovation. Here are the pros and cons, and how to make it happen.

The number of courses sold by programming bootcamps

Google: Were having to hit pause on Chromes audio autoplay block

Google puts AI teams work to good use in Android P

To help give you some guidance, I combined the various sources mentioned above. For the three IEEE categories, trending means the languages that seem to be growing, jobs reflect job offerings at m and CareerBuilder, and open reflects the number of open source projects.

Combined chart of language popularity metrics.

Unfortunately, that doesnt really help. If youre looking at what languages to learn, or what languages you need to support, its hard to decide which chart is the one to bet on.

Agile and DevOps: 7 tips for creating the right culture

My UC Berkeley programming students often ask me which programming language is the most popular. Its a simple question with a far-from-simple answer.

The bottom line is that popularity is not a single vector answer.

Finally, if youre starting a project, you need to choose what language to build in. Your first criterion should always be to use a language that can get the job done. If one language is hugely popular but would take two years to code, and another is less popular but would take two months for your application, you clearly should choose the less popular language. But, all things being equal, choosing a more popular language generally means access to more programmers and resources, so thats an important consideration as well.

You can follow my day-to-day project updates on social media. Be sure to follow me on Twitter , on Facebook /DavidGewirtz, on Instagram m/DavidGewirtz, and on YouTube atYouTube.com/DavidGewirtzTV.

The number of postings on Reddit or Stack Exchange about a language

The number of books sold that teach or describe the language

The number of students enrolled in programming classes around the world

The number of projects in that language on SourceForge, Freecode, and GitHub

Please review our terms of service to complete your newsletter subscription.

Again, what does this tell us? If you know about modern coding, you realize youre not just using a language. Youre always developing for something, whether thats an embedded system, an iPhone, a web application, or a Microsoft server application.

At this point in my career, I can program, off the top of my head, in something like 20 languages. I can generally pick up a new language in a matter of days. Thats because my engineering school thesis was in language design, and Ive been teaching programming on and off for 20 years. Being multilingual has helped me, because I almost always choose a language for the job Im doing, not because I only took one course and thats all I know. This may sound intimidating, but you can do it, too.

The number of postings in forums and newsgroups about the language

The most interesting clue is the second cluster, containing JavaScript, C, PHP, and Swift. JavaScript and PHP are mainly web development languages. C is a Microsoft-centric language. Swift is Apples new main coding language. Fundamentally, the second cluster is platform-specific.

Developers who are building products also want to know about popular languages, because if theyre building APIs or other compatibility options, they want to make sure theyre producing solutions customers will use. Its very important to support the most popular environments.

There are a few more interesting things Id like to make sure you note. First, Coding Dojos top language was SQL. That makes sense, except it doesnt. You very rarely only code in SQL. You use SQL to access data, but you manage those data queries in another language. So its good (necessary, even) to know SQL. However, just taking a SQL course wont guarantee you a job, good money, or a life on Easy Street.

As you can see, there are three clusters of languages. The top cluster contains Java, C, Python, and C++. Without a doubt, you should attain familiarity with these four languages. The next cluster contains JavaScript, C, PHP, and Swift. The two remaining languages are Objective-C and R.

The number of job advertisements that mention the language

Estimates of the number of existing lines of code written in the language, which may underestimate languages not often found in public searches

Coding Dojo has a chartwhere it aggregates stats from job search engine .Tiobehas long used search engine aggregates to calculate popularity.PyPllooks at the popularity of language tutorials on Google.

Leave a Reply