Forum OpenACS Improvement Proposals (TIPs): TIP #6 (Clarify/resubmit): Having volunteer OpenACS Worker Bees

Abstract

This document describes an effective and standard way of letting less experienced developers and contributors share parts of the workload of the OCT and other Highly Experienced Developers (HEDs) within the OpenACS community.

Specification

Persons, who are not members of the OCT, can volunteer to become an OpenACS Worker Bee (OWB). An OWB accepts to be asked nicely and to the point by members of the OCT, or persons appointed by them, to work on a particular OpenACS related sub project within the limits of the OWB's time, interests and abilities.

Each OWB will get an ETP instance or similar functionality on openacs.org, where he or she can indicate activity level, interests and relevant experience as needed. OCT members may search the list of available OWBs when looking for currently active OWBs likely to be able to do the subtask needed more or less independently of the OCT member. Communication between the OCT member and the OWB is through Email and will be short and to the point. The Emails should be considered task progress handshaking and not social interaction, and the subject line of those mails will include [OWB] to indicate as much.

When asked to do a particular subtask, an OWB may refuse immediately and without stating a reason, though a brief explanation is encouraged. Alternatively the OWB can accept the tasks proposed, and is then expected to report back to the task submitter upon completion, or when having to drop or give up doing the task. The OWB may be subject to enquiry by the task submitter in order to gauge progress.

This document does not make any proposals as to the decision process behind each subtask on part of the OCT member or others. It only specifies how others could be asked to do it, once the decision has been made.

Reference Implementation

As an example consider an individual openacs.org user, NN, who has been given CVS commit, and has volunteered to be an OWB. NN indicates a willingness to help maintain the source tree through application of patches and larger changes, like noquote, in the individual packages needed to implement core architechture changes.

In some agreed upon way the OCT, or their representatives in the form of package maintainers, decides that the patches X, Y, Z and W should be applied, and mails NN:

(Subject) [OWB] Please apply these patches.
Hi NN,
Please apply patches X, Y, Z and W to HEAD (but not oacs-4-6).
Regards OCT Member.

to which NN replies

(Subject) Re: [OWB] Please apply these patches.
Hi OCT Member,
I cannot apply Z as it requires testing on an Oracle based setup which I don't have access to, but I'll have a look at the others.
Regards NN.

and later

(Subject) Re: [OWB] Please apply these patches.
I have applied X and W to HEAD, but on a current checkout I was unable to reproduce the problem, which Y was supposed to fix.
Regards NN.

OCT Member marks X and W as accepted in the Patch Collector upon receiving the last mail. Etc.

Rationale

In the above example the benefits would include:
  • Faster acceptance or rejection process for relevant patches, encouraging people to submit more.
  • Allow NN to contribute meaningfully to the development process, according to his level of experience.
  • Allow NN to work independently on existing code in the tree by submitting patches, possibly with reference to a TIP, in the knowledge that they would be accepted and applied or rejected fairly quickly, allowing him to work in a progressive fashion even in situations, where later patches relies on previous ones. All this without having to borther OCT members or package maintainers directly.
  • Lessen the workload on OCT members by allowing them to outsource the application of the simpler and 'obviously correct' patches, thereby giving them more time dedicated to the harder problems and their own projects.
Similar benefits can be listed for other types of typical OWB tasks like documentation writing, advocacy and more.

Collapse
Posted by Lars Pind on
Sorry, I obviously approve this, just forgot to actually vote.

Go, go, Frank!

Collapse
Posted by Roberto Mello on
Actually this was vetoed during the OCT meeting earlier today. I was charged to rewrite this TIP with the things we agreed upon, which I'll do later today.

Problems with this TIP include that it add too much process to the problem of lacking resources, defeating its purpose.

As soon as the TIP is re-written, it'll go for full vote again (hence satisfying requirements of TIP #2).

-Roberto