Slashdot Mirror


TIOBE Declares Python the Programming Language of 2007

The TIOBE Programming Community Index has declared Python as the Programming Language of 2007 due to a 58% surge in its popularity rating during the year, making it now the sixth most popular programming language and finally surpassing Perl. They also assert that Python has become the "defacto glue language," being "especially beloved by system administrators and build managers."

21 of 166 comments (clear)

  1. Your flying! How? by slyn · · Score: 4, Funny

    Two oblig python links:

    Python @ xkcd

    and

    Python @ Bash.org

    HHSSSHSHSSS

  2. Acceptance Speech by pembo13 · · Score: 3, Funny

    I would just like to say thank you as I accept this award on behalf of my fellow Python brothers. We all know that God created the universe with Python, but allowed the non believers to think that it was Perl or LISP so that they would not commit seppuku.

    --
    "Thanks for all the money you paid to us. We've used it to buy off ISO among other things" -Microsoft
  3. Re:Hmmm by the_B0fh · · Score: 3, Funny

    PHP and ActiveX over Python?

    Mamama!!!! Make the bad man go away, please.

  4. Re:Hmmm by reSonans · · Score: 5, Funny

    I'm hate python.

    Man, you take this stuff seriously. Changing your name is hardcore.

    --
    Light the blue touch-paper and retire immediately.
  5. Re:Maybe we will see more Web by Scarblac · · Score: 4, Informative

    Currently Django, Turbogears and Pylons are all hot. Great web frameworks are there, start using them :-)

    --
    I believe posters are recognized by their sig. So I made one.
  6. Re:Hmmm by mysqlrocks · · Score: 3, Interesting

    PHP and ActiveX over Python?

    What's up with all the PHP haters on Slashdot? For building most web applications it's the place to be. Zend is working hard to increase the level of professionalism of the PHP community. I've recently started using Zend Framework and it's a really nice way to build web applications.

  7. Re:Maybe we will see more Web by Simon · · Score: 3, Funny

    Dude, as was mentioned at PyCon 2007, there are more Python frameworks than reserved Python keywords. A framework shortage isn't the problem. ;-) http://www.b-list.org/weblog/2007/feb/23/pycon-2007-web-frameworks-panel/

    --
    Simon

  8. TIOBE? by LMacG · · Score: 3, Funny

    I plugged that into Wikipedia and I got redirected to The Importance of Being Earnest.

    The linked page in the summary doesn't give any clues. Do we get to make up our own meanings? How about The Infernal Order of Bastard Evildoers? Seriously, who are these herpephilic people?

    --
    Slightly disreputable, albeit gregarious
    1. Re:TIOBE? by Jugalator · · Score: 3, Informative
      It is short for The Importance of Being Earnest, and this is also shown on their company profile page.

      The name TIOBE stands for "The Importance Of Being Earnest". This is also the name of a comedy play written by Oscar Wilde at the end of the Nineteenth Century. By choosing this name, the founders of TIOBE Software emphasize their sincere and professional attitude towards customers, suppliers and colleagues.
      --
      Beware: In C++, your friends can see your privates!
  9. Lies, damned lies, and statistics by Haeleth · · Score: 4, Insightful

    It all depends how you count it. For example, here is a comparison based on available jobs that shows Perl still vastly in the lead, followed by PHP, with Python and Ruby both trailing by a long way. I'm sure there are other figures that prove that PHP is the biggest language, and yet others that show Ruby is growing fastest, etc. etc. etc.

    TIOBE's methodology is distinctly suspect, too. Looking at search engine result counts - which are estimates, and in the case of Google are well documented to be inaccurate - is hardly scientific. And they're using YouTube as one of their search engines?! How is that going to produce meaningful figures?

    (Yeah, I'm still bitter that ML is so unpopular. But you can't call me a Perl fanboy, because I dislike all "dynamic" programming languages equally, and program largely in C++ and OCaml.)

    1. Re:Lies, damned lies, and statistics by Dasher42 · · Score: 4, Interesting

      Not to argue that TIOBE's statistics aren't suspect, but the number of available jobs banging on Perl isn't meaningful to me. I've already had too many jobs where the first order of business is someone pointing me at a directory and saying, "These are your predecessor's Perl scripts. Please figure this out and make things work."

      The last time I had free rein in something like that, I did just that, and made a clean rewrite to make a few cleanly commented, consistent Python modules that did the work of all the previous scripts, sans bugs. Just the fact that assignment by reference is the default, that building data structures deeply requires no line noise, makes the program design easy to get right the first time. No "oops, need another dollar sign there". No "how do I refer to a value in a hash of lists of hashes again?" You just do it.

      Maybe it's that my sense of programming comes from years of looking at some of the cleaner C and C++ out there, and reading Design Patterns, makes me prefer a language that encourages design and clean coding practices by default. I don't want to deal with one more script from someone who munged strings of data with regular expressions where they should have used data structures or objects. Those of you who are about to clean up piles of Perl code with Perl Medic in hand, I salute you. You're braver than I care to be anymore.

  10. Re:Hmmm by XorNand · · Score: 3, Insightful

    I can't quite figure out if you're a subtle troll or not? However, one of the biggest complaints about PHP programmers is that they're oblivious to a lot of important aspects of programing. Security being one of the biggies. Not being aware of the general criticisms of their chosen tools is another. (Which, if you're not a troll, you've proven my point.) I happen love Python, but I'm also aware of why many people don't like it.

    --
    Entrepreneur : (noun), French for "unemployed"
  11. Every task has a language/framework to fit it by mstahl · · Score: 4, Interesting

    PHP, Java for backend and Flex/Actionscript for frontend

    Them's fightin' words, sir!

    But seriously.... I've just gotten so tired of PHP in the past two years, and Ruby was such a great improvement to it. I used Python before PHP and my only complaint at the time was that it really was more trouble than it was worth at the time to write whole web applications in Python. You could, but languages like PHP were made for the web, so it got superseded. Once upon a time I wrote a few games in Python using PyGame and PyOpenGL though and had nothing but great experiences with that. I wouldn't call Ruby a cure-all, but it's pretty flexible and really pleasant to use for a wide variety of projects.

    That being said, I think that your post really misses the fact that for every task there's usually one or two programming languages or frameworks that would be "best" for that task. While PHP and Java may work as a backend for you, many of my projects are almost completely perfect for a Ruby on Rails implementation or specifically require functionality that exists nowhere else. Meanwhile Actionscript implies Flash, and I only have a couple of things brewing right now where Flash is even an option, much less advisable. I'm not trying to slam you here; I'm just saying that like anything else your mileage may vary.

    Also, python's supposedly getting tail recursion and some other tasty features soon. I might be tempted to pick it back up if it can surpass ruby in its efficiency that way.

  12. Build management: Switching from gmake to Python by Mark+Programmer · · Score: 4, Interesting

    especially beloved by system administrators and build managers.

    Absolutely. This year we replaced an old build system written in make with a (vastly superior) Python solution written from scratch. The replacement took one programmer about two weeks. The make system had taken two programmers a disgusting amount of time to build and support. What suprised me most upon completing the changeover was that the Python solution was faster than the gmake solution; since Python compiles to bytecode, re-running the build script was a quicker operation than gmake's re-parsing of the make files.

    Python's advantage as build glue is that it is just simple enough to be nearly shell scripting (write a simple wrapper, and you can pretty much just write shell script). But it has the features of a decent high-level language---including, most importantly, integrated documentation and a debugger. Anyone who doesn't understand why one would need a debugger for a build system hasn't yet written a build system complicated enough.

    Really though, this is less a statement in support of Python and more a statement against gmake. Make's age really shows as a build language, and if not for all the tools in the GNU world that depend upon / assume the existence of a make engine, I would encourage everyone to just toss the whole thing overboard and create all new build scripts in something else. You have better things to do with your time than reverse engineer code written in a nearly incomprehensible string-parsing language by someone who---in spite of the "standards" that have built up around make over the years---has gone off and done his own thing anyway. If you're going to have to deal with custom build code, you may as well own the challenge completely.

    --

    Take care,
    Mark

    There is a solution...

  13. Re:Bout Time by krog · · Score: 4, Funny

    as is every fucking variable, subroutine name, and pun in every Python program, site and text

  14. Re:Maybe we will see more Web by SkelVA · · Score: 5, Interesting

    I just picked up django two weeks ago and I'm loving it. I'm converting a PHP project slowly, and as an anecdote on how much more productive django is than PHP (for me):

    I had some features I had estimated out in PHP (over the last 6 months my estimates have been pretty dang close), and I implemented several of them in Django/python instead. I averaged beating my PHP estimate by 1/3rd, and that's including the time I spent trying to learn how the heck to do things in Django. I can't wait to see how things look once I've got at least an intermediate understanding of my framework. I don't hate PHP, I just love python much more.

  15. Re:Hmmm by mysqlrocks · · Score: 4, Informative

    Not being aware of the general criticisms of their chosen tools is another. (Which, if you're not a troll, you've proven my point.)

    I'm not a troll, just wondering why there's so much bashing of PHP on Slashdot. I am aware of many of the criticisms of PHP. One of them you mentioned:

    However, one of the biggest complaints about PHP programmers is that they're oblivious to a lot of important aspects of programing.

    You'll see that I partly addressed that criticism with my "Zend is working hard to increase the level of professionalism of the PHP community" statement. I'm not going to go into a full length defense of PHP but if you are looking for such a defense I would suggest 10 PHP Myths Dispelled. I am not a PHP zealot, I just have a lot of experience with it and would prefer to build web applications using PHP over the alternatives that I've tried (Java/JSP, ASP.NET). I can't compare it to RoR or Python since I have tried neither. I've read about both and have seen nothing compelling to make me consider switching. I'm quite productive developing in PHP and am quite aware of both it's advantages and criticisms.

  16. tools for the task by Speare · · Score: 3, Interesting

    First off, let me say that I love both Perl 5 and Python 2.x and have used each of them on a wide diversity of projects. I've implemented my own OO system on top of each, I've used each for CGI, I've used each for AI, natural language processing, and game programming. Both languages have their idiosyncratic idioms and it's really annoying when you see a lot of C-ish code in either Perl or Python projects. It's also very possible to write ugly "write once" code in either one, don't be misled by the whitespace arguments: ugly code is about how you express (or fail to express) a problem and a solution.

    However, I have to say, pick the tool for the job. There are things that are more naturally expressed in Perl idioms than in Python idioms. There are things that are much more clear and direct about Python code for outsiders to read and understand. If I were doing a ton of regex text scanning work, Perl incorporates it into the language directly, whereas it's a bolt-on for most other languages. If I were doing a ton of object management, I like the compactness of Python's syntax over that of Perl's. Both have great extensibility but the available extensions and support can shape your choice for a given project. I wish Python had true equivalents to Perlmonks and CPAN; conversely I wish CPAN modules were more crisp and consistent, attributes I think I find in the community-written Python modules I've used.

    --
    [ .sig file not found ]
  17. Re:Maybe we will see more Web by mysqlrocks · · Score: 3, Interesting

    I'm converting a PHP project slowly...I averaged beating my PHP estimate by 1/3rd

    Perhaps you learned something the first time you solved the problem which helps you solve the same problem quicker the second time? Perhaps if you redid the project in PHP (I know this would be pointless, but for sake of argument) it would be just as fast as in Python?

  18. Re:Maybe we will see more Web by SkelVA · · Score: 5, Informative

    Perhaps you learned something the first time you solved the problem which helps you solve the same problem quicker the second time?

    That would definitely effect any re-implementation I had to do. I probably didn't make myself clear, but the efficiency was gained on 100% new code adding a new set of basically standalone features (A quizzing module added to a document control system). Of course, the efficiency gain was over my estimates, and they're subject to the accuracy of my initial estimates. I've been using the trac timing and estimation plugin to track my estimations over this project though, and they've been pretty dead-on (especially the last couple months).

    When I go back and do re-implementation of features already present in PHP, I should only expect big gains coming from being able to just port code instead of design. I would really like to see more empirical evidence on the topic myself, but all I have to go on is my personal data.
  19. All languages are bashed on /. by Qbertino · · Score: 3, Insightful

    Sure there is PHP bashing, as is bashing of many other PLs. Just watch a Lisp or C guy go after Java to see what I mean.

    The truth is, the people that really are programming and solving problems rarely rant about a PL without having tried it. PHP is an extremely n00by-friendly programming language - also because of it's wide availability - and thus lots of code in PHP is quite wacky actually. This falls back on to the PL itself. Flash/ActionScript has simular problems (aside from having a strong prorpietary touch to it).

    In the end PHP, with its neighbourhood to markup, is the web-eras basic. With way more succesfull and impacting open-source web applications than any other solution - Python included.

    I *am* a Python fan, but it just didn't have that critical mass of an install base back then when mod_php gained traction. And that the true King and ruler of all webkits, Zope, has had a backend that looks like shit for 7 years now didn't help it either. Nowadays nobody gives a hoot if Zope is lightyears ahead of Rails and a few years older - it's just a niche webkit for people who've bumped into it

    There are a lot of factors that make a language successfull, and PHP meets very many of those. Just because people rant about it doesn't mean it really is bad. Nobody I know would say that programming in C is really fun and modern and hip. And many people rant about it. Yet look how many mission critical work still is done with it - because the untested alternatives aren't any better.

    On the server-side I've been mostly doing PHP for last 3 years now and am now going totally OOP with the CakePHP Framework and a large international project. It works, is extremely neat and quick to develop with. So be it that PHP has a few bizarly named core functions and arrow->syntax. So *fucking* what? My friend who has a business aswell and is a Sun partner and Java fanboy just moved his webproject from Java to PHP so they could finish it faster.
    "Java Fanboy speeds up project by switching to PHP" - enough said.

    Slashdotters rant a lot, but reality is allways a tad different.

    --
    We suffer more in our imagination than in reality. - Seneca