Seattle Plone Gathering

Personal tools
Navigation
Log in


Forgot your password?
New user?
 
Document Actions

Ideas for Ploneboard

Working ideas for improving Ploneboard via a community-developed spec and funding pool. Contributions/ideas welcome. Please comment below.

Update - October 2005

As of early October 2005, we've refined (and scaled back) the set of requirements/features below and turned them into formal proposals for the Ploneboard PLIP tracker.

If you are interested in doing development work, or contributing funds to support Ploneboard development, please email Marshall Mayer.


Motivation

Plone aspires to be the definitive platform for building collaborative websites. Forums are an essential part of many community websites. Currently, the Plone platform lacks a truly outstanding forum product.

We believe that the most promising product in the Plone landscape right now is Ploneboard. Ploneboard's mission is to create "an easy to use web board. It utilizes the proven Plone user interface, and is made for easy integration into Plone sites. The target audience is businesses and developers wanting a discussion board in their Plone site."

As of this writing, Ploneboard 0.1 beta 1 has just been released. It's a great product already, with a lot of necessary features, but needs only a relatively small push to be "ready for prime time." It is our understanding that Alexander Limi of Plone Solutions has indicated that the Plone Solutions team (and perhaps others?) are eager to do some work on Ploneboard, but doesn't currently have any customers willing to pay to support the work.

Through this "social source" process, we hope to catalyze the Plone community to create a spec for a sufficiently-featured forum product as well as generate the financial and human resources necessary to realize the full potential of Ploneboard as the best-of-breed forum solution for Plone.

Our immediate goal is to help define a functional specification for Ploneboard 1.0 (a moderately-featured product), and catalyze the development of this product for completion by the end of 2005 (hopefully in sync with the release of Plone 2.2 and integrated with any new "community" workflows).

Our long-term goal is to help Ploneboard become the leading forum product for Plone, as well as evangelize the Plone platform, in part because it has easy-to-use and easy-to-implement community interactivity tools.

Proposal / Rough cut of feature requirements

NB: This section is now obsoleted by PLIPs at Plone.org, but may be useful for historical reflection.



Must-have features in core product (beyond what is already in 0.1beta1, in order of priority):

  • Edit and delete your own conversation (initial post) and/or replies (assumes member status, delete only if there are no other replies linked to either, otherwise option to retract). Managers should have ability to delete posts.
  • Add quotes from other posts/replies to your own reply.
  • Add multiple images and/or multiple file attachments to any post (members only)
  • Track read/unread status for all forum/conversation content by member.
  • Add a portlet, showing all recent unread forums/conversations since last member login, organized by most recent forum, suborganized by most recent conversation.
  • Make all recent conversations/most active recent conversations show up in "recent changes" portlet.  
  • Ensure that all content is instantly cataloged (and undo is possible from the member level).
  • Syndicate forums/conversations using whatever syndication method is included in Plone 2.1 as the default.
  • Link each instance of a poster's username to their member profile page.
  • Email notification of new comments per user, per conversation (subscribe button)
  • Add a RAM Cache Manager to tweak for highest performance, based on all of the features above (and below, if possible).


    Preferences (administrative functions):

    For Ploneboard (default for all forums and users):

    • sort forum listings by date of creation (descending is only option, and the default), number of replies, most recent comment, most views (if implemented)
    • save user preferences by member for column sorts in each forum (pretty complicated)
    • default forum view mode (default = flat, option = nested)
    • default forum sort mode (default = oldest first, option = newest first)
    • allow member view mode (default = no)
    • allow member sort mode (default = no)
    • allow member signature file (default = no, if yes, must be a field in member preference)
    • default attachment/image file size maximum (default = 100K, option = open)

    For each forum:

    • forum sort mode (default = PB default, option = override)
    • forum view mode (default = PB default, option = override)
    • forum signature mode (default = PB default, option = override)

    For each member:

    • member forum sort mode (default = PB default, option = override)
    • member forum view mode (default = PB default, option = override)
    • member forum signature mode (default = PB default, option = override)


Nice-to-have features in core product (if they are not there yet, in order of priority):

  • Permissions to share management or ownership of the forum content (by member or group).
  • Listing of unviewed and unanswered posts (separately, member only)
  • An option to add a special comment (sticky post/announcement) at the beginning of a forum about the purpose of the forum. This always appears at the top of any listing in that forum. Can only be added by someone who has permission to manager or own that forum.
  • Next/Previous conversation links
  • Add forum and/or conversation to Favorites
  • Track number of views by forum and conversation
  • "Jump To" feature to jump between forums
  • Rich-text editing of comments with Kupu and/or Epoz.
  • BBCode > HTML transform for users who are comfortable with BBCode.
  • Post via email for registered users.
  • Add ability to group forums by an attribute (call them forum groups), and display them separately as grouped forums on the main forum page (plus add a space for a graphic for the forum as a whole as well as each forum group).

Features that we believe could be accomplished as an add-on product/template, if the core product is architected to support add-on products (in order of priority):

  • Migration utility, converting all CMFBoard content to Ploneboard.
  • Other migrations possible based on migration mapping template (just a well documented data layer): standard mbox file, phpBB, vBulletin, Drupal forum
  • Replace default Plone discussion tool with conversation tool.
  • Once Plone (Zope?) decides on a time zone translation implementation (!), incorporate it in this solution. 


Implementation (TBD)

This section should ultimately include such details as:

Financial Resources - who can help pay for this work, and how much


Human Resources - how much work this will be, and who can do the work


Next steps

  • Circulate this draft via Plone-users to:
    • Solicit comments from interested parties
    • Encourage folks who are interested in participating in development or funding to "raise their hands" and identify themselves.
  • Brian Gershon will be talking to folks about this at the Plone Conference in Vienna.  (Say hi to him if you're there!)
  • Develop a budget
  • Solicit contributions (via Fundable.org?)
  • Work with contributors to finalize the requirements
  • Identify development team (hopefully Plone Solutions and friends!)
  • Implement/test/release/enjoy ;-)


Who we are

Marshall Mayer is the founder of LiveModern, a community website that promotes affordable modernist architecture.  LiveModern has a large and active community forum, currently powered by CMFBoard.  Marshall has extensive experience with community-driven and open-source software development for the nonprofit sector. Email me with comments.

Jon Stahl is a Program Manager at ONE/Northwest, a nonprofit organization that provides online communications strategy and consulting services to environmental organizations in the Northwest US and British Columbia, Canada.  In the past 18 months, ONE/Northwest has implemented over 40 Plone-powered sites for its clients, and is keenly interested in helping Plone become the best-of-breed web platform for the NGO sector.



Thoughts from NPower

Posted by Evan Callahan at 2005-09-15 12:04

We are very excited to see this happen. As far as I can tell, you have everything we know we need covered in the list.

Thinking of where our clients will be coming from, I guess I would emphasize stability and ease of forum management over bells and whistles.

New addition

Posted by Marshall Mayer at 2005-09-15 14:53

Evan,

Thanks for reviewing the draft spec. I've added a new section, "Preferences (administrative functions), which start to get at the ease of forum management. I think these are the minimums (there could be lots more bells and whistles, which is not what we want). Comments welcome.

As for stability, my assumption is that the technical spec will do two things: conform to all Plone/Zope code writing best practices and test for stability and speed for even very large/high demand applications. The former will lead to the latter.

Marshall

Cash injection?

Posted by Dave Marsden at 2005-10-03 16:19

Fundraising was mentioned. I'm far from being a philanthropist billionaire but I am willing contribute more than "just my 2p"

Gatewaying possibilities many forums lack

Posted by Филип Милетић at 2005-09-17 00:56

IMHO, gatewaying is the next important evolutionary step for the forum scripts, and if possible, a Plone board should have them, say as an extension:

  • Forum-to-mail gateway - Forum-to-NNTP gateway - Forum-to-IM gateway (for message notifications etc) - Pretty much Forum-to-(anything you can think of) gateway

Start Small

Posted by george donnelly at 2005-09-17 11:11

Before all the big-idea chirp in with their list of revolutionary features and fantastic synergies with companies and names big and small, let me just say "whoa".

Plone needs a basic forum that just works and is not overly complex. Lets get that done first.

For big and featureful we already have CMFBoard which is a disaster.

So lets keep it simple, basic, something that does the job and thats it.

If people want to start revolutions with PloneBoard after it hits 1.0 i say go for it, but not before.

Re: Start Small

Posted by Marshall Mayer at 2005-09-17 17:50

Zettainet,

Which specific features on this page are you cautioning against? It's not clear from your post.

Marshall

Amen to that! (Start Small)

Posted by Dirk Bergstrom at 2005-09-19 14:41
I agree with zettainet
let's not go hog wild just yet. The list of "Must-have" features looks a lot like the CMFBoard feature list. I'd much rather see Ploneboard stay somewhat minimal, at least for now. I think it's better to go for a very stable 1.0, and then add features.

Of course, my "minimal" is probably different from yours, but I suspect that we can all agree on a core set of "1.0" features. To that end, here's what I want in 1.0:

  • Edit and delete (as described above) Ensure that all content is instantly cataloged Email notification of new comments per user, per conversation Syndicate forums/conversations Add a RAM Cache Manager to tweak for highest performance

I think the following features should be added after 1.0:

  • Add quotes from other posts/replies to your own reply. ==> The browser/OS already provides cut-n-paste.
  • Track read/unread status for all forum/conversation content by member. ==> A "nice to have", but not required. Furthermore, the hit tracking in CMFBoard fills up the "undo" logs with cruft.
  • Add multiple images and/or multiple file attachments to any post Add a portlet, showing all recent unread forums/conversations Make all recent conversations/most active recent conversations show up in "recent changes" portlet. * Link each instance of a poster's username to their member profile page. ==> These are nice, but could be added post-1.0
Finally, I'd like to ask that some thought be given to member/non-member features
I run an intranet, so everyone is a "member", and I need a way to restrict features other than membership.

small means Easy to Use, not Easy to Do

Posted by Marshall Mayer at 2005-09-23 08:23

krid,

Thanks for the comments. I think I understand, despite the formatting problem (wouldn't it be nice to be able to edit a discussion item?).

You said, The list of "Must-have" features looks a lot like the CMFBoard feature list.

Actually, while I think a large number of Ploneboard users will be CMFBoard converts, a much larger number of users will be comparing CMFBoard to phpbb, and thus my initial draft spec was to make it easier for that set of users to adopt it (or at least look at Ploneboard as an alternative). While I don't necessarily disagree with your re-prioritization, I think the dividing line should be to include features in 1.0 that will ensure the most rapid adoption of the product. Rapid adoption should be driven by usability of the product to carry on robust conversations, not whether it's easy or not to add a feature (my assumption is that any feature in Ploneboard will be stable). phpbb is so popular because it is so useful, and the key usability features have been there from day 1. If the key features for usability are not there in Ploneboard 1.0, and folks have to wait for some future release, then they'll wait. It may not get to a future release.

Marshall

It needs to compete

Posted by Yousef T. Fahoum at 2007-09-13 16:50
Having used vBulletin in a very large and robust forum...and currently using PloneBoard in an active but less robust group of users I have to say that many of the "Nice to Haves" need to be listed as more critical for marketing and acceptance.

For the groups that I am and have been involved with users are concerned with community and camaraderie and need things like tracking views/posts to their threads, seeing who is online at any given time and photo gallery features etc.

In this way PloneBoard needs to grow up to compete with the likes of vBulletin.

Yousef T. Fahoum
President
Fourth Corner Ducati, DOC
fcducati.com