Slashdot Mirror


Why Corporates Hate Perl

Anti-Globalism recommends a posting up at O'Reilly's ONLamp on reasons that some companies are turning away from Perl. "[In one company] [m]anagement have started to refer to Perl-based systems as 'legacy' and to generally disparage it. This attitude has seeped through to non-technical business users who have started to worry if developers mention a system that is written in Perl. Business users, of course, don't want nasty old, broken Perl code. They want the shiny new technologies. I don't deny at all that this company (like many others) has a large amount of badly written and hard-to-maintain Perl code. But I maintain that this isn't directly due to the code being written in Perl. Its because the Perl code has developed piecemeal over the last ten or so years in an environment where there was no design authority.. Many of these systems date back to this company's first steps onto the Internet and were made by separate departments who had no interaction with each other. Its not really a surprise that the systems don't interact well and a lot of the code is hard to maintain."

29 of 963 comments (clear)

  1. It's the slashdot effect! by pjf · · Score: 5, Funny

    It's simple why businesses don't like Perl. Slashdot is written in Perl. Whenever a business is mentioned on slashdot, their website goes down. Ergo, Perl is bad for business.

    1. Re:It's the slashdot effect! by smittyoneeach · · Score: 2, Funny

      Your ideas are intriguing to me and I wish to subscribe to your newsletter

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
  2. For goodness sake, move on. by PinkyDead · · Score: 5, Funny

    You have to migrate your badly written and hard-to-maintain Perl code into badly written and hard-to-maintain Java code as soon as possible.

    --
    Genesis 1:32 And God typed :wq!
  3. This is an insult by Skapare · · Score: 4, Funny

    This is an insult to associate us Perl-Haters with corporate types.

    --
    now we need to go OSS in diesel cars
  4. Re:Perl is WRITE-ONLY language. by Vectronic · · Score: 3, Funny

    Dim Perl As String.WriteOnly
    If You = Well.Disciplined.Person And Write.Comments(UBound(Perl.Lines) = True Then
            If Decrypt(Flow) Then
                    Such Things Happen
            Elseif Other.Languages = (C++ Or Java Or Python)
                    Decrypt.Method += Hard
            End If
    End If
    If Syntax.Contains("$") Then
            Return Format(My.Opinion, Humble) & "Bad Syntax"
    Else
            Return Format("", Opinions.Null)
    End If

    Ok, so the code sucks (in VB no less)... but, I just found the way you wrote your comment kinda weird...

  5. Re:Why not Python? by El_Muerte_TDS · · Score: 4, Funny

    Reason is simple.
    Pearls are shiny and worth a lot.
    Pythons are scary, they can bite, and have venom and stuff.
    Rubies on the other hand are a viable replacement for pearl.

  6. Re:Perl too readable by Anonymous Coward · · Score: 1, Funny

    I totally agree in general, but your example is bullshit.

      @array = map { s/something/better/g } @data;

    actually modifies the values in @data, and the result array contains the number of substitutions for each array item. Is that what you had in mind? ;-)

  7. Re:I hate perl too by Hal_Porter · · Score: 4, Funny

    chomp is not ambiguous. RTFM and stop crying.

    http://perldoc.perl.org/functions/chomp.html
    This safer version of "chop" removes any trailing string that corresponds to the current value of $/ (also known as $INPUT_RECORD_SEPARATOR in the English module). It returns the total number of characters removed from all its arguments. It's often used to remove the newline from the end of an input record when you're worried that the final record may be missing its newline. When in paragraph mode ($/ = "" ), it removes all trailing newlines from the string. When in slurp mode ($/ = undef ) or fixed-length record mode ($/ is a reference to an integer or the like, see perlvar) chomp() won't remove anything. If VARIABLE is omitted, it chomps $_ . Example:

    If anything I'm crying harder after reading that.

    --
    echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
  8. Re:Why Corp. hate Perl? by pakar · · Score: 2, Funny

    - Few Perl Developers
    Disagree. Lots of people are using it to do small fixes or administrative stuff like parsing logs etc.

    - Difficult (or impossible) to maintain
    NO. It's the same as any other language, it's only hard to maintain if the code is written badly and without comments.

    - There are better alternatives
    Like what? In what other language can you write a simple log-parser that creates some graph's over usages in less than 5 minutes and only requires minimal system-resources?

    - Easy to write badly difficult to write well (e.g. Language doesn't lend its self to good practices)
    It's easy to write well but it requires someone with some degree of development-skills to do so.

    Perl is easy to learn, easy to use. BUT it's too easy to get started with and that causes lots of new developers (or sysadmins with shell-scripting experience) to try it out and that can only result in lots and lots of ugly code.

  9. Re:Why Corp. hate Perl? by ggvaidya · · Score: 5, Funny

    other than being older than my Dad

    Perl 1.0 was released in 1987, four years before Python. How old is your dad - and more to the point, how old are you?

  10. Re:Sometimes the correct answer is the simplest by houghi · · Score: 4, Funny

    Do you need help with regular expression?
    http://houghi.org/shots/vim001.gif

    --
    Don't fight for your country, if your country does not fight for you.
  11. Re:Ockham's Razor tells me.... by pipatron · · Score: 4, Funny

    with things like OO being rather clunkily bolted on

    I beg to differ. I think that how perl handles OO is one of the most elegant ways I've seen any language to it.

    --
    c++; /* this makes c bigger but returns the old value */
  12. Re:Ockham's Razor tells me.... by xaxa · · Score: 5, Funny

    to me the biggest issue is maintainability, some languages help you in that department, some hinder.

    I quote the lecturer from my software maintenance course:
    "As I understand it, the standard maintenance method with Perl is to start again."

  13. Re:Ockham's Razor tells me.... by jacquesm · · Score: 4, Funny

    oh, don't worry, they'll be brief, this is perl, right ?

    Whether you'll be able to read them though, that's a different matter altogether ;)

  14. Re:Ockham's Razor tells me.... by pdbaby · · Score: 5, Funny

    Well you're a C++ programmer so your vote on elegant OO is NULL and void* :-P

    I jest, I jest.

    --
    Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
  15. Re:Ockham's Razor tells me.... by datapharmer · · Score: 2, Funny

    No need to stay silent about him, it is best everyone knows - I keep finding his scripts running at night on my systems too. He uses the login "nobody", and I'll be damned if I know what his code does! ;-)

    --
    Get a web developer
  16. Re:Sometimes the correct answer is the simplest by Tsunayoshi · · Score: 1, Funny

    http://xkcd.com/208/

    I love this particular comic...

    --
    "Get a bicycle. You will not regret it, if you live." - Mark Twain, "Taming the Bicycle"
  17. Re:Ockham's Razor tells me.... by Dr_Barnowl · · Score: 2, Funny

    Point out this scenario and insist they measure lines of diff, not lines of code. Then re-indent the entire codebase and ask for a bonus.

  18. Re:Ockham's Razor tells me.... by grantek · · Score: 4, Funny

    All Perl needs is a shiny new catch phrase...
    Perl on Rails?
    CloudPerl?
    Extreme Perl?
    Perl#?

  19. Re:Ockham's Razor tells me.... by MadnessASAP · · Score: 3, Funny

    What is worng with you Perl programmers? Does the thought of a newline or indentation, possibly even whitespace fill you with fear and horror?

    --
    I may agree with what you say, but I will defend to the death your right to face the consequences of saying it.
  20. Re:Ockham's Razor tells me.... by tha_mink · · Score: 4, Funny

    One python coder here was scared because I was writing some tools in PERL that he was going to have to use and maintain. He complained PERL looked so terrible and was so horrible to follow that he wasn't sure he'd be able to do it.

    That's because PERL, even good PERL, looks like an explosion at the punctuation factory compared to a vast majority of other languages.

    --
    You'll have that sometimes...
  21. Re:Ockham's Razor tells me.... by frn123 · · Score: 3, Funny

    don't complain, just s/([;}])/$1\n/gc
    or
    perltidy .conformingsigs

  22. Re:Ockham's Razor tells me.... by kv9 · · Score: 2, Funny

    how about a car analogy?

  23. Re:Why Corp. hate Perl? by CheeseTroll · · Score: 3, Funny

    In Internet Time, 1987 was 84 years ago.

    --
    A post a day keeps productivity at bay.
  24. Re:Ockham's Razor tells me.... by gizmo_mathboy · · Score: 4, Funny

    Perl6?

  25. Re:Ockham's Razor tells me.... by wmwilson01 · · Score: 2, Funny

    ...followed by: "Well, how the hell do you know there's a river?"

  26. Re:Ockham's Razor tells me.... by FrozenFOXX · · Score: 5, Funny

    All Perl needs is a shiny new catch phrase... Perl on Rails? CloudPerl? Extreme Perl? Perl#?

    How about "Perl Necklace?"

    --
    "Just a fox, a whisper."
  27. Re:Ockham's Razor tells me.... by UnknowingFool · · Score: 2, Funny

    When I thought about learning perl, I looked up some sample scripts on the internet. At first I thought the code was corrupted or possibly encrypted. But it wasn't:

    while (/(<\/[^>]+>)|(<[^>]+>)|([^><]+)/go) {

    That's when I decided not to learn perl.

    --
    Well, there's spam egg sausage and spam, that's not got much spam in it.
  28. Re:Ockham's Razor tells me.... by hostyle · · Score: 1, Funny

    I hear you. All these multi-various linux distros suck too. There should only be one true way ...

    --
    Caesar si viveret, ad remum dareris.