9 ms·
The Top Programming Languages 2023
- matt3210 3y ago…Is SQL a programming language?
- teleforce 3y agoApparently yes, the more controversial one is HTML.
- Cthulhu_ 3y agoWhat about HTMX? HTML syntax with more rich options, but the "language" is still HTML.
- MarcusE1W 3y agoSQL is definitely a domain specific declarative programming language. https://en.wikipedia.org/wiki/SQL https://en.wikipedia.org/wiki/SQL
- Cthulhu_ 3y agoYes, SQL, HTML, CSS (not on this list apparently), XML, JSON, YAML and a couple others are all declarative 'programming' languages. I don't know if there's a formal definition of what is and isn't a programming language tbh, but either way I wouldn't consider them lesser for whichever reason. That said, I think SQL, CSS and maybe HTML are the only ones that are a league of their own, that is, you could get a job as a pure CSS or SQL programmer.
- kharak 3y agoSame question for HTML. In my mind, HTML is a markup language. Maybe I am unaware of more advanced features that fall into the programming language category.
- simonbarker87 3y agoFor me HTML is a declarative programming language with a very small feature set. Many people disagree with me and I’m ok with that. The argument of “it’s a mark up language” tends to not hold weight for me as when I ask people why they say “because it’s in the name” - which, for me, misses that HTML is considerably more developed now than when it was named and should be measured on the current feature set. It’s not a hill I’d want to die on though so really, it doesn’t matter.
- 4RealFreedom 3y agohttps://briefs.video/videos/is-html-a-programming-language/ https://briefs.video/videos/is-html-a-programming-language/
- dragonwriter 3y agoHTML isn't turing complete, which, along with other limits make it very limited as a programming language, but it does support programming behavior to some extent without resort to another language, so it certainly makes sense in that regard to call it a programming language.
- shawabawa3 3y agoyes it is, surely that's not even controversial? It's even Turing complete (not that a programming language needs to be) It's just not a general purpose programming language like e.g. Python/C/Java/etc
- MattPalmer1086 3y agoGood question! Unlike it seems almost everyone else replying here, I'd say it is a query language and not a programming language. Maybe an artificial distinction, but I don't think of SQL statements as programs.
- teleforce 3y agoTL;DR: Top 15 PL are Python, Java, C++, C, Javascript, C#, SQL, Go, Typescript, HTML, R, Shell, PHP, Ruby and SAS. Python doesn’t just remain No. 1 but it has managed to widens its lead in 2023 at the expense of smaller, more specialized languages. It has become the jack-of-all-trades language and has found its niche in AI, where powerful and extensive libraries make it very popular. For PL job ranking, SQL is No. 1 skill but to get proper jobs it must come with Java or C++ skill. Java and the various C-like languages, however outweigh Python in their combined popularity for high-performance or resource-sensitive tasks where Python is slow. Very specialized languages like R and Fortran are still very popular perhaps due to their hard to replace reputation in legacy systems.
- baal80spam 3y ago> SAS Now that is a name I haven't heard in a long time. Long long time.
- deshpand 3y agoOf late, I have been googling a lot of SAS and may have contributed to its rise in ranking! Not coding in SAS but moving SAS to Python. Speaking of enterprise Java, there's a ton of enterprise SAS and it's moving to Python.
- punnerud 3y agoPython and SQL work great together (especially with SQLite that is build into Python). So it’s not one or the other. I have thought ML Phd students that mostly used Pandas in Python about SQL, and they where a surprised about the similarities (and the additional power with combining them)
- candiddevmike 3y agoThere is a SQLite library built into python, but it requires the C libraries that may or may not be present on your system.
- nonethewiser 3y agoI am interested in reading more about their methodology. They seek to rank by “popularity” but thats a very fuzzy term. I expected to see Javascript #1 based on how common it is. Which owes itself to being the only option (outside of the WASM niche) for front end web development, in addition to being fairly general purpose (node, electron, mobile). So im surprised to see it at #5 and less than half the score of python. For example, search Indeed for software engineer jobs and filter by programming languages. Last I checked JavaScript had far and away the most results. And it becomes clear why - basically any web development position requires it. Python + JS, C# + JS, Ruby + JS, JS (node, ts, etc) + JS, etc. Again, it depends on how you define “popular.”
- threeseed 3y agoLikewise how does Visual Basic have more jobs than Swift. I suspect they are looking for keywords in job titles and missing the fact that iOS development = Swift just as Web development = Javascript.
- nonethewiser 3y agoWow that’s a good point. I see no way that could be true.
- unforeseen9991 3y agoI dunno, never underestimate the amount of legacy that exists in the vast majority of corporations. I've come across far more VB developers in non-tech companies then swift developers.
- Shrezzing 3y agoThere are more Excel databases in the wild than any of us could reasonably fathom.
- jagged-chisel 3y ago“Excel databases” - this pains me
- fouc 3y agoSeems strange it thinks Julia is more popular than Elixir. Or that Perl has more jobs than PHP or Ruby.
- version_five 3y agoWith this kind or ranking, there is a ton of noise so the top few likely correctly reflect the methodology but the ordering of the lower ones is meaningless.
- fouc 3y agoIronically I'm looking at the ordering of the lower ones make sure the overall ordering passes the sniff test.
- BaculumMeumEst 3y agoI wonder if SQL will be able to catch up to C#. Maybe they’ll add the English language next year so I can see how popular it is compared to Javascript.
- skrebbel 3y agoWill never happen as long as the SQL team refuses to add pattern matching.
- vitiral 3y agoWhat does "add the English language" mean??
- sam_goody 3y agoParent is making fun of the fact that SQL is not a programming language similar to C and does not compete with it. It is like comparing the popularity of HTML vs. CSS. English is Turing complete and is meant to be processed by a human or AI compiler, but you wouldn't compare it with Javascript.
- wofo 3y agoMaybe using English as a programming language ("transpiled" to a lower level language using an LLM)?
- giardini 3y agoThe fact that one programs ChatGPT with the English (or other human) language perhaps.
- sam_goody 3y agoPig Latin should be counted, as it is an algorithmically altered language, which makes it comparable to a programming language And JSON, since it looks like programming spaghetti.
- Cthulhu_ 3y agoJSON and YAML are used as programming languages for e.g. Docker, expressing conditionals, variables, etc. I don't like it :p.
- pjmlp 3y agoThose numbers are quite interesting and a good wake up call for all those mentions how relevant Kotlin happens to be on the JVM space, across all three criterias.
- cutler 3y agoWhen I search Kotlin jobs on Indeed I qualify with -Android -mobile to get the truth about Kotlin's failure to make a dent in Java's entrenchment outside mobile.
- crims0n 3y ago> Python’s increased dominance appears to be largely at the expense of smaller, more specialized, languages. It has become the jack-of-all-trades language—and the master of some, such as AI, where powerful and extensive libraries make it ubiquitous. Python being described as a jack-of-all-trades and master of some is a really succinct way of explaining it's dominance. One of my kids is about old enough to start learning to program. At this point, I can't see a reason to teach her anything but Python.
- jppittma 3y agoI've always felt like it was a bad first language because there's all of this type stuff going on under the hood that isn't really hidden from the user. I think go/java are probably better first language because they're more explicit with the typing. Java in particular, because the fact that it's so verbose and has so much boiler plate, I think, is actually good for a new programmer.
- version_five 3y agoWhy not C then? Java has more "just do this because it's the way it is". I think it depends on why someone is learning to program, generally I think python is fine for say a mechanical engineer that has to do some scripting, C is good for, as you say, understanding what's happening under the hood, exposing pointers in particular.
- jppittma 3y agoI think with C, learning how the pdp11 worked gets in the way of learning how to program. I think most people should eventually learn C, but control flow should come first, and java provides more guard rails. No `char *` and no segfaults.
- lenkite 3y agoThe array-pointer decaying magic in C requires too much mind-bending. Most of the standard library for string processing is insecure. No boolean types. No name-spacing. One-line if bugs (ridiculously common for beginners and even experts). I could go on and on. Frankly - I would have preferred to learn assembly as a first language rather than C in my college days.
- marcodiego 3y agoLooks like it is way more likely to get a job if you know fortran or cobol than delphi.
- hackernoteng 3y agoJava is king. Take away all the AI batch stuff and Python would shrink more. Putting python in production for online applications has many issues (trust me, I know). Java is very robust, performs well, tons of mindshare, pretty good frameworks (Spring Boot, Quarkus), and very good IDE support.
- sailorganymede 3y agoKotlins been magical for working w/ too!
- dzonga 3y agothe jvm is a powerful platform. but java itself sucks. yeah massive ecosystem. library for everything. but if thre's one thing that embodies complexity for the sake of complexity its java. java is also pragmatic. you're less likely to lose hair using java than python. but java sucks -- you've a lot of "come-from" statements that you can't easily grasp the code. maybe it's me just being a dumb mofo
- adolph 3y ago> Take away all the AI batch stuff and Python would shrink more. Isn’t that a but like saying “Take away all that enterprise stuff and Java would shrink more?”
- The-loan-wolf 3y agoContext here is "general purpose language" so yeah if you take away AI from python, python will decrease more
- manfre 3y ago> Take away all the AI batch stuff and Python would shrink more. Odd statement. Take away spring boot and Java would shrink more.
- valbaca 3y agoAI is in a hype-cycle. Spring boot isn't
- eggy 3y agoWow, J is up there in the top 50! And under jobs, J is 0.02 vs. Rust's 0.0162. I have a better chance of getting a J job? Cool.
- hurril 3y agoHow are they measuring that Java is trending?
- dtnewman 3y agoThis doesn’t pass my smell test. Ok, python is taught in colleges and widely used for data science. Fine. Java… yeah, lots of legacy code and large corps. Fine. But C++? I can see why C might be up there due to the embedded world, but is C++ really more popular than JavaScript? I’d expect JS to be at the top of the list, and meanwhile it’s only about twice as high as GO? I like Golang, but ask ten software engineers and maybe one has used it, whereas it’s unlikely you haven’t used at least some JS. My gut tells me that this list isn’t very meaningful.
- rustybolt 3y ago> it’s unlikely you haven’t used at least some JS Sure, but it all boils down to what exactly is ranked right? "Percentage of programmers that has used at least some of this programming language." is probably not a criterium.
- cachvico 3y ago> our general “Spectrum” ranking—which is weighted to reflect the interests of the typical IEEE member I guess this is because the typical IEEE member is a scientist, not a web developer.
- Kamq 3y ago> But C++? I can see why C might be up there due to the embedded world, but is C++ really more popular than JavaScript? If it's anything like tiobe, they give bonuses for vendor offerings, which gives languages like c/c++/fortran legs up for most domains that aren't web development. Robotics, embedded, scientific computing, etc. Or at least I've never seen a js vendor offering that wasn't for web development.
- PaulDavisThe1st 3y agoJust imagine that there's a whole world of software development out there that doesn't involve web browsers. You've just imagined reality.
- deterministic 3y agoThere are more than 5 million C++ developers out there. The world runs on C++ (and C) software.
- mannykannot 3y agoThe subheading: Python and SQL are on top, but old languages shouldn’t be forgotten. I'm old, and so are Python and SQL.
- dagw 3y agoSQL is old (was popular before I started programming). Python is new (I remember when it became popular). SQL is also the second oldest language in top the 20, after C. Hell, the only languages older than SQL on that list overall are C, Fortran, Lisp and Assembly
- mannykannot 3y agoAlas, time is inexorable. Like having a facelift, shifting to "when they became popular" doesn't actually reset the calendar.
- lunarimiso 3y agoPython is older than Java though.
- dagw 3y agoAnd JavaScript and PHP and literally half the languages on the top 10.
- dragonwriter 3y agoSQL is 44 years old, and Python is 32. Both are old. I mean, not Lisp/COBOL old, but old.
- silent_cal 3y agoCan someone explain why Java is so popular?
- deleted 3y ago[deleted]
- w1nst0nsm1th 3y agoLegacy... End of '90 to mid 2000, Java was the go-to language for everything, from browser applications (applet), to coffee machine, to enterprise applications. It is cross-platform, and was free before oracle bought Sun Microsystem. It's also the language of devellopement of Android.
- timbit42 3y agoIt's the new COBOL.
- jiehong 3y agoAndroid, even though Kotlin is growing there. Otherwise, it’s a language that has picked up pace in the last few years and is not laying still (Java 17 and now 21 for example, but also AOT compilation with graalVM, etc).
- silent_cal 3y agoThanks
- acedTrex 3y ago> Veteran languages can also turn up in places you might not expect. Ladder Logic, created for industrial-control applications, is often associated with old-fashioned tech. Ladder logic is not "old fashioned tech." It is by far the most commonly used language in American manufacturing. Nothing beats it for allowing the onsite techs to easily debug the machine at 2am.
- mabbo 3y agoI came to say the same thing! There is a hidden economy of programmers who often don't realize they're programmers. They're hidden inside every industrial facility, maintaining machines that use ladder logic to control their functionality in PLCs. And the ones I've met are generally brilliant at it. I was watching as one such person modify the program running a machine. "How do you deploy the change?" I asked. "Deploy? No, this is live. Every change I make is happening immediately."
- eternityforest 3y agoI very often wish I'd never gotten into coding and either done (ladder logic as opposed to custom embedded hardware and software) industrial controls or journalism...
- vitiral 3y agoWow, Dart is beating Rust. That surprised me quite a bit
- fyzix 3y agoOver a million flutter apps are on the playstore, a 100% YoY increase. https://docs.flutter.dev/resources/faq#should-i-build-my-next-production-app-with-flutter https://docs.flutter.dev/resources/faq#should-i-build-my-nex...
- lenkite 3y agoOnce WASM GC comes in all mainstream browsers, I fear flutter/dart will eat the web.
- javier_e06 3y agoIs SQL touring complete? If not, it belongs on a different bucket.
- Danidada 3y agoSQL has been Turing complete since the 1999 standard https://stackoverflow.com/a/7580013 https://stackoverflow.com/a/7580013
- akho 3y agoOf course it is.
- alpaca128 3y agoSomeone wrote a raytracer in a MySQL query, so yes: https://www.pouet.net/prod.php?which=83222 https://www.pouet.net/prod.php?which=83222
- dragonwriter 3y ago> Is SQL touring complete? SQL is Turing complete. Standard SQL may not have been before SQL:1999 (though proprietary query and procedural extensions made many concrete implementations Turing complete), but both CTEs and procedural code (SQL/PSM) were added as part of the SQL standard in SQL:1999, and either one alone would make standard SQL Turing complete.
- timbit42 3y agoWhich category is supposed to relate to their previous reports? They used to have 4 languages (C, C++, C#, Java) between 50 and 99, now there are none. It appears their algorithm has changed. They mention change in the article but all the change appears to have happened in the past two years. They describe Trending as zeitgeist but what does that mean?
- PaulDavisThe1st 3y agoDefinitely completely clear that nobody would start any major projects in C++.
- rewmie 3y agoWhy?
- PaulDavisThe1st 3y agoThat used a sometimes conventional "sarcasm font" to refer to a widespread belief that now that we have Rust, nobody would start a project of any size in C++.
- fuzzythinker 3y agoTop "programming" languages should not include SQL. No one uses it to do programming, we use it to read/write to a data store. If it's included, Excel/google-sheet should be included ahead of it and would be the #1 programming language. Typescript is a programming language, but should be grouped with JS in lists like this.
- loco5niner 3y agoHa! That might be the way you use it. I suspect the majority of our business logic is implemented in SQL.
- dragonwriter 3y ago> No one uses it to do programming Not at all true. > we use it to read/write to a data store. Reading and writing a datastore is programming, but, no, that’s not the only thing SQL (including its standard, and various proprietary, procedural modules/extensions) are used for.