New Study Finds the World's Most Popular Programming Language: JavaScript (zdnet.com) 112
ZDNet reports:
JavaScript is now used by more than 16.4 million developers globally, says a survey of more than 19,000 coders — making it the world's most popular programming language "by a wide margin".
SlashData's 21st State of the Developer Nation Report examined global software developer trends across 160 countries during Q3 2021, covering programming languages, tools, APIs, apps and technology segments, as well as attitudes of developers themselves... While not necessarily a surprise in itself — JavaScript has, after all, been the world's most-used language for a number of years now — SlashData found that upwards of 2.5 million developers had joined the JavaScript community in the past six months alone. That's the same as the entire user base of Swift; or, the combined communities of Rust and Ruby.
The data for JavaScript also included language derivatives TypeScript and CoffeeScript.
Python might not be a close second, but its popularity is impressive nonetheless: according to SlashData, the language is now used by some 11.3 million coders, primarily within data science and machine learning, and IoT applications. The brainchild of Guido van Rossum, Python's popularity has exploded in recent years, overtaking that of Java, which is currently used by 9.6m developers. Java remains a go-to for mobile and desktop apps, SlashData's survey found. According to SlashData, Python added 2.3m developers to its community in the past 12 months. "That's a 25% growth rate, one of the highest across all the large programming language communities of more than 7M users," the report noted.
"The rise of data science and machine learning (ML) is a clear factor in Python's popularity. More than 70% of ML developers and data scientists report using Python. For perspective, only 17% use R, the other language often associated with data science."
The survey concluded these are, in order, the 10 most popular programming languages:
SlashData's 21st State of the Developer Nation Report examined global software developer trends across 160 countries during Q3 2021, covering programming languages, tools, APIs, apps and technology segments, as well as attitudes of developers themselves... While not necessarily a surprise in itself — JavaScript has, after all, been the world's most-used language for a number of years now — SlashData found that upwards of 2.5 million developers had joined the JavaScript community in the past six months alone. That's the same as the entire user base of Swift; or, the combined communities of Rust and Ruby.
The data for JavaScript also included language derivatives TypeScript and CoffeeScript.
Python might not be a close second, but its popularity is impressive nonetheless: according to SlashData, the language is now used by some 11.3 million coders, primarily within data science and machine learning, and IoT applications. The brainchild of Guido van Rossum, Python's popularity has exploded in recent years, overtaking that of Java, which is currently used by 9.6m developers. Java remains a go-to for mobile and desktop apps, SlashData's survey found. According to SlashData, Python added 2.3m developers to its community in the past 12 months. "That's a 25% growth rate, one of the highest across all the large programming language communities of more than 7M users," the report noted.
"The rise of data science and machine learning (ML) is a clear factor in Python's popularity. More than 70% of ML developers and data scientists report using Python. For perspective, only 17% use R, the other language often associated with data science."
The survey concluded these are, in order, the 10 most popular programming languages:
- JavaScript
- Python
- Java
- C/C++ [Yes, it lumps them together]
- PHP
- C#
- "Visual development tools"
- Kotlin
- Swift
- Go
The report also found that Rust, although coming in at #14, grew faster than any other language in the past 24 months, "nearly tripling in size from just 0.4M developers in Q3 2019 to 1.1M."
we're fucking doomed (Score:3, Interesting)
at least VBScript vulnerabilities weren't cross-platform
Re: we're fucking doomed (Score:4, Informative)
Just consider that being popular doesn't mean best or most important when it comes to programming languages.
Self gratification (Score:1, Flamebait)
Taking advantage of rosy palm and her five sisters is the most frequent form of sex but that doesn't mean it's the preferred method . It's just all some people can do.
Number of developers (Score:5, Insightful)
Determining popularity by "number of developers" is not particularly meaningful.
I write mostly C++ and some Python. I also occasionally edit some JavaScript to add functionality to a webpage.
By this study's criteria, my use of each of those languages gets equal weight.
A better measurement of "popularity" should be how much people hate a particular language. JavaScript is the clear loser by that criterion.
Re: (Score:2)
Is Javascript even a real language now? *ducks*
Re: (Score:2)
Determining popularity by "number of developers" is not particularly meaningful.
I was going to say something like this. Thirty-odd years ago, BASIC was absolutely the most "popular" programming language because it was there in ROM on most home computers and the majority of computer owners learned and experimented at least a little with the language. Very very little commercial software or industrial software was written in it, though.
Re: Number of developers (Score:2)
Re: Number of developers (Score:2)
PONG was implemented in hardware, not BASIC.
Re: (Score:2)
Like you, I've used Javascript to achieve a goal - but it sure isn't "popular" with me.
This is like saying syphilis was "popular" in 1495. I'll bet no one enjoyed it, but a lot of people had it.
Re: Number of developers (Score:2)
Re: (Score:2)
Determining popularity by "number of developers" is not particularly meaningful.
Calling JavaScript the most popular language is like calling Chlamydia the most popular sexually transmitted disease.
Re: (Score:2)
Very true. But I don't even understand why "popularity" is "measured" to begin with. It doesn't really tell me anything about the languages. I'm more interested in knowing of applications written what are the languages used. I have plenty of applications using multiple languages (especially "something + javascript").
And yet again... (Score:1)
CowboyNealScript doesn't make the list.
Spin the wheel of popularity (Score:2)
Fuckballs.
Yukky (Score:4, Informative)
JavaScript, thanks to its butt-buddy node.js, is easily the worst, hardest to debug, and most dependency-fucked language ever.
Re:Yukky (Score:5, Funny)
Javascript was already the worst, hardest to debug, and dependency-fucked language ever before node.js came along.
Re: (Score:1, Troll)
Javascript is riddled with inconstancies and bugs it's mindboggling. For example,
is false because min is 'Infinity' and max is '-Infinity'. Then there is the whole thing with how unsafe it's type-handling is and how that affects operators which leads to inconsistent behavior.
When people call it a programming language I would expect it to have some of the fundamentals down that other modern programming languages have, but the hint that it's not actually a full fledged programmin
Re: (Score:2)
Re: Yukky (Score:1)
When I was a kid in the 90s, I tried to learn html and javascript by myself. I made a calculator webpage to add two numbers together.
The result of 1+1 was 11.
I didn't learn proper programming until several years later.
Re: (Score:2)
Re: (Score:2)
And "1" + "1" * "1" is "12". A multiplication-operator should throw an error when used on strings.
Re: (Score:2)
Re: Yukky (Score:2)
Javascript came out when? 1995?
Typescript came ... later.
And in between was a whole lot of nonsense that poisoned many minds, many codebases, and many perceptions.
Re: (Score:2)
Re: (Score:2)
Browsers don't support Typescript and Javascript is not Typescript otherwise there would not be two names.
JavaScript is TypeScript, in the sense that all valid JavaScript is also valid TypeScript (not the other way around).
Re: Yukky (Score:4, Informative)
In Javascript, "2" + 3 is "23", whereas in Python it gives an error, but "2" * 3 is 6 in Javascript, but "222" in Python. Yes, if you learned the language specs, you know all that, but it's far from intuitive.
Automatic type conversions are the source of many many errors.
Re: (Score:2)
> Automatic type conversions are the source of many many errors.
Yes, I'm replying to myself, but I need to add that in this case, the type conversions are not the only thing that's to blame. Operator overloading is another thing that I consider a "bad idea" (I'm looking at you too, C++ !), even if some people claim it "makes the code more readable". However, different people have different ideas of what an overloaded operator will do, hence mistakes will inevitably show up.
Re: (Score:2)
Not sure if you're deliberately misunderstanding me, but using + or * to add or multiply two numbers of the same type is fine. However, it's not a good idea to use + for both addition and concatenation, or * for multiplication and multiple concatenation.
As for adding and Uint8 and an Uint16, that should throw an error, because it hides precision errors and is probably bad program design in the first place. If you really want to add/multiply numbers with different precision, use an explicit cast on one of th
Re: (Score:1)
In Javascript, "2" + 3 is "23", whereas in Python it gives an error, but "2" * 3 is 6 in Javascript, but "222" in Python. Yes, if you learned the language specs, you know all that, but it's far from intuitive.
Automatic type conversions are the source of many many errors.
I would say that comparing the automatic type conversion of JavaScript and Python in this particular example, I would say that Python has what I would consider the most logical type conversion. However when looking at the code from a programmers point of view, then I would say that it should be either result in a type error or in the type conversion that JavaScript does. On the other hand, logically it seems like multiplication of a String should be a thing. If one was new to programming and were learning
Re: (Score:2)
Variant pointers in Pascal, anyone?
Re:Yukky (Score:5, Insightful)
As always when disparaging a programming language, you got to find those examples of nonsensical code nobody writes to generate the nonsensical output nobody cares about, then laugh at it.
Re: (Score:2)
Is it? The functions are behaving in a inconsistent way because instead of returning an error if no numbers are given they return constants to facilitate ease of use which can lead to unpredictable behavior in a script. How they have implemented it is entirely due to lazy programmers, if they can't be arsed to validate data, why should they then be forced to handle any exceptions because of said data.
Now, if you happen to use non-numbers you get NaN instead which means that to handle any return-codes for f
Re: (Score:2)
https://javascriptwtf.com/ [javascriptwtf.com]
Re: (Score:2)
Maybe Perl can enter the contest?
Re: Yukky (Score:2)
Perl behaves less unreasonably and looks less ugly. It also passes the following giggle test:
I am a software engineer. I mainly write in X.
Perl may or may not elicit a suppressed titter if it brings to mind a 40 yo virgin college dropout IT monkey.
Javascript always brings the same hearty belly laugh that VBA and msdos batch files do because the personality it brings to mind is that of the aforementioned monkey's loyal sidekick.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: Yukky (Score:2)
Re: (Score:2)
Re: Yukky (Score:2)
Re: (Score:2)
It's the new BASIC. It's widely available and immediate so people often start out by learning it. It's also extremely forgiving of mistakes.
Sad (Score:3)
Sad that such crap of a programming language is at the top. However, it is understandable. What is not understandable [for me] is that those people call themselves programmers. [Linus' finger to them :)]
Re: (Score:2)
Javascript has the unique position of a monopoly on client side programming for web interfaces. All the other languages are competing with each other on PCs or servers.
I wrote some Javascript once, that did some maths and fancy graphs. The only other choice was server side Java, which did not provide the interactive user interface I wanted. I have to say that Javascript allowed me to write total nonsense of a kind that Python would not allow. I made a typo, that (I think) meant I was adding a number to an O
Do not lump C and C++ together (Score:3, Insightful)
Only someone who can't do either would list C and C++ together. It's time to ignore this report.
Re: (Score:2, Insightful)
Only someone who can't do either would list C and C++ together. It's time to ignore this report.
Nothing wrong with lumping them. Today, even on microcontrollers C++ is often a viable option. Remember, a C++ program does not have to use every feature found in Stroustrup's "The C++ Programming Language".
Re: (Score:2)
I would, and i've been programming both for 25 years. I can see this from both points of view, and think that together makes more sense in this context. Clearly though, if I wanted to hire a C++ developer, i'd not assume that a C developer can do the job.
Idiotic Rubbish (Score:2)
Mutual incompatibility of GUI APIs (Score:3)
the entire world for some stupid reason is only using online programs
As far as I'm aware, a lot of this "stupid reason" arises from mutual incompatibility among the native graphical user interface application programming interfaces (GUI APIs) of Windows, macOS, desktop Linux, iOS, and Android, as well as avoiding content restrictions that Apple puts on apps in the App Store. Has anyone, whether business or hobbyist, proposed a good solution?
No one is working on online programming models which dont use a browser because the one percent are idiots.
Or because Apple's App Store Review Guidelines expressly forbid many "online programming models which dont use a browser", and Apple use
Re: (Score:2)
Or because Apple's App Store Review Guidelines expressly forbid many "online programming models which dont use a browser"
Never heard about that. What would be an example?
Re: (Score:2)
From "App Store Review Guidelines" as of today [apple.com]:
Re: (Score:2)
I somehow fail to imagine "online programming models which dont use a browser" and do not "download, install, or execute code which introduces or changes features or functionality of the app".
That was not the topic. And your quote, clearly states that educational apps may download code. Erm, or can you not read?
Educational apps designed to teach, develop, or allow students to test executable code may, in limited circumstances, download code provided that such code is not used for other purposes. Such apps
Re: (Score:2)
And your quote, clearly states that educational apps may download code.
I figured it would be self-evident that most apps under discussion are not "[e]ducational apps designed to teach, develop, or allow students to test executable code". The sentence you're referring to is a specific carveout in the Guidelines from the "must be self-contained" general rule, intended for Codea, Pythonista, Swift Playgrounds, and other apps with similar functionality.
Perhaps there is some more context defining what such a thin client would be.
I personally couldn't find such clear context in the Guidelines. It is my understanding that Apple has left this vague on purpose
Re: (Score:2)
Basically every App I use uses the internet - somehow - and is not a browser.
Somehow I completely lost what you are aiming at.
I don't even grasp what a thin client into a cloud app is supposed to be. But well, I guess no one grasps that.
The facebook app, is not a web browser. It is an app. Obviously it connects to the "facebook cloud".
Downloading code, as in "dynamic linked libraries" to extend the functionality of the App: always was forbidden. To prevent "hacking" and introducing unwanted foreign code wit
Re: (Score:2)
I don't grasp what your point is.
Basically every modern app is a "thin client" to a REST API.
My point is that developers use JavaScript to write these thin clients for two reasons. The first is that the JavaScript runtime library implemented by web browsers includes the HTML DOM, which is a GUI API that varies considerably less* between platforms than the native GUI APIs of Windows, macOS, X11/Linux, iOS, and Android. The second is that web applications written in JavaScript circumvent the overhead cost and rejection risk of developing native applications for iOS.
* I write "considerably less" becau
Re: (Score:2)
Hm,
your previous point was, Apple encourages one to use the browser, and not to write an App that connects to a server.
I doubt I ever argued about JavaScript, except pointing out that it is a quite nice language in contradiction what most people here on /. think.
They mix up the browser and JavaScript incompatibility mess of the 1990s/2000s or even 2010s mostly based on browser APIs and DOM problems, with the language itself.
Sure, the type coercions between numbers, booleans and god forbid: strings, make mos
EWWWWWW... (Score:2)
Stop touting this (Score:3)
Stating "Study finds that Javascript is the most popular language" is like saying "Study finds that Nitrogen is the most popular gas to breathe." It's true, but not really meaningful. And since Javascript is not a very good language, it irks programmers every time they see it. Perhaps the studies and headlines should just skip the obvious, and say "Other then Javascript, which is the only language supported by web browsers, the most popular languages are..."
Re: Stop touting this (Score:2)
C is my oxygen. C++ is like ozone to me.
Re: (Score:3)
Re: (Score:2)
I would think it's more like saying "The I-405 is America's most popular freeway".
Popularity vs. Mandatory (Score:4, Insightful)
Javascript ist bundled with every browser, and is the only way to accomplish interactivity in a cross-platform way. That does not make it popular, but it does make it mandatory. By way of analogy, if the only way to draw blood was by flagellating yourself with barbed wire, that would be considered popular by this methodology.
Re: (Score:2)
Re: (Score:2)
if you want your PC to become a cryptocurrency zombie
Re: (Score:1)
For some definitions of "interactivity". Consider: e-commerce existed long before Web2.0, so did streaming music videos, etc etc. The stuff we are doing online today is nothing new, it was being done in the mid-1990's. With straight HTML and C. Because the *server* was expected to do the computing required for interactivity, and *not* the client.
Re: (Score:1)
> By way of analogy, if the only way to draw blood was by flagellating yourself with barbed wire, that would be considered popular by this methodology.
The faddsters will find a way to popularize that to get video clicks, don't give them ideas. "Bleeding edge" will be taken literally.
most popular != best (Score:3, Insightful)
best is not universal (Score:2)
Best can be garbage too, the best candidate was elected to political office. Best is dependent upon the options. Consider negative-negative decisions.
No one said best anywhere (Score:2)
Re: (Score:1)
LOL. Actually I have degrees in nuclear physics and operations research from an Ivy League school.
I said "best" because many people equate "popular" with "good". Now if I were snarky like you were in your response, I would suggest something implying a lack of mental ability on your part. Instead, I encourage you to be polite to people you don't know on the Internet, and that you don't contribute to the toxicity that is so prevalent.
Re: (Score:2)
Actually I have degrees in nuclear physics and operations research from an Ivy League school.
Which means you don't know anything about programming at all. Again, let me reiterate, if you want to learn about programming, you can take a class at a community college, or an online MOOC class, or a programming boot camp. One of those may be appropriate for you.
I have a PhD in computer science from a highly-ranked US university I don't know anything about physics or operations research, so I don't go on message boards trying to pretend I have a relevant opinion. Maybe you can learn to do the same, assu
Re: (Score:2)
"Which means you don't know anything about programming at all."
What a rude person you are.
I have written four books about programming, and started a successful IT services company, where I was CTO, which grew to 200 people. And I have written synthesis compilers and numerous very difficult systems.
Before insulting someone you DON'T EVEN KNOW, you might try being polite and nice. These message boards are toxic enough.
Re: (Score:2)
I have written four books about programming, and started a successful IT services company, where I was CTO, which grew to 200 people.
Just because you have an IT company that sets up email servers and fixes keyboards doesn't mean you know anything about programming. I don't know how old you are, but you really need to learn a lesson about life: If you don't know anything about a subject, then don't go around spouting opinions on it. You don't see me going onto brain surgery websites and writing about things I don't know about. You need to grow up. Or if you're already old, then you need to grow up mentally. Tapping into a retirement accou
Re: (Score:2)
"Just because you have an IT company that sets up email servers and fixes keyboards doesn't mean you know anything about programming."
Actually, we built enterprise class systems for companies like FedEx, Capital One Bank, McKesson Pharmaceuticals, etc.
You don't quite trying to insult me, do you? What the heck is wrong with you? Why are you so nasty? I would expect someone with a PhD to be more intellectual and not so toxic.
Re: (Score:2)
I think we *all* got schooled here.
Re: (Score:3)
Oh sure, I'm sure someone like you is going to say COVID-19 isn't any good either because it's popular. COVID haters are everywhere! ;)
Duct Tape (Score:2)
Javascript is Duct Tape. It's a scripting language. It's just fine if we don't keep working to make it the C++ of scripting... It's supposed to slap components together to get stuff done. It shouldn't be the core language for any project and I'd be happy if they limited it to that role and just had it evolve on that path alone.
We should have been spending the last decade using serious compiled languages in web assembly as components that are coupled to the browser with javascript. Instead we've a pile of f
Re: (Score:2)
Javascript is Duct Tape. It's a scripting language.
I think the problem is that it is a bad scripting language. I don't have too much problem with dynamically typed languages, e.g. Python and Lua.
What I do find troublesome is loosely typed languages, which silently coerce between incompatible types, e.g. numbers and strings. If you write C=A+B, where A is a string, and B is a number, is C a number or a string? I suppose there are rules that define what will happen, but it is a lot simpler just to explicitly convert, e.g. C=A+B.to_string(), so you know C is a
Define popular (Score:3)
For this very bad definition of popular, JavaScript wins.
By their definition of "coders".... (Score:1)
Web standards FORCE it on us (Score:3)
If you want to program the browser client, you are pretty much forced to use JavaScript. Few love JavaScript as a language, it's just there in our faces. [youtube.com]
Popular becuase why? (Score:2)
Re: (Score:2)
Micro services are server side, hence the name.
Never heard about a micro service written in JavaScript, why would anyone do that?
god forsaken language
The language is actually a very fine language. Which you would know if you ever had used it, or at least looked at a manual/standard/specc of it - which you obviously haven't.
Re: (Score:2)
Re: (Score:2)
I'm aware of Node.js.
But that has nothing to do with the fact that the Javascript haters here have no clue about Javascript.
And I have no real clue about Node.js, so I do not comment on it. Do you want to imply there are idiots out there that write micro services in Node.js? That would be a pity.
Re: (Score:2)
Re: (Score:2)
I don't think google knows how many/or which micro services are written in Node.js :P
And: I do not need google to look up stuff that does not interest me. Because: it does not interest me.
But thanks for the advise.
You must have some point which I do not get ... perhaps you find the point and can make it more blunt?
Re: Popular becuase why? (Score:1)
Re: (Score:2)
Re: (Score:2)
I wrote a GUI for that micro service project using Javascript / NodeJS / React.
And choosing those technologies has nothing to do with each other.
Except that your project was of the opinion that a "full stack developer" has it more easy if all "layers" are Javascript based.
Bottom line, using Node.js as backend, and writing "micro-services" on top of it: is idiotic. Node.js is a pretty monolithic system, and the idea of micro-services is to have very little small executables that can be deployed in a cloud. A
most user not popular (Score:2)
The headline is wrong. (Score:2)
If you include transpilers, as the survey/"study" does, that makes JS the most popular platform/turing-complete runtime, not the most popular PL. Since just about everything has a feasible JS/WASM transpiler these days, so people can deploy for the client in the web (Browser), this is no surprise. But throwing Rust, Elm or Dart in with JS, just because they are or have transpilers is a stretch or flat-out misleading. I wouldn't even do it with TypeScript, even though it's "just" a superset of JS, for the si
A matter of perspective (Score:3)
For me, that is bash scripts.
Always fun to see the juniors go nuts about about pros and cons of different languages. Takes some time before the discussion caves in on itself. Then it is time to drop in a sentence about linux and windows. Mentioning bashscripts also works. We old guys make a sport of it to keep them going. When they realise this and join our mission, they levelled up in maturity and it is time for celebration (a beer and a pat on the shoulder). Some learn fast, some take forever. Situational awareness is hard for some. Although some of them turn the tables and drop a comment or two about wives and kids. Looking forward to the next lunchbreak.
news at eleven, most popular tool (Score:3)
It beat the screwdriver by a small margin. Know that for some reason, tweezers are still used, albeit by a tiny minority. When the tweezer users will shift to using hammers is unclear. No one we know is interested in figuring that one out though. Coming up, next quarter: the most popular tool in the box, ctd.
Handcuffs most popular among hostages. (Score:2)
About as useful a headline as all of this article. "Popular" is utterly meaningless if what they mean is "Most used". Which isn't even remotely the same.
I wonder (Score:2)
A question about popularity... (Score:2)
A question about popularity is for languages that then transcompile to JavaScript, such as TypeScript. If the metric is number of users per programming language then a separate head count for JavaScript and for TypeScript? Or if a measure is the amount of code out there or in use, then Javascript?
I concur with some of the comments about the measures and metrics used for "most popular" but that term is also nebulous. The most popular programming language reminds me of the "most like to succeed" moniker in hi
More kindle for the bonfire... (Score:2)
Okay, I guess it's that time of the month where someone submits a post suggesting that JavaScript has some actual, legitimate business value in the world. All the C fanboys on Slashdot are crying like someone just smacked their aunt.
#3 most popular developer IDE in the world? Visual Studio Code, written in JavaScript. OH MY GOD, how could my beloved IDE be written in such a horrible programming language? Shouldn't my computer be bursting into flames whenever I try to open a file?
Everyone who complains t
Re: (Score:3)
I ditched Perl for Python. (Score:3)
But oh, I fucking hate Javascript.