Slashdot Mirror


JavaScript, PHP Top Most Popular Languages, With Apple's Swift Rising Fast

Nerval's Lobster writes Developers assume that Swift, Apple's newish programming language for iOS and Mac OS X apps, will become extremely popular over the next few years. According to new data from RedMonk, a tech-industry analyst firm, Swift could reach that apex of popularity sooner rather than later. While the usual stalwarts—including JavaScript, Java, PHP, Python, C#, C++, and Ruby—top RedMonk's list of the most-used languages, Swift has, well, swiftly ascended 46 spots in the six months since the firm's last update, from 68th to 22nd. RedMonk pulls data from GitHub and Stack Overflow to create its rankings, due to those sites' respective sizes and the public nature of their data. While its top-ranked languages don't trade positions much between reports, there's a fair amount of churn at the lower end of the rankings. Among those "smaller" languages, R has enjoyed stable popularity over the past six months, Rust and Julia continue to climb, and Go has exploded upwards—although CoffeeScript, often cited as a language to watch, has seen its support crumble a bit.

28 of 192 comments (clear)

  1. Interesting pattern by Salamander · · Score: 5, Interesting

    Below the line are languages that are more popular on GitHub. Above the line are languages that are more popular on Sewer Overflow. There's a distinct difference. The "GH" languages tend to be systems languages (Go/Rust/D) and CS favorites (Haskell/OCaml/Erlang). The "SO" languages tend to be more lightweight and application-specific - Visual Basic, Matlab, ColdFusion. "Assembly" seems to be an outlier, but other than that the pattern seems pretty consistent. Conclusions about the audiences for the two sites are best left as an exercise for the reader.

    --
    Slashdot - News for Herds. Stuff that Splatters.
  2. not really the whole story by Lawrence_Bird · · Score: 2

    Sure, lots of interest in javascript, php. What is the longevity of that code (beyond libraries)? Weeks? Months? And not sure public github or stack overflow are really as representative as they want to believe

    1. Re:not really the whole story by Dutch+Gun · · Score: 5, Insightful

      More critically, the question I always ask about this is: "Used for what?"

      Without that context, why does popularity even matter? For example, I'm a game developer, so my programming life revolves around C++, at least for game-side or engine-level code - period. Nothing else is even on the radar when you're talking about highly-optimized, AAA games. For scripting, Lua is a popular contender. For internal tools, C# seems to be quite popular. I've also seen Python used for tool extensions, or for smaller tools in their own right. Javascript is generally only used for web-based games, or by the web development teams for peripheral stuff.

      I'll bet everyone in their own particular industry has their own languages which are dominant. For instance, if you're working on the Linux kernel, you're obviously working in C. It doesn't matter what the hell everyone else does. If you're working in scientific computing, are you really looking seriously at Swift? Of course not. Fortran, F#, or C++ are probably more appropriate, or perhaps others I'm not aware of. A new lightweight iOS app? Swift it is!

      Languages are not all equal. The popularity of Javascript is not the measure of merit of that particular language. It's a measure of how popular web-based development is (mostly). C/C++ is largely a measure of how many native, high-performance-required applications there are (games, OS development, large native applications). Etc, etc.

      Raw popularity numbers probably only have one practical use, and that's finding a programming job without concern for the particular industry. Or I suppose if you're so emotionally invested in a particular language, it's nice to know where it stands among them all.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    2. Re:not really the whole story by unrtst · · Score: 4, Insightful

      ... And not sure public github or stack overflow are really as representative as they want to believe

      Yeah.. why is this any better than:
      TIOBE index: http://www.tiobe.com/index.php...
      This story about python surpassing java as top learning language: http://developers.slashdot.org...
      Or this about 5 languages you'll need to learn for the next year and on: http://news.dice.com/2014/07/2... ... those are all from the past year on slashdot, and there's loads more.

      Next "top languages" post I see, I hope it just combines all the other existing stats to provide a weightable index (allow you to tweak what's most important). Maybe BH can address that :-)

    3. Re:not really the whole story by hcs_$reboot · · Score: 3, Funny

      What is the longevity of that code (beyond libraries)? Weeks? Months?

      Simple. Just peek one of the available functions/vars
      $longevity = PhpGetLongevity_days();
      $longevity = php_get_long_evity( IN_DAYS );
      $longevity = $_SERVER['longevity_days_from_server_variable'];
      $longevity = $OBJ.__what_isMyLongevity();

      --
      Slashdot, fix the reply notifications... You won't get away with it...
    4. Re:not really the whole story by serviscope_minor · · Score: 3, Informative

      C/C++ is largely a measure of how many native, high-performance-required applications there are (games, OS development, large native applications)

      And embedded things. it remains perenially popular there since the firmware tends to be native and of course high performance within the tiny constraints of something like an 8051.

      --
      SJW n. One who posts facts.
  3. 68th to 22nd and there are many to go by gavron · · Score: 5, Insightful

    All new languages start out at the bottom, as Swift did.
    In time, the ones that don't get used fall down.

    Swift has gotten up to 22nd, but the rest of the climb past the stragglers won't ever happen.

    However, to be "the most popular language" is clearly no contest worth winning.
    Paris Hilton and Kim Kardashian are most popular compared to Steven Hawking and Isaac Asimov.
    Being popular doesn't mean better, useful, or even of any value whatsoever. It just means
    someone has a better marketing-of-crap department.

    There's a time to have popularity contests. It's called high school.

    E

    1. Re:68th to 22nd and there are many to go by coop247 · · Score: 2

      Being popular doesn't mean better, useful, or even of any value whatsoever

      PHP runs facebook, yahoo, wordpress, and wikipedia. Javascript runs everything on the internet. Yup, no value there.

      --
      //TODO: Insert catchy phrase
    2. Re:68th to 22nd and there are many to go by 93+Escort+Wagon · · Score: 2

      Swift has gotten up to 22nd, but the rest of the climb past the stragglers won't ever happen.

      Well, since Objective C is currently at #10, it seems apparent Swift is still nowhere near its potential ceiling.

      --
      #DeleteChrome
    3. Re:68th to 22nd and there are many to go by phantomfive · · Score: 2

      Swift has gotten up to 22nd, but the rest of the climb past the stragglers won't ever happen.

      I'm really interested in why you think Swift will not make it much higher. I have my own opinions but I'm interested in hearing yours.

      There's a time to have popularity contests. It's called high school.

      The point of popularity contests in programming languages makes the difference between having to write all the libraries yourself, or being able to use work others have done. Also it's interesting to see what other people think is good.

      --
      "First they came for the slanderers and i said nothing."
    4. Re:68th to 22nd and there are many to go by MillionthMonkey · · Score: 5, Funny

      Paris Hilton and Kim Kardashian are most popular compared to Steven Hawking and Isaac Asimov. Being popular doesn't mean better, useful, or even of any value whatsoever. It just means someone has a better marketing-of-crap department.

      Thanks, now I'm imagining Stephen Hawking yelling at his marketing team from that wheelchair. "Why is Kim Kardashian more popular than me? You think her space-time is more curvy than mine?"

    5. Re:68th to 22nd and there are many to go by iluvcapra · · Score: 3, Informative

      You can get at pretty much the whole thing now. The only thing you can't do in Swift is create a C function pointer to a Swift code block, so some of the callback-based tasks in CoreAudio and CoreMIDI can't be used. But apart from that calling into C and using C data structures pretty much just works.

      The existing APIs aren't very idiomatic to Swift, you gotta do more casts than you probably should have to and there are some really common patterns in Cocoa that are a pain.

      --
      Don't blame me, I voted for Baltar.
    6. Re:68th to 22nd and there are many to go by brunes69 · · Score: 2

      The fact that Swift *only* targets iOS and OSX makes it a non starter for most companies. Companies are not in the game of building an app twice from the ground up. Cross platform frameworks for apps and games are ESSENTIAL - even if the app has a different skin between iOS and Android, the internals all need to be cross-platform. Otherwise you are spending 2x the cost for none of the benefit.

      FWIW, this is also why this survey is incredibly flawed. The vast majority of iOS and OSX apps are not open source so stats from Github are totally irrelevant as to what trends are actually occurring in industry.

  4. Popularity != Quality by UnknownSoldier · · Score: 5, Insightful

    McDonalds may serve billions, but no one is trying to pass it off as gourmet food.

    Kind of like PHP and Javascript. The most fucked up languages are the most popular ... Go figure.

    * http://dorey.github.io/JavaScr...

    1. Re:Popularity != Quality by unrtst · · Score: 3, Interesting

      McDonalds may serve billions, but no one is trying to pass it off as gourmet food.

      But if you want to learn a skill that will almost certainly get you a job somewhere, then learning to flip burgers is a pretty safe way to ensure a job (quality of job not considered).

      This type of popularity *does* have a purpose and implications and value. It's good to know. You still need other factors before you make your decisions, but it's a valuable one. It'd be nice if the various indexes had a page that also allowed them to be cross referenced and weighted to produce new calculated scores (ex. pay scaled by a factor of 1.5; lines of code in the wild scaled by factor of 0.5; most growth in past N years scaled by factor of 1.2; job postings for it scaled by 1; etc etc; combine them and calculate new scores). I don't know if I'd actually get any more usable value out of that, but it'd be (arguably) better than these stats we've been given lately.

  5. methodology by phantomfive · · Score: 2

    If anyone is wondering about the methodology, I did the hard work of reading the article so you don't have to.

    Essentially they measured the popularity of the language on github, then measured the popularity of the language on stack overflow. The rank is an average of the two.

    Swift is right there next to assembly, in case you're wondering how popular it is.

    --
    "First they came for the slanderers and i said nothing."
  6. Re:bleh by Darinbob · · Score: 5, Funny

    Most used piece of furniture in large households is the toilet.

  7. Re:Who's surprised by this? by omfgnosis · · Score: 2

    Since JavaScript is increasingly also a compilation target, the fact that it continues to dominate is a good indicator that the competition among compile-to-JS languages is strong.

    One of those biggest companies on earth promotes both Go and Java as compile-to-JS languages with less success than I would expect.

    Granted I'd prefer to see ClojureScript grow, but I am not placing any bets there.

  8. Re:Just learn C and Scala by jc42 · · Score: 2

    I never got why employers are so obsessed about people having worked in language whatever.

    In my experience, this is because "employers" in this context means the people who are either doing the hiring process, or are the top management. That is, they are people who have no concept of what a programming language is. So they make the obvious connection based on the terminology: It's like a (written, probably) human language. This means that it's so complex, inconsistent, and full of special cases that it takes years for anyone to become fluent.

    I've experimented in a few interviews, and tried to get across what learning a programming language is really like. One of the example I like to bring up is my introduction to C. I borrowed a colleague's "C bible", took it home for the weekend, and read through it. On Monday morning, I sat down at a terminal at work and tried writing a few programs. One of my self-assigned programs was a functional sort routine, which I had running and correctly sorting some available multi-Mbyte datasets by noon. After lunch, I coded up another half dozen sort routines, wrote an inteface routine that took pointers to a data set and a sort function and churned out the results. I tested all the sort routines on all several dozen available datasets, and printed out the sort speed for each routine on each dataset. (The results of this surprised a lot of people, who knew the usual estimated speeds of sorts on random data, but of course none of our datasets were anywhere close to random. Some were really upset when the winner on several of our - very non-random - datasets was the bubble sort. ;-)

    Inevitably, though, the interviewers decided that I was lying. Nobody could learn a language that fast, y'know. They were clearly puzzled about why I would even try to pass off such a blatant lie, when anyone would know it couldn't be possible. My colleagues in the DP department weren't surprised, of course; they'd all done similar things to learn other languages. Sorting is a well-defined subject with lots of well-defined algorithms that they could mostly code up in a few hours, and C is a logical, well-defined language that was (almost;-) completely described in a rather small book. But the HR and manager types that did the hiring all judged the difficulty by imagining how long it would take them to learn to explain a sort algorithm fluently in a strange human language, and by that misunderstanding, I had to be lying, because nobody can learn a language that well in only a weekend.

    (Actually, I've only tried this sort of thing after I've already decided I don't want the job. Making them thing you're lying during the interview isn't really a good idea if you want a job. ;-)

    Anyway, if you understand this, you understand why employers might not want to hire someone who doesn't know a language. They're thinking of examples like opening a sales organization in Pakistan or Thailand, and what would happen if they hired people who weren't fluent in the local languages to run the sales campaigns. The computer folks' use of the term "language" makes them think that hiring a programmer who doesn't know language X to write software in language X will be that sort of disaster, and they can't wait the years it'd take to develop the sort of fluency they need. There's nothing you can do to teach them about their serious lack of understanding. If you try, you'll just be labelled a liar, so don't bother trying to educate them.

    --
    Those who do study history are doomed to stand helplessly by while everyone else repeats it.
  9. Re: Is this a joke? IPhones are dying. by Anonymous Coward · · Score: 3, Funny

    This could be the year of the windows des.. umm, ph... err thing.

  10. Re:Who's surprised by this? by omfgnosis · · Score: 4, Interesting

    Frankly, the only thing that's going to upend the JS dominance of client-side web programming is a functional language. There isn't a compelling reason to trade OOP horses on the web. There's a good reason to choose a better paradigm for the problem. A functional paradigm with a good immutability story is going to have a much better time convincing people to rethink how they program web apps with a focus on user interaction over time.

    There isn't much point in vying for who can do the best at mixing data and behavior. Separating those will be a good way to compel people to consider alternatives.

  11. Shell is the best by lucm · · Score: 4, Funny

    I don't know why "Shell" is in only 11th place. It's such a powerful language, it has the whole shebang.

    --
    lucm, indeed.
  12. Slashdot 101 by lucm · · Score: 5, Funny

    that they are less-often corrected?

    If you've noticed that, it means that you often read those articles more than once. That's not how Slashdot is supposed to work.

    Here is a tutorial:

    1) Have a quick look at the new articles. If you manage to read an entire title, click on it, otherwise scroll.

    2) Check if the submitter is Bennett. If it's the case, go back to #1.

    3) Read the first 2 lines of the summary, and if those contain hyperlinks, move your mouse over the first one to see if it's a reputable domain (but don't click - the idea is just to see if the story is bullshit). If there are many hyperlinks in the first two lines, especially if there is a series of 1-word hyperlinks, go back to #1. In any event don't read more than 2 lines.

    4) If there are 10 comments or less, post a Frist! comment. If there are more than 10 but less than 50 comments, post a comment without reading the existing ones. If there are 50 comments or more, find the first 5 Interesting and try to find a weakness in the comment (that's your best way to a 5 Insightful). Don't worry if you don't know the details of what is in the article (or even in the summary), most people don't read those either, and those who do will provide you with the tldr version at some point if you're terribly wrong.

    5) If you are bored, scroll to 2/3 of the page and find the first -1 Flamebait. Odds are that it's one of the most interesting comments in the page.

    6) If you are still bored and there's nothing left but yro or "answers your questions" stories on the homepage, pick any article, remove the moderation filters and try to find those long rambling homophobic/racist erotica comments, or why not treat yourself to a full read of one of the posts from Mr Hosts file.

    There you go. There's plenty to do on Slashdot besides keeping statistics about how often typos are fixed.

    --
    lucm, indeed.
  13. Re:Who's surprised by this? by Anonymous Coward · · Score: 2, Informative

    Nonsense. I like functional programming more than most of the people I know, but JS itself is becoming a pretty decent functional language. It's not as "pure" or academically-sanctioned as some of us might want, but it's hardly as bad as a lot of other popular languages. It fact it's already half-decent, and ES6 will even have proper tail recursion. Other popular languages struggle mightily with that concept, while JS is trying to actually make it standard. JS is basically just C++-like in that it has a lot of baggage, and the VMs are still only just starting to achieve a level of maturity where we can truly code efficiently in functional ways. The more people pretend that it's all dire and shitty, the more obvious it becomes that they've never really tried to use JS as a proper language, and are just trying to use it badly. Or that they just want to pretend that it's still 1999, and JS hasn't budged an inch, and isn't moving at all, while Firefox and even IE11 are rapidly implementing ES6 (and Google won't be far behind, if they're thusly put to shame).

  14. Stats are irrelevant by msobkow · · Score: 5, Insightful

    You have to use the right tool for the job, even if that means learning something new to you. Competent programmers don't make their decisions based on what tools they already know; they make them based on what is the best fit for the requirements of the system or component.

    Yes, component. It's not at all uncommon for a well-designed system to be implemented using multiple technologies and languages, each best suited to their piece of the puzzle.

    --
    I do not fail; I succeed at finding out what does not work.
  15. Re:Just learn C and Scala by w_dragon · · Score: 2

    As someone who is a developer, no, you don't learn a language in half a day. I know academics think they can, but academics write the most obfuscated, unmaintainable, bug-ridden code known to man. And no, people interviewing developers at tech companies are pretty much never management. It's almost always a mix of developers and team leads.

  16. Comment removed by account_deleted · · Score: 2

    Comment removed based on user account deletion

  17. Re:Who's surprised by this? by Wootery · · Score: 2

    FP has been hamstrung by people fixating on ML, Lisp etc, and forgetting that much of how they do things is determined by the memory and processor constraints of machines 40 or 50 years ago.

    we have a hell of a lot more resources to play with, so we can do things a bit more clever, surely?

    So you're really just saying performance be damned, functional programming is great, right?

    I'm not opposed to FP, but I disagree that performance doesn't matter. High-performance is a great thing for in-browser scripting. It's an enabler. It means neat things like WebGL (against which there are many valid complaints, but I'll ignore those for now) might actually be useful, and not just an interesting gimmick. Asm.js is exciting precisely because it enables really fast code to run in the browser, within the usual execution model.

    A slight aside: bloated, pointless use of JavaScript is already a plague on browser-compatibility, mobile-device power-consumption, security (because it discourages use of things like NoScript, which really do improve security) and sometimes even causes overheating. If JavaScript were less efficient, such idiotic abuses of it would be that bit worse.