skiadas / PanthR

Statistics front-end and webserver with R connection
1 stars 2 forks source link

Some ideas on collaborating #24

Open skiadas opened 11 years ago

skiadas commented 11 years ago

I am suggesting we should implement something very similar to Google Docs "collaborative work" features:

  1. Users can add each other as "friends". All you would need to initiate a friend request would be the other user's email address.
  2. Users can "tag" their friends, effectively forming groups.
  3. Users can type messages that will be broadcast to everyone in the selected "tag" group, or just to one individual. For instance an instructor might form a "tag" group out of all students in his class. Those messages could show up in a small chat window.
  4. Users can "share" their workspaces with other users or whole groups in two ways:
    • Allowing others to view the workspace (broacast mode). Useful for tutorials, or instructors. In this mode, the initiator is essentially projecting their screen to the other users, and the other users simply watch as things happen. They are at liberty of course to "close" this guest workspace and get back to their work on their own space, and rejoin the workspace at any time.
    • Allowing others to edit the workspace (collaboration mode). Useful for project collaboration. In this mode each object would have a way to show who its "author" was, and when it was last edited. Object could be added by other users while you are working on objects at the same time. You could for instance be generating a new table summary while your collaborator is making a graph or creating a new variable or restructuring the dataset. Users should be allowed to also "label" objects, similar to the GitHub labels, to identify for instance things that need to be reviewed by the collaborators.

Thoughts?

altermattw commented 11 years ago

This sounds like a great idea. Being able to read the authorship of particular report objects might be helpful to instructors who want to make sure that students are not simply copying others' work. The proposal seems to require the following:

Rather than call it "friend", we could regard "user" as an object, which would store an email address (required) as well as other information (first and last name, maybe a small picture). There would be an option to identify a new user, which would call up a dialog and ask for email address. The user could then right-click the"user object" and select "Share Current Workspace", "Share Object..." (leads to dialog), "Send Message", and "Tag". Users and objects can be given the same tag (e.g., "June Report"). Dragging a user icon onto a report or data object would prompt the user for whether they want to share that report or data with that user.