Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

New PerlMonks for Perl 6 - A Good Idea

by jdporter (Paladin)
on Jun 24, 2010 at 15:12 UTC ( [id://846326]=perlmeditation: print w/replies, xml ) Need Help??

I've decided that it really would be better for there to be a new, separate PerlMonks for Perl 6, when it goes mainstream.

I know that, from a Perl 5 / Existing PerlMonks perspective, there are good arguments to be made for keeping the "Perl Community" unified. However:

1. Having a separate site for Perl 6 does not imply that the Perl Community is fractured. As it is, there are plenty of Perl-related sites. What's one more? ;-)

2. Looking forward to that glorious future when "Perl" means "Perl 6", it would be kind of a drag to have the principal Perl community site encumbered with so much Perl 5 baggage: multitudes of Q&A, documentation, tutorials, contributed code, etc., etc., pertaining to a language which is no longer of any interest but archeological.

3. Perhaps most importantly, we are now more than painfully aware that the architecture of PerlMonks suffers from serious problems, flaws, and kludgities. In many ways, this is analogous to the situation with Perl 5 which inspired @Larry to rewrite the next version of Perl from scratch.

I see the passing of the torch to Perl 6 as the perfect opportunity to re-invent PerlMonks as well. To make it new, better.

So I propose that we, Perl Monks, officially, start drafting a roadmap, a spec, for a new PerlMonks. We want to capture everything that's good about PerlMonks, everything that makes it "work". And we also want to take note of what's bad, what's broken, so that we may consciously avoid those problems in the next version.

One of the really great things about the current incarnation of PerlMonks is that the engine is written in Perl (5). The users of the language can maintain the site in their own language. (Or, to put it another way, the site's maintainers are drawn from the site's users.) It is a stellar example of a language community successfully eating their own dogfood. (And it may, conversely, go a long way toward explaining the failure of Java Junkies, for example.) Therefore:

A Perl 6 community site should be written in Perl 6.

Of course, this presumes the existence of a decent web site framework written in Perl 6...

Hey Arunbear, if you got your ears on.... moritz mentioned that you were working on a rewrite from scratch. True? If so, what is the status of that? Even if it's comatose, perhaps you could contribute its roadmap or other foundational artifacts.

What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?

Replies are listed 'Best First'.
Re: New PerlMonks for Perl 6 - A Good Idea
by moritz (Cardinal) on Jun 24, 2010 at 17:33 UTC

    I really appreciate your proposal, and I'm going to support it as good as I can (within the limit of time constraints etc. of course).

    I agree that having a Perl 6 perlmonks is a very good idea, as long as it doesn't mean Perl 6 questions are banned from current perlmonks before the new one is ready :-)

    A few technical remarks:

    Rakudo is currently in a state where it needs users and real-world applications to find and shake out bugs. It's too slow for a site of the scale of perlmonks, but I expect that to get fixed eventually. It may not have all the features and modules needed yet, but it has a solid core, and modules can be written.

    So far it has always been possible to find hosting for Perl 6 related projects. For smaller projects feather serves as free hosting environment, and sometimes we found supportive people working at hosting services. Also initiatives likes this make me optimistic that we can get funding for hosting if needed.

    I think the next step should be to collect data and opinions about what are the good and what are the bad parts, both in technical and social terms. Update: see Why does PerlMonks rock? for some previous thoughts on that matter.

    Perl 6 - links to (nearly) everything that is Perl 6.
      the next step should be to collect data and opinions about what are the good and what are the bad parts, both in technical and social terms.

      Thank you; that is precisely what I had in mind.

      having a Perl 6 perlmonks is a very good idea, as long as it doesn't mean Perl 6 questions are banned from current perlmonks before the new one is ready :-)

      No, I don't expect that to happen. Rather, I expect this PerlMonks to die a natural death (as it seems to have one foot in the grave already) as Perl 5 usage drops off and Perl 6 users congregate on the new site. :-)

      What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?
Re: New PerlMonks for Perl 6 - A Good Idea
by ww (Archbishop) on Jun 24, 2010 at 16:55 UTC

    OP deserves more than the single upvote I can give it, IMO, even though I think that at this stage of completion-deployment-acceptance-widespread_use of Perl6, the proposal to focus on a roadmap for a Perl6 site might better take a back burner behind a similarly well-focused effort to re-spec this child (grandchild, nephew?) of the Everything architecture.

    And, a few random thoughts...

    • IIUIC, Perl6 will execute perl5 code without (significant?) issues (I may be hopelessly wrong on this, but at my age I'm skeptical about buying green bananas and I'm certainly not buying P6 based on its current status)?
      If so, perhaps the division of sites should be delayed until, in fact, perl 5 "is no longer of any interest but archeological."
    • OTOH, without knowing the proportion of P6 advocates/activists here, I rather suspect it's small. Should the p5 community arrogate to itself the job of spec'ing a p6 site architecture?
    • And on the third hand, reverting to the theme of para 1, "PerlMonks suffers from serious problems, flaws, and kludgities. In many ways, this is analogous to the situation with Perl 5...."
      ...well there is a small difference between re-engineering a website and re-writing a language. And that, IMO, weakens (presents a target for off-topic criticism) this excellent essay.

      Thank you for your kind comments.

      at this stage ..., the proposal to focus on a roadmap for a Perl6 site might better take a back burner

      We've got talent to burn. I don't see why these can't proceed in parallel. In fact, I think they're better done in parallel, rather than sequentially. Imagine what would happen if there were a PerlMonks for Perl 6 today? It could, and would, evolve along with Perl 6. I don't think that's bad.

      a similarly well-focused effort to re-spec this child (grandchild, nephew?) of the Everything architecture.

      I'm not sure what you mean by that, but if you're saying we should concentrate on making this PerlMonks better... well, all I can say is that it's happening as fast as it can. If the pace is unsatisfactory (and I'd agree that it is), then look at our constraints. It's frustrating, and I think it's only natural to start looking to a new, from-scratch construction, free of those constraints. We could make a new PerlMonks for Perl 5 site to replace this one, but why would we, when Perl 6 is right around the corner? (The Everything engine, it should be noted, is definitely in the "mistakes not to repeat" column. :-)

      Perl6 will execute perl5 code without (significant?) issues

      Personally, I think it would be a mistake to let this be a driver. If you had a web site for C++ programmers, would you want to support K&R C as well? Would you want the engine — assuming it's open for maintenance by the site's user community — to be written in C? I think not.

      Should the p5 community arrogate to itself the job of spec'ing a p6 site architecture?

      The Perl 5/6 communities are not disjoint. We have numerous monks here who are actively involved in the Perl 6 development. But more to the point, we — the Perl(5)Monks users/maintainers — have significant insight into what has made this site succeed and fail. The roadmap we'd spec would, I think, be generic enough that it could be used by almost any on-line geek community wishing to build a web site for itself — paramaterized appropriately, of course.

      I'd also argue that one of the reasons behind this site's success is that it was built by (some) people not involved in the development of Perl 5. It was created to be a site for Perl users, not Perl developers.

      there is a small difference between re-engineering a website and re-writing a language

      Sure; that's why I said "analogous in many ways", rather than "exactly the same". But when you characterized my proposal as "re-engineering a website", I had to shudder, because that is not what I had in mind. I'm talking about creating a whole new web site, from the group up, just as Perl 6 is a whole new language, from the ground up. Each is inspired by, and informed by the lessons of, its predecessor.

      /me notes that "predecessor" means "the one who died before". this is not how we usually use the word, though. ;-)

      What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?
        "talent to burn"

        Uh, lemme' think about that.
        Ah, got it!
        That's why jdporter has -- for the past year or more -- been very nearly the "sole practicioner" of our recent improvements?

        And despite the irony above, + + "proceed in parallel"... and possibly feeding off each other's notions re structure.

        SWMBO rang the dinner bell. I posted incompletely. Adding some of what was originally intended now... in para marked "postprandial add"

        postprandial add: "making this PerlMonks better... well, all I can say is that it's happening as fast as it can."
        as noted above, I think many of us recognize that you're making this PM better... but we surely need more talent applied here (or, maybe, talent with more time to apply it).  </add>

        "It was created to be a site for Perl users, not Perl developers."

        Couldn't agree more. Were it entirely guided by the knowledge of devs; oriented solely to their needs; and (implied by the preceeding) developed solely by them, I doubt we'd have the site or community we have today.

        But! How many P6 "users" do we really have? How many exist anywhere?
        We do see evidence that individual Monks are experimenting with 6 but that doesn't persuade me that we have very many folk who are "users" in thesense used to distinguish those coders who may or may not be highly knowledgeable from those involved in development of a language. We have many of both here, but to characterize all Monks as "both" would probably be unjustified.

        postprandial add:

        "The roadmap we'd spec would, I think, be generic enough..."

        If your recommendation takes wing; if participants share the goals and respect the views of others; if the factori adminstrativi can handle the demands of a rather diffuse group of devs ("spec-ers? mappers?"), this could be a major plus for the Perl community -- 5 and 6 (and blessings on you, those still waiting to upgrade from 4 or earlier).  </add>

      Should the p5 community arrogate to itself the job of spec'ing a p6 site architecture?

      If you write a Perl 6 site architecture specification, you're by definition part of the Perl 6 community, at least a bit. Especially if you actually start to implement it.

      And even if you don't, there's no harm done. Either somebody picks it up and tries to implement it, or not. By writing a spec you don't force the Perl 6 community to do anything at all.

      Perl 6 - links to (nearly) everything that is Perl 6.
Re: New PerlMonks for Perl 6 - A Good Idea
by Ratazong (Monsignor) on Jun 25, 2010 at 08:01 UTC

    Maybe I'm too stuck in my Perl 5 / Existing PerlMonks perspective, and I am not long enough in the monastery to know what made PerlMonks survive for nearly ten years - but when I read your node my first reaction was "oh no!!".

    The main advantage of PerlMonks are its users. And by creating a new community in parallel, you will most surely split the current community. Which will lead to much slower response-times on questions (and possibly also to less valuable answers (as much know-how will have been moved away)) - and will lead to the decline of the current PerlMonks-site.
    And there is no guarantee that a new-and-better Perl(6)Monks site will flourish ... even if you do everything right ... as you wrote yourself: there are plenty of Perl-related sites. What's one more? ;-)

    On the other hand, a new and improved framework might also be beneficial for the current site - and address the major drawback: the performance.

    After expressing these fears, here are some ideas

    • the moderation-concept of PerlMonks is great; you will want to have the same
      • the XP-game honors the efforts of those who contribute most to the community
      • XPs are normally a good feedback for the poster to see if the content provided is good or not
      • the XP-game keeps people to come back, read many nodes (in order to select the nodes which are worth a vote) and to learn much that way
    • you will need a large user-base when starting with the new site
      • think about importing all current user logins/homepages/... to the new site (possibly with an "opt-out" option) - that way the hurdle to go to the new site is low
      • even think about cross-site features (e.g. common XPs: all points earned in Perl6 are also valid in Perl5 and vice versa)
    • you will need a large knowledge/article-base when starting with the new site
      • why not import/migrate all nodes from the current site? The new Perl(6)Monks could have an (as you put it) archeological Perl section
    • regarding hosting of the server: one advantage of pair.com is that there are no tons of flashing advertising-banners - very eye-friendly!
    • and of course you'll want to have some chatterbox ;-)
    • and even more important: you will need monquips!

    Rata (hoping the best for Perl6 and Perl5 )

      think about importing all current user logins/homepages/... to the new site (possibly with an "opt-out" option) - that way the hurdle to go to the new site is low
      No, not just import, have a shared login mechanism, like OpenID.

      And then, have XP/Reputation be shareable.

      And have "Recent Threads", "Newest Nodes" on each site be an RSS feed

      And learn a bit from federated social networking systems- crabgrass, diaspora, onesocialweb, etc- on ways to integrate those site partions that should be unified.

      by creating a new community in parallel, you will most surely split the current community.

      Maybe. But this is why I do not believe we need to worry about it:

      The "Perl community" is already split into multiple fractions. As a PerlMonks fan, I'd like to think that this site is the nexus of the Perl universe, but there are plenty of Perl users out there who do not see it that way. Some have tried PerlMonks and found it not to their liking, for a variety of reasons. Others have never heard of it at all, or are unable to take advantage of it for one reason or another. Some people prefer the bloggish style of use.perl; some like mailing lists or good ol' usenet groups; some like wikis, some like irc channels, some like bulletin-board-style forums, some like the modern gadgetry of StackOverflow. Some prefer the quaint meatspace interactions of PerlMongers meetings.

      But you see, there is nothing to prevent people from participating in more than one of these venues, or even all of them. There is quite a bit of fluidity of membership across this spectrum, and altogether they constitute the real Perl Community. Having another site which "does PerlMonks" but does it better is not a threat to the community. Quite the opposite: it would, I believe, go a long way toward assuring the next generation of perl hackers that Perl is modern and relevant.

      If the current PerlMonks goes into decline — and the numbers clearly suggest that it already has — it is almost certainly a trailing indicator that Perl 5 itself has gone into decline. Perl 6 represents the new lease on life for the Perl legacy; I believe it makes sense for the Perl 6 user community to be hobbled by a web site which is only a couple years behind the times, rather than one which is a couple decades. ;-)

      a new and improved framework might also be beneficial for the current site

      Now, I will say.... My proposal is very much about using the Perl 5 ⇒ Perl 6 transition as an oppportunity and excuse to build a New PerlMonks. We could, very possibly, allow Perl 5 content on the new site. This would allow the site to be the PerlMonks NG which many people have been dreaming of for a while. But I think it would be important to make Perl 6 the primary or default language for the site. Perl 5 would be the "also ran", the ugly stepchild, much the way Perl 6 is on this site. The primacy role would be reversed. But, on the other hand, depending on how the site is designed, such role distinctions might not even be necessary.

      why not import/migrate all nodes from the current site? The new Perl(6)Monks could have an (as you put it) archeological Perl section

      I don't think we'd want to do that as long as the content of PerlMonks is a moving target. Once this PerlMonks ossifies, we could do that... but then, why not just leave it running, to act as its own archive? (fossil, as it were.)

      Thank you for your other comments.

      What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?
Re: New PerlMonks for Perl 6 - A Good Idea
by Your Mother (Archbishop) on Jun 24, 2010 at 16:06 UTC

    Complete ++. I'm not going to start adding spec points here. There should be another thread specifically for that. I will gladly become a janitor/dev whatever for a "from scratch" version.

Re: New PerlMonks for Perl 6 - A Good Idea
by ambrus (Abbot) on Jun 24, 2010 at 16:17 UTC

    The biggest advantage of this Perlmonks is the

    Speedy Servers and Bandwidth Generously Provided by pair Networks

    Who do you think would donate the servers and administration and internet access for this hypothetical new server?

      I kindly disagree.

      The biggest advantage of Perlmonks is the user base, which is both incredibly knowledgeable and helpful.

      our german perl-community.de board runs on one server at the moment (which costs about 50€/month, and is financed by several forum members donating 2-10€ every month.

      When the new community is starting, a small server is probably sufficient, and as soon as it gets popular, there will likely be someone who wants to sponsor this I guess.

      Who do you think would donate the servers and administration and internet access for this hypothetical new server?

      Noted; Thank you. Now is not the time to solve such problems. Instead, let's be optimistic and assume that they can be solved.

      What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?
      Hmm, if there is consensus on a perl6monks, then approach Pair with the question about running both. Could well be the case that the total traffic would be on par with the traffic of a single combined-perl site.

      If they say no, then "finding sponsorship" becomes a TODO. Which is not impossible. It will enforce a bit of positive advocacy.

        approach Pair with the question about running both

        Or not. Given how well they've supported us prior to, and since, the password hack debacle, I'd put "Get PAIR to host the new PerlMonks" in the "Things not to repeat" column.

        What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?
Re: New PerlMonks for Perl 6 - A Good Idea
by Jenda (Abbot) on Jun 24, 2010 at 20:13 UTC

    There is no and will not be a decent web site framework in Perl 6 for some time. If nothing else because you can't expect even the best mind to make such a thing "right" (for whatever definition of right) at the first attempt. Therefore rewriting PerlMonks too soon is bound to leave you with a site that has got serious problems, flaws, and kludgities. And is based on a framework that's no longer maintained outside the site because it had been superseded be newer and better ones. Yet the site will still be around.

    Let's not test the first attempts at a Perl6 framework with something that important.

    Jenda
    Enoch was right!
    Enjoy the last years of Rome.

      And is based on a framework that's no longer maintained outside the site because it had been superseded be newer and better ones.

      I remember things a little differently. Everything's origins are in 1998 or so, when writing something this big and interactive and featureful was new (especially for the people doing it). In particular, the object-relational impedence in Everything is awful and the source of a lot of problems. It's also not well factored.

      I've pondered a lot about how to write a similar system--because there are a lot of good ideas implemented imperfectly--and the basic ideas are solid. If I were to rewrite Everything today, I'd use Moose and KiokuDB and a fat model, naked object pattern. The only piece I haven't mapped out in my head is the URL routing scheme.

      Everything stagnated after the parent company disappeared; it had never attracted much of a community, PM used a fork of the code, and there was no clear path for upgrades. Any one of those is a danger sign. All three together is much worse.

      ...you can't expect even the best mind to make such a thing "right" (for whatever definition of right) at the first attempt

      I think it could be surprisingly direct and though there would be effort, most of it might be implementation, not design. Perl 5 has been getting it "right" for quite some time. By merely porting the Plack suite directly across we'd be a long weekend away from seeing frameworks start to spring up in Perl 6 or get ported from things like Dancer, Mojolicious, and more.

        Perl 5 is a different language with different features and while there are similarities, when it comes to library interface design, the differences will matter a lot. It's not implementing the groundwork, it's the interface of the framework that will need a few iterations.

        Jenda
        Enoch was right!
        Enjoy the last years of Rome.

      Thanks for your comment on this, Jenda. It does look like a serious obstacle.

      However, as with other things, I'd prefer to see it as a challenge to be overcome, rather than assuming from the outset that it is a deal-breaker. I can envision at least two ways in which this problem could be mitigated, and I'm sure there are brighter folks out there who can come up with more/better ways.

      I think I hear you saying that we should avoid repeating the mistake PerlMonks made in being based on Everything. Certainly it is the source of a lot of our pain. Nonetheless, I think it could be argued that it is also largely responsible for much of the success of PerlMonks. If "PerlMonks 6" ends up being built on "Everything 6" (so to speak), I don't think that's necessarily an outcome to be avoided. Probably anything we could choose to do in the next few years will look bad in 15 years. I don't think that should stop us from taking action now.

      What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?
      It would be easy to port CGI::Application, create the Clearsilver Template library bindings. That leaves us a DBIx::Class port.
Re: New PerlMonks for Perl 6 - A Good Idea
by Anonymous Monk on Jun 24, 2010 at 22:50 UTC
    improving PerlMonks -- a good idea

    reworking PerlMonks without Everything -- a good idea

    categorizing existing posts with keywords -- a good idea

    having a perl6 portal (only see perl6 questions) -- a good idea

    locking/closing threads -- a good idea

    having a benign votefairy -- a good idea

Re: New PerlMonks for Perl 6 - A Good Idea
by Proclus (Beadle) on Jun 25, 2010 at 22:07 UTC
    jdporter thank you bringing up this subject.

    I love Perl6 but I personally dislike the idea of a separate site. Instead, we should create a more appealing design for Perlmonks. I've been using stackoverflow lately and I think it has a nice soft design while housing an incredible number of platforms and languages. A smart tag system is most helpful in organizing the contents.

    As for the implementation language; I guess it would be up to the volunteers. I wouldn't mind a Perl 5 CGI::Application or Catalyst based site. On the other hand, the more Perl 6 we use, the more momentum we have for our new Perl. Hard to decide.
      It might make more sense to design the new site with a goal of merging in the PM stuff at some future point in time. That way PM6 actually gets off the ground. Trying to rewrite PM5 from scratch may prove to be too daunting for whoever volunteers to work on it. Plus it would likely be heavily tied to how much time Corion, tye, and jdporter can spare to help with the migration, whereas a new PM6 site wouldn't have those constraints (unless they ended up being the only ones working on it). Or maybe have one team focused on PM5 migration issues and another on developing the new site (with obvious feedback from the PM5 migration team).

      Elda Taluta; Sarks Sark; Ark Arks

      Instead, we should create a more appealing design for Perlmonks.

      But that's part of the problem: this PerlMonks is exceedingly crusty — which is to say, very difficult to comprehend and to modify in any major way. Do you realize - we can't even change the encoding of the delivered pages from windows-1252 to UTF-8 easily? The arterial blockages in this site are simply too numerous and too great. As I said before - this is somewhat analogous to the situation in the Perl 5 codebase, which was one of the motivations for Perl 6 being a complete rewrite (besides the fact that the language was conceived to be radically different from Perl 5).

      I think the concensus is that PerlMonks could have a nicer user interface. That's why I've expended countless hours over the last few years trying to make it more stylable via CSS. You're welcome. Unfortunately, I don't know that too many people besides myself are even taking advantage of these new stylability features.

      I think we also need to plug AJAX into this thing, but that's another one of those major changes that requires not only buy-in by the gods but their active involvement... and so far, they've been reluctant to support it.

      Aside: I find it interesting that in the most recent thread on the subject, AJAX to reduce server load, not a single god felt motivated to weigh in. One of the things that could be "refreshed" in a New PerlMonks is the blood, or at least mindset, of the superusers.

      I also came across this interesting factoid:
      Pair.com does not allow "chat servers" in its terms of use.
      That, in my humble opinion, is reason enough to find another hosting service.
      A smart tag system is most helpful in organizing the contents.

      I strongly agree. This is yet another useful modern feature which the gods have inhibited — in this case, ostensibly due to concerns over keyword spam/abuse as well as a lack of demonstrated usefulness. Despite the fact that, time and again, people point out that a functioning keyword system would make our stove-pipe "categories" (as seen in some sections such as Categorized Questions and Answers) unnecessary and obsolete, and instead would work for all sections.

      Some past (sub)threads regarding the keyword/tagging question:

      Don't get me wrong — I appreciate everything that the gods do to keep the site functioning. They very much set the tone for the site as a whole, through the establishment and enforcement of policies and norms. Yet I can't help but feel frustrated by the lack of participation, sometimes, and the lack of transparency.

      I don't want to forget about this thread: Perlmonks and the web

      What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?
Re: New PerlMonks for Perl 6 - A Good Idea
by jdporter (Paladin) on Jun 28, 2010 at 15:58 UTC

    Since this is in large part about learning from past experiences, both as to what works and what does not, I would add that the Successor PerlMonks should be informed not only by the Current PerlMonks but by other experiences — in particular, StackOverflow, and any other Perl community gathering-places.

    What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?
      PerlMonks has had that feature (keyword nodelet), but we didn't use it.... already suggested :) categorizing existing posts with keywords -- a good idea
Re: New PerlMonks for Perl 6 - A Good Idea
by jdporter (Paladin) on Jul 11, 2011 at 20:46 UTC

    Just found this interesting old relevant thread: My name is 6, Perl 6. Can you believe it's been ten years?

    I reckon we are the only monastery ever to have a dungeon stuffed with 16,000 zombies.
A reply falls below the community's threshold of quality. You may see it by logging in.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://846326]
Approved by moritz
Front-paged by moritz
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others surveying the Monastery: (4)
As of 2024-04-19 12:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found