Slashdot Mirror


Perl is the Most Hated Programming Language, Developers Say (theregister.co.uk)

Thomas Claburn, writing for The Register: Developers really dislike Perl, and projects associated with Microsoft, at least among those who volunteer their views through Stack Overflow. The community coding site offers programmers a way to document their technical affinities on their developer story profile pages. Included therein is an input box for tech they'd prefer to avoid. For developers who have chosen to provide testaments of loathing, Perl tops the list of disliked programming languages, followed by Delphi and VBA. The yardstick here consists of the ratio of "likes" and "dislikes" listed in developer story profiles; to merit chart position, the topic or tag in question had to show up in at least 2,000 stories. Further down the down the list of unloved programming language comes PHP, Objective-C, CoffeeScript, and Ruby. In a blog post seen by The Register ahead of its publication today, Stack Overflow data scientist David Robinson said usually there's a relationship between how fast a particular tag is growing and how often it's disliked. "Almost everything disliked by more than 3 per cent of Stories mentioning it is shrinking in Stack Overflow traffic (except for the quite polarizing VBA, which is steady or slightly growing)," said Robinson. "And the least-disliked tags -- R, Rust, TypeScript and Kotlin -- are all among the fast-growing tags (TypeScript and Kotlin growing so quickly they had to be truncated in the plot)."

9 of 472 comments (clear)

  1. Problems by saphena · · Score: 5, Funny

    You have a problem and you think Perl provides the solution. Now you have two problems.

  2. Perl Is Hated Because It's Difficult by alternative_right · · Score: 5, Insightful

    Perl is easy to write, hard to write well.

    Sort of like death metal.

    It is hated because you have to use independent thought, and have quality of thought, to deliver anything but flaky gibberish.

    At the same time, you can do anything with it, and across multiple platforms especially, it is the fastest way to get anything done.

    So eat it, Stack Overflow commenters. You're just people googling your way to a paycheck anyway.

  3. Re:Is that surprising? by Anonymous Coward · · Score: 5, Funny

    Many of us who know perl (and think you're a hypersensitive snowflake of a developer) learned C before we learned Perl.

    We're immune to coding horrors.

  4. Experience-based opinions by Sarten-X · · Score: 5, Insightful

    Having worked in Perl (and many other languages) for about 15 years now, I'm curious how many of those polled actually use Perl regularly.

    Whenever I have to introduce someone to my Perl scripts, their first reaction is usually the typical horror, which fades in a few days after they start using it. Yes, there are comments. Yes, there is decent design. No, the regular expressions are not worse than any other implementation. No, the "clever" one-liner you copied off of a PerlMonks golf challenge will not pass review.

    Sure, there are a few weird warts on the language ("bless" being the most obvious example), but it's no worse than any other, and significantly better than some of today's much more popular languages. Mostly, I find that Perl just has a bad reputation because it allows you to write ugly code, just like C allows you to corrupt data and Java allows you to consume obscene amounts of memory. The language choice does not excuse being a bad programmer.

    --
    You do not have a moral or legal right to do absolutely anything you want.
  5. At least Perl stable. by Qbertino · · Score: 5, Insightful

    Perl is a wacky language and only bareable if you can handle old school unix stunts, no doubt. It gave birth to PHP, which speaks volumes. I remember reading an OReilly introduction to Perl and laughing at the wackyness. I've done the same with PHP, but I've always respected both. Sort of.
    Unlike newfangled fads and desasters like Ruby, Perl is a language that remains usable. Books on Perl from 18 years ago are still valid today, just like with awk, TCL and Emacs Lisp.

    Complain all you want about the awkwardness of old-school languages - they still work and many of them run on just about anything that can be powered by electricity. These days I'm still a little reluctant to say which side Javascript will come up on now that Node has it's very own version hodgepodge gumming up the works.

    --
    We suffer more in our imagination than in reality. - Seneca
  6. Nothing new by simplu · · Score: 5, Interesting

    People hate what they don't understand.

    --
    L.
  7. Enjoyed Perl 5 by mattr · · Score: 5, Insightful

    Funny, I quite enjoyed writing in Perl 5 and the feeling was empowerment, and the community was excellent. At the time Python was quite immature. Python has grown but Perl 5 is still quite useful.

    There is also quite a difference between legacy code and code written today using modern extensions, though it seems people enjoy trashing things, instead of admitting they did not actually learn it.

  8. Re:Is that surprising? by Austerity+Empowers · · Score: 5, Informative

    My experience with the Perl hate is it's usually from younger people (by which I mean anyone under about 40). It violates everything some may have been taught as part of their software engineering program: it's difficult to read, maintain, and support.

    But, it exists for a reason and it's ridiculously good at that purpose. If I want to process lots of text, I do not use Python, I whip out perl. And usually it's fine, the little bits of perl here and there that glue the world together aren't usually that egregious to maintain (particularly in context of the overall mechanism it's being used to glue together, usually).

    If I'm going to write serious code, code that may formulate the basis for my corporations revenue model or may seriously improve our cost structure, I use a serious language (C/C++, usually) and spend significant amounts of time architecting it properly. The problem is that more and more people are using scripting languages for this purpose, and it's becoming socially acceptable to do so. The slippery slope being loved by children and idiots alike, one might say "I know Perl, let's use that!" and countless innocents are harmed.

  9. Re:Is that surprising? by networkBoy · · Score: 5, Informative

    I *love* perl.
    It is C for lazy programmers.
    I tend to use it for four distinct problem domains:

    * one-offs for data processing (file to file, file to stream, stream to file, stream to stream). When I'm done I don't need it any more

    * glue code for complex build processes (think a preprocessor and puppetmaster for G/CMAKE)

    * cgi scripts on websites. Taint is an amazing tool for dealing with untrusted user input. The heavy lifting may be done by a back end binary, but the perl script is what lives in the /cgi-bin dir.

    * test applications. I do QA and Perl is a godsend for writing fuzzers and mutators. Since it's loosely typed and dynamically allocates/frees memory in a quite sane manner it is able to deal with the wacky data you want fuzzers to be working with.

    --
    whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump