[Greasemonkey] Userscripts.org Wikified Scripts: Branching

Lenny Domnitser ldrhcp at gmail.com
Mon Jul 3 19:18:41 EDT 2006


On 7/3/06, Britt Selvitelle <anotherbritt at gmail.com> wrote:
> We spoke about many ways of visually displaying forks/branches,
> including tree views, and using voting procedures to recommend a
> particular branch of a script the user.
>
> In the end though, the most important thing is that Joe Schmoe user be
> able to find the script that floats his boat, and linear historical
> revisions is the simplest way to convey this.

You're right that if branching is done as I originally proposed, then
some scripts could become very fragmented. How about if the author has
a really easy way to merge in changes? If an author does not want
certain changes, then they should be allowed to keep their script
listed as-is. If a script is unmaintained, then it should be marked as
such in the comments and ratings.

> Imagine Wikipedia if someone could branch an article if they didn't
> like the way it was written?
>
> In the end we'd like to tighten the already amazing Greasemonkey
> community even more with an unprecedented, unselfish contribution and
> collaboration on scripts, and general skipping and dancing all around
> by everyone.

I think Wikipedia has very different goals from Userscripts.org.
Wikipedia seeks to make a definitive, neutral-point-of-view tertiary
source of all knowledge. Userscripts.org is a directory of userscripts
that people post, and they should be able to keep them in the
directory, not submit them for the community to take over. Don't take
that the wrong way--I think that the community aspect of
userscripts.org is very important, and that there should be an easy
way to hack on existing scripts. But giving an author control of a
script is not about selfishness; sometimes people have different ideas
for the direction of any particular script. Unlike in Wikipedia, there
is no reason to try to work these differences out, since there is no
need for a definitive version of a script.

Taking into account the various reasons one might branch a script, how
is this for the interface? Each script has an "Edit this script" link.
This goes to the form I originally described. Then, there are three
ways to submit:

  * Save (available to the author)
  * Save as new script
  * Email the author a patch

For the last option, all pending patches are listed along with a
script, and the author should have to accept a patch or deny it. If
they don't do anything about it for a while (say, a few weeks), then
the script is marked as unmaintained, so people looking for scripts
get a patched version instead. The author can then go in and edit the
maintenance status of the script.


More information about the Greasemonkey mailing list