Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Collaborative Media

by zby (Vicar)
on Feb 17, 2003 at 12:20 UTC ( [id://235946]=perlmeditation: print w/replies, xml ) Need Help??

I am just planning to start an (or perhaps even more) Internet site. I am strongly for a collaborative site where the users create themselves the most part of the site. And now I face the question what model should I choose for the collaboration. I have researched the web a bit looking for diverse solutions. I am rather determined to use a perl engine, but actually the programming language is a secondary issue - the main issue is which model of collaboration is optimal for what application. I believe a guide in this subject should be helpful to many others.

In more detail I have researched following options:
  • WikiWiki and ascendants
    model:in the original every user can do everything, you rely on her responsibility; in Twiki you can: "Define groups and impose fine grained read and write access restrictions based on groups and users"
    applicability: in closed communities where you can throw away the wrong-doers, for non-controversial subjects or when the controversies can be settled, and consensus reached by other means, for information that once available can be easily verified.
  • everything engine You monks with more time spent at the monastery should know better than a beginner like me, but to start the discussion I present my wild guess.
    model: nodes are "owned" by the creator - she can modify them, there are: rating of nodes but with rather narrow application, the Chatterbox application, advanced mechanisms for linking between nodes, "nodeballs" for threaded discussion and wiki style editing (perhaps others?). What I feel is lacking is the possibility to filter the nodes based on their ranking (especially in the threaded mode).
    applicability:
  • slashcode and scoop
    model: user comments cannot be changed once posted, are collectively rated (moderated), you can view all or you can set a threshold on the rating, comments are grouped into threads of discussion
    applicability: scales quite well in the range of a few hundred thousands registered users and who knows of how many anonymous, good as a discussion forum when there are many controversies
  • bricolage
    model: a closed model, similar to traditional publishing
    applicability: for a small group of editors and writers where you can strictly define the responsibilities
  • livejournal
    model: multithreaded discussions, useful security feature - possibility to restrict readability of some write-ups to some defined audience
    applicability: can be used for groups that don't want to share some of the information with general public
  • yabb
    model: threaded discussion with private fora
    applicability:
  • phpbb
    There seems to be lots of simple php threaded fora.
    model: threaded discussion with private fora
    applicability:
  • Good old mail lists and Usenet
    model: threads, you can develop your own filters
    applicability:

There is also the proprietary DNA backing the h2g2 community with a really reasonable peer review model.

When I started this node I did not actually know how to name the different uses for collaborative media and thanks to the enlightening comment by ichimunki now I have two names: discussion and reference. For discussion the essential feature are threads, for reference essential is editing existing nodes to improve it’s content. Reference should always be accompanied by discussion in my opinion – so the ideal model should be mixed.


Related links:
Updates:
  • livejournal – based on theorbtwo comment
  • mail lists and Usenet – based on Abigail-II comment
  • discussion and reference differentiation; Twiki; phpbb – based on ichimunki comment

Question to all - are there "fine grained read and write access restrictions based on groups and users" in the Wiki nodeball for the everything engine?

Replies are listed 'Best First'.
(OT) Re: Collaborative Media
by ichimunki (Priest) on Feb 17, 2003 at 17:17 UTC
    I find the Everything Engine works well for sites like PerlMonks, but terrible for sites like Everything2. It's very much driven by a node/counter-node (i.e. question/answer, topical post/discussion) model. For most discussions the ability to edit posted nodes is not essential as corrections can be made as amendments-- but it's great on a site like PM which is both a discussion and a reference. The Chatterbox function is what makes both of these sites work so well as communities, if you ask me. The CB adds a dimension to the site that other sites don't have.

    Wiki, in general, is great for collaborative design (like group-maintained docs, or whatever)-- and unlike having a group of CVS committers allows non-technical people the option to participate. There are Wiki engines out there that allow for user registration and have the ability to set view/edit permissions. TWiki is such an engine. On the other end of the Wiki spectrum, you could probably write a simple Wiki engine yourself in less than a day-- then slowly add the specific features you want over time.

    Scoop and Slash both seem to have a huge focus on the story and discussion model (no kidding!). As such I don't see that as very collaborative at all. Newer stories are always pushing older stories off the front page, so there is a real sense of old vs. new content on those sites. There's also the phpBB forum engine, which I've found very nice as a user (it's in use at the Gentoo Linux forums and the MegaTokyo forums... among other sites).

    I think it's important to know up front whether you're going to want to have accessible code or whether you're fine with just skinning the application. Just because all of these have the source available, doesn't mean they're written in a way that will make your life as a developer easy. Before deciding on a package, be sure to really give the code a good eye and decide whether you think you want to spend time learning to work with that code base.

    The style of Perl used in some of these packages is going to be very different than the Perl used in other packages, and that would make a huge difference to me if I expected to be modifying the software itself as much or more than the templates or whatever. Wiki engines are more likely to be written in languages other than Perl, although I haven't found any good Ruby Wiki packages (which would be the only language I'd prefer to Perl for this sort of work, there are some that are promising, but nothing that beats UseMod Wiki or TWiki yet).
      It's very much driven by a node/counter-node (i.e. question/answer, topical post/discussion) model.

      Don't confuse a feature that runs on Everything with the Engine itself. It's possible to run a very successful Everything site without even installing the threaded discussion nodeball.

        I don't know that I'm confusing anything. everything2.com doesn't have threaded discussions, but the idea of node/counter-node is fairly prevalent. If there's a factual problem with an existing node you have to petition the node owner to fix it or post a sort of "followup" node. Perhaps there's a way to have the Engine allow community editing of some or all nodes-- as on a Wiki?
      As to slascode and scoop sites - discussion itself is collaboration another type of collaboration is moderation. Thanks to the work by moderators reading the bulk of uninteresting posts you can filter and read only the best.
      I have included some of your thoughts in the main node.
Re: Collaborative Media
by theorbtwo (Prior) on Feb 17, 2003 at 12:28 UTC

    You give a lot of information on what you've looked at, but little on what you're looking for... you're right, "the main issue is which model of collaboration is optimal for what application"... so what's your application?


    Warning: Unless otherwise stated, code is untested. Do not use without understanding. Code is posted in the hopes it is useful, but without warranty. All copyrights are relinquished into the public domain unless otherwise stated. I am not an angel. I am capable of error, and err on a fairly regular basis. If I made a mistake, please let me know (such as by replying to this node).

      The first application I am thinking about is a discussion site for absolvents of my colege. Just now I am hesitating between slascode or scoop and the everything engine. But actually it is not the most important reason for my node - I just believe that a good guide to collaborative software would be beneficial for many other beginning web publishers. And it could form a base for advocacy on this field.

        I think livejournal might be the ideal vessel for you. Then again, I'm not sure what an absolvent is... is it like a graduate? Anyway, using not only livejournal's codebase, but livejournal itself might be good. Shrug. Anyway, sorry about that comment... I'd mistook your node for a SoPW.


        Warning: Unless otherwise stated, code is untested. Do not use without understanding. Code is posted in the hopes it is useful, but without warranty. All copyrights are relinquished into the public domain unless otherwise stated. I am not an angel. I am capable of error, and err on a fairly regular basis. If I made a mistake, please let me know (such as by replying to this node).

      Personally I think it's better if he takes a general view, because his research is more likely to be useful to more people that way.

      Thanks for doing all that footwork, zby!

      jdporter
      The 6th Rule of Perl Club is -- There is no Rule #6.

Re: Collaborative Media
by Abigail-II (Bishop) on Feb 17, 2003 at 22:23 UTC
    From your post, I cannot figure out what purpose this collaborative media should accomplish. Are you to develop a product? Probably not, as your analysis doesn't rate the options in that respect. But if you are, you shouldn't underestimate the power of mailing lists. Perl5 is developed on a mailing list. And MUAs have a superiour user interface compared to websites (better threading, score files, your favourite editor, keeping track of what you have read, filing, etc). Usenet is, IMO, also a preferable media over websites.

    Abigail

Log In?
Username:
Password:

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

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

    No recent polls found