Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re^3: Why Perl in 2020

by woolfy (Chaplain)
on Dec 11, 2020 at 11:23 UTC ( [id://11124991]=note: print w/replies, xml ) Need Help??


in reply to Re^2: Why Perl in 2020
in thread Why Perl in 2020

Apology accepted.

In my recollection, Perl 6 did not start with marketing. It started out of frustration because of several problems that were needed to be solved to move forward with Perl 5, and solving those problems would mean breaking backward compatibility. It started with a cup-throwing moment. With groups of people sitting around and discussing and writing down things that needed to change. It took quite some time before marketing came into it.

Looking back to those years, I still think that when more people would have joined in, helping development of Perl 6, a functioning programming language could have come into existence before Pugs was made by Audrey Tang. If more people would have joined in to for instance convert a lot of modules from Perl 5 to Perl 6, to make a grammar in Perl 6 to execute Perl 5 code, both Perl 5 and Perl 6 would have benefited greatly. Instead, many people felt betrayed, and I remember mostly from those years a lot of flame-wars and a lot of people leaving and not returning.

Marketing... I still have stickers and buttons that say "we suck at marketing". We really do. Looking back at my own efforts in marketing Perl (5|6), I wonder how that money, time and energy could have been used better. Marketing for Perl has never been an impressive thing. I doubt more marketing would have improved a lot: we needed educational materials so Perl could be taught at schools and universities, talks about Perl at big conferences, articles about Perl in important magazines, etc, and I have been at brainstorm sessions to make overviews of what needed to be done, and we just did not have enough volunteers to do these things, or money to hire people to get them done.

Most of those problems from the beginning still exist in Perl 5, and breaking backward compatibility still causes anger, as was shown with the changes in smart match by Zefram.

I still love Perl. Both Perl 5 and Raku.

Replies are listed 'Best First'.
Re^4: Why Perl in 2020
by eyepopslikeamosquito (Archbishop) on Dec 11, 2020 at 21:27 UTC

    In my recollection, Perl 6 did not start with marketing. It started out of frustration because of several problems that were needed to be solved to move forward with Perl 5, and solving those problems would mean breaking backward compatibility. It started with a cup-throwing moment. With groups of people sitting around and discussing and writing down things that needed to change. It took quite some time before marketing came into it.

    Interesting. I remember a lot of discussion about Perl 6 history a while back in a very long thread, Curious about Perl's strengths in 2018, where the second-system effect was mentioned. Though there are many historical examples of when rewriting worked well (like the Perl 5 "rewrite" of Perl 4) ... and where it worked not so well (like the Perl 6 "rewrite" of Perl 5) ... I still find it a hard and perplexing problem.

    The early Perl 6 folks acknowledged this potential pitfall from the beginning, even using it in their slogan (Apocalypse 12):

    The official unofficial slogan of Perl 6 is "Second System Syndrome Done Right!"

    Larry gave further background in InfoWorld Larry Wall Interview (2015):

    So early on, our slogan, or at least one of them, was "Second System Syndrome Done Right." And how do you do that? Well, you just have to take long enough. Companies can't do that because they have a bottom line and a burn rate. But we're an open source community, not needing to make a profit, only to do good in the world. So you know the saying, "Good, fast, cheap: pick two." Well, by definition our community has to do it cheap, so the saying reduces to "Good, Fast: pick one." And we quite intentionally picked good rather than fast.

    See also: Three Tales of Second System Syndrome (blog by Brent Laabs where he discusses Perl 6, Python 3, and PHP 6 circa 2015).

      > like the Perl 5 "rewrite" of Perl 4

      Was P5 really a rewrite of P4, or did you put it in "quotes" for irony?

      I always thought it was a very clever piggyback of new concepts on top of P4 to keep full compatibility. Which was brilliant from a marketing perspective.

      The resulting problem was high complexity in many aspects not least because of very different concepts breaking orthogonality (I could name dozen of examples).

      And that led IMHO to the believe that P6 needed to be the opposite, a total rewrite which must break compatibility.

      Cheers Rolf
      (addicted to the Perl Programming Language :)
      Wikisyntax for the Monastery

      update

      clarified grammar, fixed typos ... ( English = TIMTOWTDI Wrong )

        Was P5 really a rewrite of P4, or did you put it in "quotes" for irony?
        No irony this time LanX. I was being deadly serious ... just as I was last time I got into heated arguments about the definition of "rewrite" vs "refactor" ... seems to go with the territory. :) Please note that Larry Wall at least seems to agree with me that Perl 5 was indeed a "rewrite" and not a "refactor".

        Perl 5 was my rewrite of Perl. I want Perl 6 to be the community's rewrite of Perl and of the community.

        -- Larry Wall from Perl 6 archive

        See the full Nobody Expects the Agile Imposition (Part VI): Architecture thread for gory details of many more heated arguments around the definition of rewrite vs refactor.

        Update: Just noticed that tilly also agrees that Perl 5 was a rewrite of Perl 4.

Re^4: Why Perl in 2020
by ait (Hermit) on Dec 11, 2020 at 15:51 UTC

    Thank you for that insight, most of us on the outskirts don't know the internal details. By outskirts, I mean the mere mortal users of the language like myself, who may not contribute to the core lang, but we evangelize and keep the language alive. It may seem irresponsible that we voice an opinion w/o having actually lived the internals of the ordeal, but ultimately a computer language, no matter how great, can only be kept alive if it's able to maintain a strong and loyal community of people that actually love and use thing in their daily work.

    Yes, the marketing did suck and that's the key takeaway, because it felt like disfranchisement of the community at large. For example, I remember an early talk about Perl 6 at OSCON (IIRC by Damian Conway) and honestly the invariant sigil thing rubbed me the wrong way, in fact it pissed me off. It didn't feel like an evolution to me. It felt more like we were succumbing to pressures to keep the language "clean", which I believe is exactly the opposite of what gives Perl and it's community the charm in the first place. Like the sigils there was a whole bunch of little (and some, not so little) changes like that made people feel "betrayed". Call it stupid, childish, cargo cult, or whatever but the result is in the pudding.

    Larry is brilliant, no doubt about that. But the Perl 6 branding was, in hindsight, nefarious. By Larry's talk at Google in 2008, it should have been OBVIOUS that calling this "Perl 6" was a really bad idea, and maybe there could have been a chance of an earlier course correction, but by that time, and IMHO, the damage was already done. Although not as much damage, of course, as waiting until 2019 to realize this.

    Like Steve Jobs once said "it's easy connecting the dots looking backwards" and for those of us that weren't there it seems obvious to us now, but if you were there, right smack in the middle of it, like woolfy's case, my OP must seem very insulting. Again, it was not my intention, and I fully acknowledge that I don't have the moral authority to express a qualified forensic opinion on the matter. Nevertheless, I can assure you that a lot of people on both sides of the isle felt GREAT RELIEF when the rebranding of Raku was announced as well as the announcement of the release of Perl 7. It was alike a HUGE weight was lifted, and I think a lot of people would agree with this.

    Who knows, maybe we can all agree on this, lick the wounds, and move on. Let's continue to make Perl and it's offspring the best languages on earth!!

    Thanks again for the great discussion!

    Alex

Re^4: Why Perl in 2020
by eyepopslikeamosquito (Archbishop) on Dec 12, 2020 at 02:33 UTC

    Does anyone know if a formal Five Whys-like post-mortem was ever attempted on the original Perl 6 project? Or the abandoned Topaz and Ponie projects?

      I don't believe so, no.

      My take on this is that P5 needs those "5 whys".

      P6 was an attempt from 2000 to answer the perceived problems at the contemporary backdrop.

      But the landscape has changed a lot in the meantime.

      Cheers Rolf
      (addicted to the Perl Programming Language :)
      Wikisyntax for the Monastery

Re^4: Why Perl in 2020
by syphilis (Archbishop) on Dec 11, 2020 at 12:23 UTC
    ... and breaking backward compatibility still causes anger, as was shown with the changes in smart match by Zefram

    Just as an aside - I haven't seen any activity from Zefram for quite some time, now. From memory, he was quite active on p5p (and even had a grant) leading up to the release of 5.30, but I've seen nothing from him since.
    Is that the reason ? Has he, too, been made to feel that his inputs are no longer appreciated ?

    Cheers,
    Rob
Re^4: Why Perl in 2020
by jdporter (Paladin) on Dec 11, 2020 at 13:49 UTC
    many people felt betrayed

    By whom? I don't know (or, at least, don't recall) a lot of the details from that time, but it seems like maybe this was really a failure of management. Larry is a brilliant guy, but maybe, in retrospect, his decision to let Perl 6 be "the community's rewrite" didn't work out so well.

    I reckon we are the only monastery ever to have a dungeon stuffed with 16,000 zombies.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11124991]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (3)
As of 2024-04-19 19:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found