Slash Boxes

SoylentNews is people

SoylentNews is powered by your submissions, so send in your scoop. Only 17 submissions in the queue.
posted by martyb on Saturday August 05 2017, @03:47PM   Printer-friendly
from the ALL-programmers-know-profanity dept.

Among developers, Python is the most popular programming language, followed by C, Java, C++, and JavaScript; among employers, Java is the most sought after, followed by C, Python, C++, and JavaScript.

Or so says the 2017 IEEE Spectrum ranking, published this week.

IEEE Spectrum, a publication of the The Institute of Electrical and Electronics Engineers, a technical advocacy organization, says it evaluated 12 metrics from 10 sources to arrive at this conclusion.

It claims to have culled data from Google Search, Google Trends, Twitter, GitHub, Stack Overflow, Reddit, Hacker News, CareerBuilder, Dice, and its own digital library.

Original Submission

This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 4, Insightful) by lentilla on Sunday August 06 2017, @03:14AM (1 child)

    by lentilla (1770) on Sunday August 06 2017, @03:14AM (#549362)

    I didn't realise "errors should not pass silently" was an explicit part of Python's design. Aside from the whole indentation thing, what we could term "silently introduced errors" is what trips me up again and again when using Python.

    For example:

      object.color = 'red'
      # do something else for a while
      object.colour = 'blue'
      print object.color

    Autovivication. The gift that keeps giving. (The program prints "red", by the way - as it should, but it probably wasn't what the programmer expected.)

    I find myself using spell-check on variable names (!!) a great deal when programming Python! At least in Perl, when autovivication ceases to be useful (in programs longer than a few lines), a simple "use strict;" at the top expunges that entire class of mistake.

    It's a language where programming errors tend to express as exceptions

    Which is sort-of-cool, but in many cases I'd prefer an error at compile time. Exceptions are nice but I don't want to have to manually hunt down every logic path to find all my stupid mistakes.

    I love Python, idiosyncrasies and all. Van Rossum has been very clear about documenting Python's behaviour and rationale from the start (doesn't mean I always agree with him) but at least the contract is clear. And when I shoot myself in the foot, as I do on a regular basis when writing Python - like that sample above - I laugh and think "did it again, you fool, eh? At least it only cost a couple of hours."

    Starting Score:    1  point
    Moderation   +2  
       Insightful=1, Interesting=1, Total=2
    Extra 'Insightful' Modifier   0  
    Karma-Bonus Modifier   +1  

    Total Score:   4  
  • (Score: 0) by Anonymous Coward on Sunday August 06 2017, @11:48PM

    by Anonymous Coward on Sunday August 06 2017, @11:48PM (#549691)

    Well, you could always use one of many static analysis tools for Python programs. Most will catch that specific error, due to an initial assignment outside of __init__ or thinking you are missing a property decorated function definition. A quick run through a test suite or bytecode compilation (PYCMD -m compileall -fq -j0 -d /tmp INPUT_DIRECTORY) will find many as well. Also, if you have a problem with indentation (PYCMD -m tabnanny INPUT_DIRECTORY) can catch many of those as well.