The 2018 Top Programming Languages, According To IEEE (ieee.org)
New submitter rfengineer shares a report: Welcome to IEEE Spectrum's fifth annual interactive ranking of the top programming languages. Because no one can peer over the shoulders of every coder out there, anyone attempting to measure the popularity of computer languages must rely on proxy measures of relative popularity. In our case, this means combining metrics from multiple sources to rank 47 languages. But recognizing that different programmers have different needs and domains of interest, we've chosen not to blend all those metrics up into One Ranking to Rule Them All. [...] Python has tightened its grip on the No. 1 spot. Last year it came out on top by just barely beating out C, with Python's score of 100 to C's 99.7. But this year, there's a wider gap between first and second place, with C++ coming in at 98.4 for the No. 2 slot (last year, Java had come third with a score of 99.4, while this year its fallen to 4th place with a score of 97.5). C has fallen to third place, with a score of 98.2.
No.
Maybe to people learning programming and trying to decide what they should focus on so as to be relevant when they graduate.
By the time they graduate, all the languages-du-jour will have changed.
The only things that will always be there are assembly, C, C++, javascript*.
* until all the major browsers switch to something else, but they'll never agree to that.
#DeleteFacebook
From the TFA of TFA of TFA:
"one less source this year, as the Dice job site shut down its API"
(https://spectrum.ieee.org/static/interactive-the-top-programming-languages-2018)
And likely creating all the security holes that make the internet the wild, wild west that it is. Thanks bud.
Does python have rockstars? Does C++ have ninjas? Does java have 10x rockstar ninja? No!
Javascript is a 10x rock star ninja. One moment, you're sitting there, alive, than POW you're dead. And there's an asian guy with playing some sweet riffs on his guitar/sword, teabagging your mouth.
And if you're only a 1xer, that's cool too. npm has tons of high quality javascript one-liners written by the industries best 10xer and/or bootcamp homework projects. How do you know if something is the number 3 in c++? You don't! But npm has probably 30 or 50 packages to check for the number 3.
Copyright (c) 1990 - 2014 Dice. All rights reserved. Use of this comment is subject to certain Terms and Conditions.
I do not like your hat.
> So what are the Top Ten Languages of 2018, as ranked for the typical IEEE member and Spectrum reader?
Their membership must be a very niche market for R to outrank JavaScript in "popularity".
The article admits that different languages are used for different things. It's like making a list of "top vehicles", including cars, trucks, ferries, cargo container ships, and airplanes. Yet they go right ahead and still create a master ranking, because they can't help themselves. And we can't help but froth about it, which is the entire damn point for all of this.
It's hard to get too frothy when my own language of choice, C++, is near the top, but my own view tends to be incredibly myopic, as I work in the game industry, and C++ absolutely dominates there.
Irony: Agile development has too much intertia to be abandoned now.
Yes, this is yet another "What's the best/most popular Programming Language" and I suspect that for most people, it's not very representative.
But, as an EE I can see that this list (especially the top ten) is very accurate for the development work that I do (embedded and web apps accessing the embedded devices) and I suspect that it's pretty good for other EEs.
If you're a web, app, database developer or even involved in IT, this list will NOT be accurate.
Mimetics Inc. Twitter
If it's in the top 5 or 6 now and had been holding steady or climbing for the last couple of years it's hard to imagine that it wouldn't still be in the top 10 in a few years.
Most of the things in the top 10 list of 2018 have been around and popular for a decade at least. The exception would be Go which is only 9 years old.
And likely creating all the security holes that make the internet the wild, wild west that it is. Thanks bud.
Handing a good language to a bad coder doesn't result in better code. I've seen plenty of security holes in any language.
https://www.tiobe.com/tiobe-in...
https://insights.stackoverflow...
One thing a list like this is helpful for is anyone looking to learn a new language, or learning programming or computer science without prior experience... if your school is teaching their mainline classes in a language not on this list, that is a major red flag. Probably should be in the top 5, to be honest, given what's in the 6-10 slots.
Or, if you don't really know what you're looking to get into, other than being able to make your computer do stuff, then this might be a good guide. Start by defining the type of programming that interests you, then look at this list for the best-in-class option(s). A seasoned programmer looking for a change of pace would do worse than to pick up one of the others on this list-- just for the paradigm shifts and being forced to exercise a bit differently.
I mean, I do see some "not-on-your-life" languages in the list, especially PHP. But given the apparent demand, even that might be a good way to break into the industry for a later-life career change for someone with a technical bent. Something to do for ten years until retirement kind of thing.
I do not have a signature
BOW DOWN MORTALS Before the one true language. The Ur-language that ushers in all the false idols. The Most Holy of relics...
C
The old gods are calling. Can you hear them? It's the sound of inevitability as the young usurpers weep into their transient drinks feeling their lifeblood leak away like so much memory. What pidly followers they amassed will blow away like so much dust. And where do they turn when all they hold dear is cast about on shifting sands? The stable bedrock of C.
LOOK UPON IT'S MAJESTY and look upon your EVERYTHING and you will see it staring back at you. Your Linux, your arduinos, your Rasberry Pis, your toaster, your fridge. We are the ones who cook your food. We are the ones who drive your cars. We are the ones who hand-carry your garbage when your program closes. DO NOT fuck with us.
Just high enough above the metal to be portable as all fucking get out and low enough slide through that silicon like greased lightning. This IS your grand-daddies programming language because he knew his shit. The experience of GENERATIONS is out there and honestly eager to help. Ask on stack overflow about how the shareponit widget gets shuffled by the flub API in the .WHORE framework and you'll have a couple crickets for company. But ask for some fluent C and the fucking CHOIR comes out to play.
C is the language to learn my friends. It gets you where you need to be. It's not the last language you want to learn, but it's certainly the one you want to sharpen. Hone that to a razor edge and you can cut any problem down to size. And that's no Turing tarpit. I may program in Brainfuck and Malbolge for shits'n'giggles, but C is the workhorse of solving real meaningful problems. Bash glues yesterday's solutions together, and some pretty GUI-maker can make yet another button for a clueless suit, but you whip out C for the hard cases.
#include
int main(int argc, char** argv)
{
printf("Bro, do you even code?\n");
return 0;
}
I'd start counting flaws but I don't have all day. At least these are readily apparent.
HTML is not a programming language. It's a markup language, and although one might be able to coerce HTML5 and CSS3 together into being Turing complete that's an emergent property best thought of as a bug.
SQL is a query language. Fairly sophisticated data manipulations can be done with it, but it's typically used with an actual programming language to develop applications.
Arduino isn't a language at all. It's a hardware device which can be programmed in various languages. There is an approved IDE but more than one language supports the platform.
Cuda is not a language, but a toolkit for GPU programming that's used from multiple different languages.
Shell and assembly are each more than one language. May as well by that logic call Clojure, Scheme, and Racket part of Lisp. Call JavaScript and ActionScript both ECMAScript.
The method of looking at searches for "X programming" specifically gives an advantage to languages that don't lend themselves to search or need disambiguation like C, Go, Python, Ruby, R, S, D, shell, assembly, or Crystal. Languages with distinct names like Perl, Erlang, JavaScript, Smalltalk, ActionScript, or Matlab don't generally need such qualification.
Actually, I hate C because it's so difficult to send data between executing parallel processes and, secondarily, because it such a beast to handle unicode in. C was probably my third programming language, and the second was assembler. (Fortran was my first.) There are a few other reasons, the dangerous way it handles pointers, etc., and it's ugly when you start needing multiple layers of indirection. But most of those can be gotten used to. The first two, however, ... shudder...
I think we've pushed this "anyone can grow up to be president" thing too far.
Keep in mind that an awful lot of meaningful programming is done by folks who are capable, but are not "computer scientists" They tend to prefer "scripting languages" (Python, Perl, Javascript). to glorified assembly languages. But even though they don't and maybe can't write device drivers, their needs and preferences are important too.
If you're trying to make sense of 10 million data points, do you really want to write a C++ program to filter, manipulate, join sets, etc. Probably not. Even if you can do C or C++ or assembler, in practice, you'll probably use R or mathlab or Python.
You can't see ANYTHING from a car, You've got to get out of the goddamned contraption and walk...Edward Abbey
I actually worked with those old 20000 line plus Fortran programs and they were surprisingly easy to work with. One quickly learned that in order to maintain some semblence of sanity, one had to block line numbers by function -- e.g. 0-1000 are global stuff, 1000-2000 are input ... Sounds dumb, but it worked. In a few cases I saw both the 1960s monolithic Fortran code and the 1980s modern style code with roughly sixteen zillion tiny subroutines. Personally, I think the older style was often easier to work with.
I don't know much about Cobol, but the one time I had to debug an issue in a Cobol subsystem, I found it to be surprisingly readable. I don't think I have the patience to write Cobol code, but I think it probably deserves more respect than it gets.
You can't see ANYTHING from a car, You've got to get out of the goddamned contraption and walk...Edward Abbey