ConsensusPollingAffordances for Participants

OurWork Edit-chalk-10bo12.png

What (summary)

This task is part of Project: ConsensusPolling Affordances. Participants need to be able to easily participate, meaning: sign up, set and change their status, and express their concerns.

Why this is important

ConsensusPolling is one of our core products (we're building HOW we work together). It also has a viral component that is important for growth. If participants in ConsensusPolls about the website find them easy to participate in, they will be more likely to invite their organizations here to make their key decisions using ConsensusPolling.

A successful poll involving 1,000 people would be news that the popular press might pick up which would attract more of the community builders we're looking for.

People unfamiliar with wiki have difficulty effectively participating in our current implementation of Consensus Polling. In order to truly evaluate how strong the product is, we need to remove some of the mechanical barriers to participation.

Status

Apart from the User Interface, the consensus poll extension is operational. When a user adds the following tag, the extension will be triggered. It will use ajax calls to a consensus poll web service running in compost to update db and get current summary of the consensus poll. It will display the comments of all the participants of that poll. To test the code, make the following additions to your LocalSettings.php file:

  • Set $enableConsensusPoll to true
  • Add the statement require_once("extensions/ConsensusPoll/consensus_poll.php");

Note: You'll have to do rake db:migrate before running the rails app. I know you know this already, but being over cautious :)

DoneDone

  • The ServerAnimals example consensus poll page reflects the following
  • easy sign-up for participants
  • easy choice of status (yes or not yet) for participants
  • easy change of status for participants (as many times as they want)
  • easy to leave a comment at every change of status
  • easy to change current comment at any time (if previous item is easy enough, might just make them choose the same status again and leave a new comment?)
  • BONUS: Easy to "catch up" on all changes since you last revised/refreshed your status

Steps to get to DoneDone

  • Include a new extension for mediawiki to incorporate a new consensuspoll tag
  • Check if user is Logged in before participating
  • Make a new web service in compost which is invoked for consensuspoll tag
  • /User:Brandon_CS_Sanders/Consensus/ServerAnimals/Status ... includes a history of my status and my status comments
  • /User:Brandon_CS_Sanders/Consensus/ServerAnimals/Discussion ... each status comment that I make is added to the bottom of discussion and other people are welcomed to edit it as well
  • ServerAnimals/Status ... includes a line for each participant that is updated each time they update their status
  • a running tab of YES and NotYet percentages
    • Each participant line includes their current status, their current comment, and a show/hide link for their discussion
  • When a non-logged in user arrives at a ConsensusPoll they are presented with "Please login to participate" ... like you already have
  • When a logged in user arrives at a ConsensusPoll that they are NOT participating in they are presented with "Participate in this poll"
  • When a logged in user arrives at a ConsensusPoll that they ARE participating in they are presented with:
    • their current status
    • followed by the comment box
    • followed by the buttons
      • If the user's current status is Yes, the buttons are "Refresh your Yes" and "Change to Not Yet". If the user's current status is NotYet, the buttons are " Refresh your NotYet" and "Change to Yes".
  • Improve UI

Latest Development requirements and Concerns

  • Instead of creating two different pages (status and discussion pages) for each participating user, use a single discussion page and extract current comment and status using revisions.
===Issues===
  • This requires changing the code at the base level and would require more than a day.
  • There are logical issues with this approach for example if a person is 'discussing' on a user's page, it will also go down as a revision in the revisions table. In this case, the difference of the two most recent difs will not yield the current status and comment of the user. To accomplish this, a work around will have to be devised such as using the edit summary to always keep the current status and comment.

Concerns and Issues

  • We are unable to get WEBrick to work on our machines. We get 500 Server Error. This is the same problem we are getting for UberPatrolFixes. Any suggestions and permanent fixes for this problem? We cannot check any changes made in our code due to this problem (fixed)

Discussion

Mohammad et al, I'm extremely interested in this task, and am available to help with specs or "customer-side" communication of any kind. It is not my intention to get in your way, but I'm here. :-) TedErnst | talk 06:24, 2 October 2007 (PDT)



Retrieved from "http://aboutus.com/index.php?title=ConsensusPollingAffordances_for_Participants&oldid=14739929"