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)."

66 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.

    1. Re:Problems by TWX · · Score: 2

      I suppose this contributes to why I don't want to learn Perl; I don't program for a living but I do use various types of scripting for work, usually because I've had to reduce captured text down to something manageable, and if I find that I do the same replacement procedures in vi all of the time it makes sense to script it where I can do the processing from the command line without ever opening a text editor. When I look up how to do something with sed or other such tools I find a lot of other people that have asked questions for using a particular tool, only for answer to be, "you can do it in perl! Here's my script!" followed by a bunch of lines of code with no explanation for what they do.

      The original asker didn't ask how to do it in any language or with any command, they asked how to do it with a specific command. It's like asking, "How many of you like chocolate ice cream?" for someone to reply, "Strawberry is great!" Not actually answering the question. The problem is that if a non-answer stands, then people may shy away from actually answering the question, or from explaining why said tool may have problems with the task at hand.

      As an example, in vi I match patterns that span two lines, and it's easy to specify the linefeed as part of the string to search for, even when using the vi invocation of sed. By contrast the command line invocation of sed interprets the linefeeds differently than when used through an editor, so the commands that I tested in vi and tried to translate into shell-invoked didn't work. It took a lot of different search terms to finally find an explanation of why linefeeds were a problem, because I kept getting fanboy responses about perl.

      --
      Do not look into laser with remaining eye.
  2. No COBOL? by Big+Hairy+Ian · · Score: 2

    I guess it's gone that far out of the mainstream

    --

    Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    1. Re:No COBOL? by Shompol · · Score: 3, Informative

      If you look at the original article -- cobol is there, as the 3rd most hated "tag".

    2. Re:No COBOL? by TWX · · Score: 2

      Dad was a COBOL programmer. He really liked the language, felt it was a lot more of a natural-language flow than languages like C. We still have an AS/400 at work and the few times I've seen COBOL code I can't help but agree with him, the actual structure of the syntax is a lot easier to follow as a layman, especially when the variable names are kept sane.

      --
      Do not look into laser with remaining eye.
    3. Re:No COBOL? by Waffle+Iron · · Score: 3, Insightful

      Yeah, but once you've been working in a field for a few months, you're no longer a layman. It's easier for a layman to use a Veg-O-Matic than a chef's knife, but anyone who works in the restaurant industry would pick the latter tool.

      A computer works using a set of mathematical logic operations. There's no need to dress them up to look like fancy talkin'.

  3. 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.

    1. Re:Perl Is Hated Because It's Difficult by Doctor+Memory · · Score: 4, Informative

      And once you want to move beyond some simple automation scripts, you find that Python doesn't have the performance to handle anything more taxing.

      --
      Just junk food for thought...
    2. Re:Perl Is Hated Because It's Difficult by Anonymous Coward · · Score: 4, Interesting

      Perl doesn't encourage or discourage you to write good or bad code. What it does very well is work with the philosophy of DWIM (Do What I Mean). Importantly, it doesn't throw a giant pile of (effectively) RFCs with an accompanying Nazi yelling, "YOU VILL VRITE CODE DIS VAY." at you the way Python does. I've seen great Perl code and poor Perl code. I've seen great Python code and poor Python code. A shitty developer writes shitty code and doesn't read documentation. A great developer can take a language like Perl and create a great, readable code.

    3. Re:Perl Is Hated Because It's Difficult by bferrell · · Score: 2

      except in six months something basic will be deprecated and you'll have to re-write your code from scratch in favor of the new shiny thing... which will be deprecated in eighteen months.

    4. Re:Perl Is Hated Because It's Difficult by cascadingstylesheet · · Score: 2

      You're just people googling your way to a paycheck anyway.

      Parenthetically, what's wrong with googling your way to a paycheck?

      If you can find information, effectively apply it to a task, do it well enough to get someone to pay you for it, and inevitably learn along the way, what's wrong with that?

    5. Re:Perl Is Hated Because It's Difficult by idontgno · · Score: 2

      Real programmers don't comment their code. If it was hard to write, it should be hard to understand and even harder to modify.

      -- A Real Programmer

      This is why Perl is hated by "developers". They aren't Real Programmers.

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    6. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 2

      For the most part Perl is being used as a wrapper for something else. It's a thin script to automate some bulk of work done *elsewhere* in the system.

      I want to know where Perl beats Python hands down in performance that doesn't include extra libraries.

      When your peers and successors only need to pick up C# to get their work done then C# is all that matters. With Perl being 'write only' that is a near impossible task. Given the choice of fixing existing Perl or re-writing it in Python (or even C# in your case) I'll always chose the latter.

      I write wrappers like that all day long. Python wrapping C# for dSpace, ETAS and CRETA. Python wrapping C for Vector CANape. Python wrapping C for Matlab/Simulink. When my peers need to use any of those tools all they need to know is Python. There's even a chance they can fix or improve it. With Perl that's mostly not an option.

    7. Re:Perl Is Hated Because It's Difficult by robkeeney · · Score: 2

      "... you have to be very stupid to write bad code in those languages..." So what you're saying is that most Java and C# programmers are very stupid? I can't disagree. Most of the Java and C# (and pascal and VB and php and...) I've ever seen was awful, violating all the principles of good software development. Most of the C, C++, and every other language I've seen was pretty bad too. Most people who write software should not.

      I keep hearing this idiotic nonsense repeated ad nauseum in the programming world by morons who think the language is the problem; that making just the right language will make all the bugs go away. It's trivially easy to write readable code in Perl, just as it's trivially easy to write unreadable, unmaintainable spaghetti in Java or C#. It has nothing to do with the syntax of the language. It has everything to do with the person writing the code.

    8. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 2

      You're conflating the language with a library.

      No, I pointed out that once you want to move beyond some simple scripts, Python has those libraries while Perl does not.

      And once you want to move beyond some simple automation scripts it has a much larger ecosystem than Perl.

      You can learn Perl AND Python + libs, or you can just learn Python. It has the benefit of having a larger ecosystem and being readable.

      If I wanted to make something that no one else would bother touching I'd write it in Perl.

    9. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 2

      Not to mention having to exactly preserve the white-space when copying any code around

      The grey beards on Slashdot continually bring this up. I have this yet to be an actual problem, ever. Are you guys that inept at copy and pasting?

      If it's ever not perfect it gives a good time to scan the syntax and actually read what you're blindly copy and pasting in.

      unlike other languages that don't care about white-space.

      Yeah, Makefiles grok whitespace wonderfully.

  4. I love to hate perl but it's not that bad... by bytestorm · · Score: 4, Insightful

    The CPAN library system is mature, it has ports on a ridiculous number of platforms, and the syntax isn't even particularly awful. If anything, its curse is (anecdotally) that it's everywhere and new-to-perl developers run across old code all the time and struggle to figure out the system it backs. And the fact that perl hacks had (have?) a bad habit of becoming defacto production code.

  5. Too much hate. by Anonymous Coward · · Score: 3, Insightful

    Why hate, why not dislike. I have been coding for 40 years and never came across a language I hated, just ones that weren't suited for the job. Hey, if the company is going to pay me $75 an hour to code I'll write the app in Sanskrit if they want me to.

    1. Re:Too much hate. by Wycliffe · · Score: 2

      That's it? I ask $75 for the stuff I like to do. Perl would be $200/hr minimum.

      I enjoy Perl. Of all the languages I've used, it's by far my favourite. It's probably one of the most powerful and concise languages out there. I also have no problem reading it. Even the notoriously hard to read regular expressions are easier to read than the many lines of code it would take to replace many of them. I would much rather read/write perl code than PHP or Java but probably my least favorite is writing for the web. CSS drives me batty and although Javascript is a decent language, the DOM and different browser incompatibilities is a nightmare. The solutions that people have come up with although ingenious hacks are even more insane. Things like select2 replace the standard select widget with a dizzying array of divs instead. Jquery almost completely redefines the language. Give me any language on a single platform with a single widget set and I would prefer that over the hodgepodge nightmare that is web development.

  6. Real source by Shompol · · Score: 3, Informative

    The original study is here I found the "polarization of technology" diagram at the bottom even more interesting.

  7. Javascript really sucks by Snotnose · · Score: 3, Interesting

    Over the last 40 some odd years I've programmed in dozens of languages. Some I liked, some I was ambivalent about, some I didn't like. But the only language I learned to actually hate is Javascript. Talk about a steaming pile of shit.

    1. Re:Javascript really sucks by Entrope · · Score: 2

      Give Rust some time. Have you ever tried to drink Rust-flavored Kool Aid? It's horrible!

    2. Re:Javascript really sucks by Anonymous Coward · · Score: 2, Insightful

      I find it really amusing that many of the people who like to hate PHP are the same people who gleefully jumped on board the Node.js bandwagon.

      JavaScript and PHP came onto the scene at a similar time, and many of the worst problems are shared between them.

      Both languages have evolved since then, and particularly in recent years, and both are now significantly more mature, robust and well-rounded languages. They both do still have serious issues, but it is possible today (even commonplace) to write good quality, well structured and maintainable code in either of them.

      There are good reasons to still dislike PHP, but hating it today is irrational. If you still hate PHP today, I challenge you to re-examine the modern PHP ecosystem and some modern PHP code and understand how the language has changed. Then justify your hatred by pointing out issues that you have with PHP that are still there. Yes, there are some, but other languages have their issues too. I honestly believe that PHP has come right now.

    3. Re:Javascript really sucks by UnknownSoldier · · Score: 2, Insightful

      > But the only language I learned to actually hate is Javascript. Talk about a steaming pile of shit.

      That's because Brendan was a fucking idiot. JavaShit was designed and implemented in 10 days -- which would be impressive if he actually put some _thought_ in it. In contradistinction it was like almost every shitty thing about Basic was embraced and NOTHING about writing type safe programs from the past 40 years was used.

      * Accidentally misspell a variable? That's nice -- we will just magically use it! Undefined FTW.
      * Want misspelt variables to be flagged at run-time? Use the hack magic string

      "use strict";

      * Want to turn it off? Nope, sorry, no can do.
      * Want to include files? Bwuahaha. What do you think this is? A programming language?
      * Arrays and Strings are half-assed. What would you _think_ the result of

      "" + [1,2] + [3,4];

      should be? There are 3 possibilities:

      1. [4,6] = Vector or Matrix addition
      2. [1,2,3,4] = Array concatenation, aka [1,2].concat( [3,4] );
      3. undefined = Exception thrown for mixing types

      So what does JavaShit do? It uses an idiotic 4th choice!

      4. "1,23,4" = String Concatenation WTF!?

      More examples of how fucked up JavaShit is

      Both JavaShit (JS) and PHucked Up (PHP) languages were designed by morons. At least other languages have _some_ sanity.

      At least ES5 doesn't suck (as much).

    4. Re:Javascript really sucks by Rakarra · · Score: 2

      "" + [1,2] + [3,4];

      That seems like kindof a dumb thing to write in the first place. I mean, what would the programmer have actually been trying to do? It sounds like it would involve implicit type conversion of complex structures, something that is often bad. But the result, string conversation, sounds like a natural reaction of starting with a string -- I don't think it's unreasonable to assume that everything else would be converted into string form if you start with a string. But of course, I would have hoped it would just bail with a "What are you DOING??" message.

  8. Re:Is that surprising? by ranton · · Score: 2

    It is surprising to me that enough developers have used Perl for it to be the most hated language. I would have guessed JavaScript, or maybe VB (#4 & #2 most hated).

    --
    -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
  9. Rust may not be the most hated language... by Anonymous Coward · · Score: 2

    ...but its fanboys are by far the most annoying.

  10. 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.

  11. 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.
    1. Re:Experience-based opinions by geschbacher79 · · Score: 2, Insightful

      See, I think it's fair for folks (like me) who don't have deep experience in a language to dislike it. If you initially showed me an average piece of Perl script, it would make me shudder and I would struggle to work through it. Like you said, "typical horror, fades in a few days". I hate that feeling.

      Perl is also one of those languages where I'm hitting up Stack Overflow for writing every single bloody line of code, and I wonder if that's where a lot of dislike comes in.

      Also, I think it's worth pointing out that 'dislike' doens't mean 'hate'. I dislike (but don't hate) Perl, and I'm guessing some of the above data suggests the same. It would be interesting to get a poll of "Which language would you most like to expunge from the universe?"

    2. Re:Experience-based opinions by Ecuador · · Score: 4, Insightful

      Even "bless" is gone now as people use Mouse.
      Perl code can produce horrors, a bit easier than some other languages.
      But well written Perl is readable and efficient. People who hate it as a language in general, most likely have no idea what they are talking about.
      PHP with some pretty major issues as a language is quite down in the list, scoring about similar to Objective-C.... Seriously?
      Seems like a list made by bad/beginner devs, which I guess makes sense from the way it was produced...

      --
      Violence is the last refuge of the incompetent. Polar Scope Align for iOS
  12. Re:Ruby... by Anonymous Coward · · Score: 2, Insightful

    What's wrong with Ruby? I find it a bit weird, but not hate-worthy. Perl I find unreadable, along the lines of FORTH. A write-only language.

  13. 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
  14. Two types of languages . . . by walterbyrd · · Score: 4, Insightful

    Those people like, and those people use.

  15. Nothing new by simplu · · Score: 5, Interesting

    People hate what they don't understand.

    --
    L.
  16. Perl is a scripting language... by bobbied · · Score: 3, Interesting

    Personally I prefer Perl over similar scripting languages.

    I write in KSH, CSH, Python and Perl regularly... Of the three, Perl is my hands down favorite for a scripting language.

    If you are writing applications in Perl though, it sucks. The implementation of objects is obtuse, it isn't geared for User Interfaces (Perl/TK anyone?) and performance is really horrid.

    But... I cut my programming teeth on C (K&R, not ANSI) so I'm one of those old grey headed guys who go "tisk tisk" at all those new fangled, it's better because it's new things you young ones think are great.

    Now get off my lawn...

    --
    "File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
  17. Re:Is that surprising? by dreamchaser · · Score: 3, Funny

    What you have is PTSD (Perl Traumatic Stress Disorder).

  18. 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.

  19. Re:Is that surprising? by medv4380 · · Score: 2, Funny

    My usual experience with Perl goes like this: We can't process data this year can you help us? Oh, this is a 20-year-old Perl script. Let the biopsy begin.

  20. 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.

  21. Re:Ruby... by Anonymous Coward · · Score: 4, Interesting

    The problem is because people use the wrong tools for things. This is not a definitive list:

    Perl is ONLY useful today as a server-sided processing script. If you are using Perl on your front end, you will get dependency hell as your server updates things arbitrarily. Perl breaks super-frequently due to the move from manual updates to automatic updates of third party libraries/ports. Thus if you don't update Perl and everything that uses Perl at the same time, mass-breakage. Thus "Don't update Perl you moron"

    To that end PHP is on the other side of that coin. PHP is only useful for websites and nothing else. If you run PHP as a backend script it will typically time out, or run out of memory, because it's literately not designed to live very long. Unfortunately the monkeys that make Wordpress themes, plugins, and "frameworks" for PHP don't understand this. Symfony is popular, Symfony also is a huge fucking pain in the ass. Doctrine, gobbles up memory and gets exponentially slower the longer the process runs.

    Thus "Don't update Wordpress" mantra, because good lord there are a lot of shitty plugins and themes. PHP's only saving grace is that they don't break shit to cause dependency hell, they just break API's arbitrarily, thus rendering old PHP code broken until you update it, or abandon it.

    Ruby is a poor all-purpose tool. In order to use it with the web, you basically need to have the equivalent of php-fpm for Ruby running, and if your server is exhausted, just like php, it just rolls over and dies. Ruby developers are just like Python developers (next) in that they don't fundamentally understand what they are doing , and leave (crashed) processes running perpetually. At least PHP gets a force-kill after a while. Ruby Gems create another dependency hell. In fact good luck getting Ruby on a CentOS installation, it will be obsolete and broken.

    Python, has all the worst of Perl's dependency hell with Ruby's clueless developers. Python simply doesn't exist on the web, but good lord so many "build tools" love to use it, and when it gets depreciated, whole projects that aren't even developed in Python, stop working.

    Which leads me to NodeJS/NodeWebkit. Hey it's Javascript, everyone loves javascript. If you're not competent enough to write Javascript, turn in your developers license. Despite that, just like Perl, Ruby and Python, setting up a build environment is an annoying pain in the ass. Stick to the web browser and don't bother with it.

    So that covers all the interpreted languages that you will typically run into on the web.

    Java is another language that sometimes pops up on servers, but it's more common in finance and math projects, which are usually secretive. Java, just like everything mentioned, breaks shit with every update.

    C is the only languages that haven't adopted the "break shit with every update" because C can not be "improved" on any level. Most of what has been added to the C API deals with threading and string handling. At the very basics, anything written in C can compile on everything as long as the platform has the same functions built into the runtime. Which isn't true when cross-compiling between Linux and Windows. Windows doesn't "main()" while Linux has a bunch of posix functions that don't exist on Windows.

    Ultimately the reasons all these languages suck comes right back to dependency hell. A language that has a complete API, requiring no libraries, simply doesn't exist, and isn't future proof anyways.

    People hate a lot of these languages because they don't adhere to certain programming habits they have, like object oriented "overide-bullshit", abuse of global variables, or strongly typed languages. Thus what should work in X language, doesn't work in Y language, because that language simply does it differently.

    Like weakly typed languages are probably supreme, at the expense of runtime performance, because it results in less errors. That said, =, == and === are different. In a strong type language, you can't fuck that up. In a weak type language, you can make mistakes like if(moose=squirrel){blowshitup();} and the script will assume you want to make moose the value of squirrel, AND run blowshitup() regardless of the result. Now if you meant ===, no type conversion.

  22. I'm surprised that PHP by Chrisq · · Score: 3

    I'm surprised that PHP isn't more hated.

  23. Re:Is that surprising? by AndroSyn · · Score: 2, Insightful

    C sucks at string handling. Thus perl.

  24. Perl is just fine by Anonymous Coward · · Score: 2, Insightful

    I love perl. What I don't love is the deliberately obfuscated perl written by someone trying to be clever and/or indispensible by writing code only they can (quickly) understand. A quick down-and-dirty perl script is one thing, using it in reusable scripts is just immature and pointless. Especially those who refuse to document their code.

    THAT is the part I detest.

  25. 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
  26. Re: Ruby... by sce7mjm · · Score: 3, Insightful

    As is often the case your doing it wrong.

    if you are having problems with Perl being updated when your server updates you are probably using the Perl that was installed as part of your system to run your app.

    Perlbrew now makes it simple to run an independent Perl for a single user/service that only updates when you tell it to.

    What you describe is no different than if your app uses a c runtime library that is over written by the system during an update.

  27. Re: Is that surprising? by Anonymous Coward · · Score: 2, Funny

    Sounds like he hit a Wall.

  28. Re:Is that surprising? by fahrbot-bot · · Score: 4, Insightful

    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.

    The quality of the program structure and the ability to read, maintain and support it are due to the programmer, not Perl. People can write programs well/poorly in any language. Like some others here, I *love* Perl and always endeavor to write clear, well-organized code - like I do in any other programming language - so others can make sense of it -- you know, in case I get hit by a bus tomorrow... It's call being professional.

    Hate the programmer, not the programming language.

    --
    It must have been something you assimilated. . . .
  29. Still love Perl by Pablopelos · · Score: 2

    I'm old school, but I still love Perl (5, not 6). I have never had a problem that I had Perl getting in my way of what I was trying to do. I have never even encountered a problem that I couldn't solve with it. CPAN is its big selling point, a ton of code is already written (and mostly debugged). The problem is the language (as in a real language, written by a linguist) is so flexible, anyone can write it a myriad of ways. There is bad perl, good perl, terse perl, line noise perl, and going for broke golf perl. This is not good for corporate in general, and now that most of my generation of Perl has moved on or is getting older, good programmers are hard to find. The curve for perl was steep, but thankfully, the regular expressions, and a lot of the formatting styles are the same in a lot of other languages so all is not lost. Perl is dead, long live Perl!

  30. Re:Why Delphi? by Crashmarik · · Score: 2

    Using Delphi 10 now for quick and dirty control interfaces for my hardware projects. It's still beautiful. You can get what you want done quickly and lucidly and you don't need the editor translating whitespace into into mnemonics so you can see what's a block and what isn't.

  31. Re:Is that surprising? by TheRaven64 · · Score: 4, Informative

    There is no reason to hate Javascript unless you come from C++/Java "inherit everything and override everything" classes.

    Sure there is. If you come from a Smalltalk or Self background, the lack of sane support for numbers is a good reason to hate JavaScript. Smalltalk had a rich set of integer and floating point types, and the default integer kind was automatically promoted to a BigInt object on overflow. In contrast, JavaScript has only one numeric type, a double-precision floating point value. Trying to efficiently represent a 64-bit integer in JavaScript is basically impossible, trying to support arbitrary-precision integers is horrible pain. Lisp and Smalltalk had these from the start.

    Then there's the lack of portable support for sane forwarding until very recently. In Smalltalk, if you call a method that doesn't exist, then the invocation is wrapped in an object and passed to the doesNotUnderstand: method. This lets you do proxy things transparently and easily. In JavaScript, this used to be impossible.

    Then there's the not-quite-pure-OO nature. Everything is an object, but some of the operations can't be modified and some objects (e.g. Number) can't be subclassed / used as a prototype. Or the fact that you have a single immutable prototype chain. Or the fact that the operators aren't methods (so can't be overloaded) but are weirdly defined for arbitrary types (what is object + object?). Or the weird type coercion that happens, so adding an integer to a string is well defined and has odd results, so 'foo' + 1 + 1 is 'foo11', but 1 + 1 + 'foo' is '2foo' (where, in a sane language, both of these would throw exceptions).

    --
    I am TheRaven on Soylent News
  32. Re:Is that surprising? by Entropius · · Score: 2

    This is basically it.

    I use C for things that have to go fast.

    I use perl for things that have to deal with text.

  33. Re:Why Delphi? by tgrigsby · · Score: 2

    I've been using Delphi since its inception, and its predecessors going all the way back to Turbo Pascal 3.01. It's a fantastic environment, the language is easy to use, and I can get a project done in half the time it takes to put the same thing together in C#. The Delphi hate seems to mostly come from .NET programmers that bought into the M$ propaganda.

    --
    *** *** You're just jealous 'cause the voices talk to me... ***
  34. Do they hate Perl or something else? by opentunings · · Score: 2

    I write a lot of Perl, and almost all of it has regexes throughout (monitoring Oracle logs, data mining, etc.) The last time I heard, Perl and Java had the most comprehensive implementation of the Regular Expression engine of all languages. It's well known for its data munging abilities. So I wonder if it's Perl that people hate, or the regexes that Perl is supporting?

    https://www.regular-expression...

  35. Re:Is that surprising? by al0ha · · Score: 4, Insightful

    Yep - Perl is C for lazy programmers - well maybe not lazy, but programmers that don't want to have to deal with allocating and freeing memory, which is the bane of C and where many of the security problems arise. The other beautiful thing about Perl is no matter how you write your code, the interpreter compiles it into the most efficient form, just like C.

    I think hate for Perl stems from the scripters who try to show off their Perl skills, writing the most concise code which is exasperatingly confusing and serves absolutely no purpose. Whether you write verbose code which takes many lines to do the same thing as concise and hard to understand code, at run time they perform exactly the same.

    Perl coders have only themselves to blame for the hate; thousands of lines of stupid hard to read code is a nightmare for the person that comes along months or years later and has to work on your code. Stop it damn it, stop it!!!!!

    --
    Did you ever wake up in the morning, with a Zombie Woof behind your eyes? -- FZ
  36. Re:Is that surprising? by Kiaser+Zohsay · · Score: 2

    A coworker once said to me "Perl code looks a lot like C code, doesn't it?"

    To which I replied "Perl code can look like C code, but it doesn't have to. *My* Perl code looks like C code. Perl code can look like line noise."

    --
    I am not your blowing wind, I am the lightning.
  37. Re:Is that surprising? by phantomfive · · Score: 4, Insightful

    Show me a person who hates Perl, and I'll show you a person who doesn't grok regex.

    --
    "First they came for the slanderers and i said nothing."
  38. Re: Ruby... by TechyImmigrant · · Score: 2

    >As is often the case your doing it wrong.

    As is often the case you're doing 'your' wrong.

    --
    I should use this sig to advertise my book ISBN-13 : 978-1501515132.
  39. Re:Ruby... by Darinbob · · Score: 4, Interesting

    You can write Forth code that is readable. Once you've got the reverse notation figured out it is very simple to deal with. The real problem with Perl is that the same variable name can mean many different things depending upon the prefix character and the context in which it is used. This can lead to a lot of subtle bugs, leads to a steep learning curve, and even a few months of vacation from the language can result in being unable to read one's own code.

    On the other hand, Perl was never designed to be a typical computer language. I was berated by Larry Wall over this, he told me "you computer scientists are all alike". His goal was to get a flexible and powerful scripting language that can be used to get the job done. And it does just that - people use Perl because it can get stuff done. When it was new on Unix it was the only thing that could really replace that nasty mix of sh+awk+ed scripting that was common, instead being able to do all of that in a single script, and that led to its extremely fast rise in popularity in the early 90s. Yes, it's an ugly syntax but it's strong underneath, like the Lou Ferrigno of programming languages.

  40. Re:Is that surprising? by Mike+Van+Pelt · · Score: 2

    Show me a person who hates Perl, and I'll show you a person who doesn't grok regex.

    That's probably a good part of it. Me, I love regex, and I like perl a lot.

    When I'm writing a perl program, I do *not* use the fiendish tricks that I use when trying to win a round of "perl golf". Clear code with comments.

  41. Re:Is that surprising? by silvergeek · · Score: 2

    I got *a lot* of productivity out of perl when it was popular. It's true that a programmer can write horribly obscure perl code. But, a good, clean, considerate programmer who comments well can write very maintainable and understandable code. Also perl itself, in spite of its complexity under the hood, is amazingly bug-free.

  42. Isn't for stupid people by hazard · · Score: 2

    Perl simply throws your incompetence straight in your face, while other languages will not hurt your ego so much.

    Yes guys & gals, complex constructs will take time to grasp. In return, Perl allows to write good & compact code and professionals will understand it much quicker compared to other languages, simply due to a smaller amount of code they have to read.

  43. Re:Is that surprising? by networkBoy · · Score: 2

    Well, the second one is just the writer pointing out they're using the implicit operators (usually you don't need to spell out @_ or $_), eg:
    $foo = shift;
    is equivalent to
    $foo = shift @_;
    and
    foreach @someAry{print;}
    is equivalent to
    foreach @someAry{print $_;}
    is equivalent to
    foreach $foo @someAry{print $foo;}

    now, in *most* code it is rude to the people that come after you and who may not have a deep grasp of Perl's oddities to use all the implicit stuff, so you spell it out with $_ and such. In something really buried that last foreach loop will be slower because it has to do an assignment, while the first two will be faster. This only counts when you're looking at *massive* loop counts, at which point... why are you using a scripting language again?
    Lack of comments, and shit code is on the coder, not the language. I can write unmaintainable C/C++ just as easily as I can Perl, easier even, because I can have some seriously hidden interactions that I rely on but that you have *no* way of knowing interact (like mallocing the same memory block to two different structs and using them as a conversion pipe).

    As to the TIMTOWTDI issue, that's helpful and hurtful, and a lot is because of how the language is assembled I think.

    --
    whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
  44. Re: Is that surprising? by corychristison · · Score: 2

    Perl was my first scripting language, and quickly moved to PHP as it's easier for web based development. This was in the late 90's. Now I've moved on to bigger, better languages, but there is a special place in my heart for Perl.

    I love Perl because everyone hates it. Perl is now like 1/10th of my income, as I maintain some legacy applications for a few companies that I didn't build. They don't mind when I charge $100/hr (yes I'm aware I could probably charge more) to make changes or tweaks, because other developers just throw their hands up in the air and claim they need new software, which would cost a lot more. I understand there will come a day they will decide they need new software, but if they are happy with the service I provide, I will be the first place they come to get a quote to replace it.

    In fact, a couple Perl projects have moved to new systems, some developed by me, and some off the shelf applications. Remember, best tool for the job and all that jazz.

    Again, I love Perl. There are thousands of systems utilizing it, and the more people that hate it and refuse to use it means more money for me. :-)

    Did I mention I'm not even 30 years old?

  45. Re:Is that surprising? by Aighearach · · Score: 2

    This is why I switched from Perl to Ruby.

    My old Perl code looked like line noise. To me, after 6 months. Oh, I could clean it up, but it took me a lot of effort.

    My Ruby code looks a lot like C; which is nice because half my methods are also implemented in C. And I can easily read it, even years later.

    There is so much overlap between the use cases of Perl and Ruby it just didn't make sense to me to keep using Perl since I suck at making it maintainable; it is just so expressive, it is too easy to let the needs of the use case bleed into the code organization. It feels too elegant while doing that sort of thing; it can feel stifling to refuse to use that power when it is at your fingertips.

    If most of my code was one-liners I'd have stuck with Perl.

  46. Re:Ruby... by Ian_Bailey · · Score: 2

    Ruby was inspired by Perl, among other languages. It was in particular not inspired by Python, at least according to it's creator:
    http://www.ruby-lang.org/en/ab...