File:  [NetBSD Developer Wiki] / wikisrc / wiki / todo / let_non-developers_contribute_content.mdwn
Revision 1.4: download - view: text, annotated - select for diffs
Wed Nov 11 23:55:03 2009 UTC (4 years, 5 months ago) by wiki
Branches: MAIN
CVS tags: HEAD
web commit by schmonz: pretty sure this would work

[[tron]] suggests that non-developers should be able to post content to a staging area, to be approved (possibly after editing) by developers. [[schmonz]] likes this idea a lot.

_For non-developers using [[anonymous CVS|wiki/todo/push_wikisrc_to_anoncvs]]_: submit a diff to `netbsd-docs@`.

_For non-developers using a web browser_: the ikiwiki discussion subpage and/or [[!iki plugins/comments desc="comments plugin"]] may point toward the solution.

One of the reasons we [[chose ikiwiki|wiki/todo/choose_wiki_software]]
is the ability to edit via CVS
directly, as well as via the web. As long as every wiki editor is a
developer, controlling access consistently is simple. In order to open
up wiki editing to non-developers, we have to think carefully about
both the CVS case and the web case.

In the short term, to start getting non-developers involved, I intend
to [[push wikisrc to anoncvs]] and
[[hook up wiki commits to www-changes@]].

In the long term, ikiwiki has a few ready-made web authentication
options (a locally managed user database, OpenID, and HTTP auth), and
if they don't suffice for some reason, it's easy enough to write an
auth plugin. The hard part is deciding the workflow: where is a
sensible place for non-developers to make their edits, and what is a
sensible way for developers to review and "bless" the changes? Two
ikiwiki-native possibilities are listed above.

Ideas welcome! Edit this page and add your comments. --[[schmonz]]

One idea:

7. Enable Discussion subpages.
7. Mark very clearly on the Discussion page template that content may
have been written by anyone at all and has not been vetted by any
member of TNF.
7. Update the `locked_pages` PageSpec to allow anonymous editing of
Discussion subpages (and of no other pages).

The resulting workflow:

7. Non-developer finds a page to which to suggest changes.
7. Non-developer edits its Discussion subpage and writes the suggested changes.
7. Developer who follows [[RecentChanges]] (or the commit mails) notices the changes.
7. If the changes aren't acceptable, developer edits the Discussion subpage and explains why not.
7. If the changes are acceptable, developer applies them to the page and removes them from the Discussion subpage.

CVSweb for NetBSD wikisrc <> software: FreeBSD-CVSweb