My name is Brian,
I've been looking around at the mail archives and progress of Forrest, it's
great! I'm just introducing myself, I guess. I'm really into CMS,
it's something I'm doing for my main line of work.
I'm not sure how
many of you have heard of Xopus, but it's a very cool (and very lightweight)
browser plugin that allows inline editing of XML documents. See http://www.q42.nl/products/xopus/
and try the demo to actually understand what I am talking about.
I don't have any connection with these guys, I just think their technology
rocks the house.
I saw the
CMS thread that happened a couple of weeks back, and I don't want to flog a
dead horse, but I would like to throw in a prop for doing a CMS within Forrest
sooner than later. Here's why:
I'm starting to
believe that ad-hoc user-generated documentation may be what gets people to
write docs. By this, I mean truly living documents that users can
edit. Check out the sections of http://mysql.org/doc/ for an
example. At the end of each section, users can add comments that elaborate
the documentation and leave "popcorn" for the maintainers to update the
site. Forrest is most successful so far as a documentation system, and
documentation is what seems to be lacking in the world. So it seems to
make sense to really kick some butt with the handling of documentation.
Gracefully integrating user changes, as they have them, seems to be something
that would make a lot of sense.
To illustrate, a
couple of examples:
An example of how it
*shouldn't* be: Over the last week or so have contributed some diffs that
would help people avoid some build and install issues I hit with a couple of
random projects. They haven't been merged yet, so my attention deficit
disorder has me wondering whether I should make more diffs, since the instant
gratification that I can get somewhere else isn't there.
My idea of how it
should be, with Xopus: I see a problem that I want to fix on a page.
I log into the site, and since I'm in Mozilla, I hit F7 to edit the text.
Xopus comes in to let me edit the text -- inline. When I am finished,
Xopus pushes the changes to the server. My changes are *not* immediately
put on the site, but are queued. The queue is managed by Scarab, logged as
a documentation bug with a patch, and both myself and the maintainer are
notified in standard Scarab fashion. The next time the maintainer logs in,
a viewer shows the changes and allows them to accept or reject the
changes. If they are accepted, they are pushed to CVS. Either way, I
am notified of the accept/reject status of my work, again via Scarab.
There is no room for loss of my work, and I can track the status and who is
responsible for reviewing my changes.
The reason I am
yammering about this is because all the parts are there (Wyona for CMS, Xopus
for XML editor, Scarab for issue tracking, just add glue), and adding this to
Forrest would leverage it to any project that used it. It would add a very
fast feedback cycle to people that wanted to add to the documentation, which
would increase participation. Since docs are a weak point of all
projects, if it was successful at increasing participation on them, nobody would
think of doing a project without it.
The ugly stick with
these kind of systems is that they are another database system that needs to be
maintained, but if everything could be managed through Scarab, the extra cost is
really back to zero. And if it gets people to contribute to documentation,
how much is *that* worth?!? :-)
be worth thinking about!