Slashdot Mirror


Python Is On the Rise, While PHP Falls (dice.com)

Nerval's Lobster writes: While this month's lists of the top programming languages uniformly put Java in the top spot, that's not the only detail of interest to developers. Which language has gained the most users over the past five years? And which are tottering on the edge of obsolescence? According to PYPL, which pulls its raw data for analysis from Google Trends, Python has grown the most over the past five years—up 5 percent since roughly 2010. Over the same period, PHP also declined by 5 percent. Since PYPL looks at how often language tutorials are searched on Google, its data is a good indicator of how many developers are (or aren't) learning a language, presumably because they see it as valuable to their careers. Just because PYPL shows PHP losing market-share over the long term doesn't mean that language is in danger of imminent collapse; over the past year or so, the PHP community has concentrated on making the language more pleasant to use, whether by improving features such as package management, or boosting overall performance. Plus, PHP is still used on hundreds of millions of websites, according to data from Netcraft. Indeed, if there's any language on these analysts' lists that risks doom, it's Objective-C, the primary language used for programming iOS and Mac OS X apps, and its growing obsolescence is by design.

10 of 232 comments (clear)

  1. Swift by Noah+Haders · · Score: 3, Interesting

    What about Swift? Considering it's only 2 years old, surely it's grown by the most, percentage-wise. I suspect a company called PYPL has an interest in promoting Python...

  2. Wait, searches for language tutorials? by Ecuador · · Score: 3, Interesting

    Isn't it kind of a strange metric? It measures people who don't really know the language but want to learn it. But did they learn it in the end? Did they end up using it? Was it actual programmers trying to get into a new language / refreshing one for a new project, or was it complete beginners who heard "python is cool" or something like that and search for a tutorial thinking they will be great programmers?
    And not all languages have an equal basis in this metric. For example who would search google for a perl tutorial? I mean it doesn't even support regex for christ sake! Also it is well known that Perl either comes as an Epiphany, or you are taught by Monks, you don't read a tutorial...

    --
    Violence is the last refuge of the incompetent. Polar Scope Align for iOS
  3. Need more mature languages by iamacat · · Score: 3, Interesting

    Python provides no true concurrency due to global interpreter lock. Java is not suitable for realtime due to unpredictable GC, while C/C++ is not suitable for anything which should never crash or return random results due to memory corruption. None of mainstream languages make automatic use of multiple cores and GPU - explicit provisions must be made by programmer to parallelize part of the program, often with error prone semantics and a separate language like OpenCL.

    Yes, those are hard problems, but it's also 2015 and we can come up with powerful compilers and JIT virtual machines. Going back to less concurrency than plain old shell scripts where '&' starts a true separate process is not an answer.

    1. Re:Need more mature languages by BitZtream · · Score: 2, Interesting

      Lets see ...

      Python provides no true concurrency due to global interpreter lock.

      The interpreter you use has that flaw perhaps. Fortunately there are multiple interpreters, ask CCP games about that lock.

      Java is not suitable for realtime due to unpredictable GC

      Yet I work for a company and sit right next to the team that does real time Java without hitting the GC at all.

      C/C++ is not suitable for anything which should never crash or return random results due to memory corruption

      Yet it is what any industry uses that requires 100% reliability like aviation and medical use.

      None of mainstream languages make automatic use of multiple cores and GPU - explicit provisions must be made by programmer to parallelize part of the program

      This is just simply wrong for so many reasons. Most languages have helpers and utilities to explicitly thread but its really the runtime or compilers that you want changed to automatically do all the work for you. Which can be done and has been done in a various demonstrable examples. Turns out that a lot of times, its not good to implicitly do things, which you'd know if you understood the comment you made about Java not being real time, but I suspect you're just respewing things you've heard someone else say but you actually have zero understanding of.

      You want a language that magically reads your mind and always does the right thing. The problem is, if you read your post, you'll see that YOU DON'T KNOW WHAT YOU WANT TO DO and thats actually the problem, not the languages or the computer.

      Everything you've posted demonstrates a flaw in you and your understanding of the language or abilities. Not the tool. But hey, who am I to judge, you go right on ahead blaming the tool for your lack of ability, I'm sure you'll get promoted.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
  4. Understand the Allure by Thunderf00t · · Score: 4, Interesting

    I know it's a matter of taste, but I understand why Python, aside from simply being popular, is used so often. Having spent time using several languages, I can say that brevity bordering on the obscure (often mistaken for elegance) is not something to encourage. Don't get me wrong, it's great if you can reduce the steps used to implement an algorithm (especially if you get big-O benefits as well), but simply reducing line counts isn't anything to brag about. I mean, who cares if you implemented something in a single line of Perl that took 5 lines of Python for me? Eighteen months later, when the code gets dug up for whatever reason, I know which will be far easier to follow and correct if needed.

    That, to me, is the real strength of Python: it enforces readability without requiring too many extra characters (Tcl being representative of the other extreme). If using an interpreted language isn't an issue, it almost always seems like the way to go for my tastes.

    --
    We will never be the change to the weather and the sea
  5. Re:Spare Us by Anonymous Coward · · Score: 3, Interesting

    agree completely, as long as the solution involves Perl :-)

    That is one underrated language...

  6. Re:Spare Us by Anonymous Coward · · Score: 2, Interesting

    Haha. "A real programmer does not care about languages." "A real programmer would not use language x for task y." Perhaps you should think a bit before spouting contradictory inane platitudes.

  7. Re:PYPL shows C language share @ only 7.5% by Anonymous Coward · · Score: 2, Interesting

    If you think Dice has any tangible input into Slashdot you're sadly mistaken. I'm an employee of another subsidiary of Dice and there's pretty much zero crosstalk. We're all pretty much separate companies with no idea what anyone else is doing. Dice is headless. Dice is an ok place to work but Dice is not just about the Dice website nor is it that desperate to draw in people.

  8. Re:Spare Us by TWX · · Score: 4, Interesting

    His statement is true if you consider it to mean that a real programmer does not care about any one language to the exclusion of others.

    I was at a Cisco event recently that had a discussion on Application Centric Infrastructure, basically using a master controller to do all kinds of fancy on-demand things to switchports at the access layer depending on factors like authentication of the device or user account. The presenter basically said there are two ways to go about it, the first is to use the somewhat crappy GUI/Web interface, and the second is to write stuff in Python that the controller makes use of. As someone that uses a lot of Bash right now the Python approach is definitely more my style than relying on a web page.

    --
    Do not look into laser with remaining eye.
  9. Re:PYPL shows C language share @ only 7.5% by Anonymous Coward · · Score: 2, Interesting

    When I was a Windows C then C++ then C# developer, I used Google all the time to solve platform issues and find API's that worked with each other. Now I am back to embedded C, and I never ever look for anything on Google. It's C. I look in K&R's ANSI C book when I have questions. All the API's and libraries are use are custom in house. All my docs are in house, it's an embedded C platform. There is a realtime OS but we don't hardly use it for much more than scheduling, all the code is writing to registers, etc. So that's why the search means nothing. I work with legions of C programmers, and we do not use Google to get it done. (thank god)