[Framework-Team] plone products leaders (v2)

Thierry Benita tbenita at atreal.net
Sat Mar 17 07:35:38 UTC 2007


I was looking for leaders of plone products. I found leaders of plone
core, plone archetypes, but not for each plone component.
I don't think that there is currently a leader for every simple
component that is in Plone.

For those who wonder why should there be a leader for each component, I
share my experience of GNU/Debian.

I've been a user of debian for 6 years, and saw how this project works.
Debian is a communitarian project. It involves hundred developers. It
has rules for packages management and releases processes.

Each package has a maintainer. This way, each commit in this package,
each bug found, each security issue is the responsibility of the
package's maintainer.
The maintainer is included as a contact information in its packet. When
an issue is found, any user can contact the maintainer with BTS (a
general Bug Tracker System) or via email. The maintainer checks the
issue and corrects it if it's related to its job. If it's not, the
maintainer can reject the issue or forward it to the person responsible
of the issue. In the second case, the maintainer is still responsible
for the inclusion of the issue's fix in the debian package.

When a package lacks maintainer, it is claimed as orphan. Orphans
packages are listed in a page of the Debian web site, and a call for
maintainer is sent on the members list. If there is no new maintainer,
the package may be removed from the core distribution. Good packages
always find maintainers ;)

There is an admittance process in order to be accepted as debian
maintainer. The new maintainer has to have already contributed to
Debian. He needs to be sponsored by 3 existing maintainers. Then he
needs to build a new package and submit it, via a sponsor. The package
is highly criticized until it gets perfect. Then the maintainer can
become an official maintainer.

With this process, Debian has the best release quality, far ahead all
other linux distribs.

I think that Plone world is growing, and many people want to get
involved into plone. This may be an issue as we don't have enough people
that validate the code of others. Who for example will flame someone
after a 'bad' commit ? (ie a commit without test, or not developed the
way it should be) Currently, people that are _responsible_ of plone
parts are responsible of a huge branch of code.

I think that each component should have its own component leader.
The leader should be easy to find and contact. Its name should updated
in README files _independently_ of authors and credits.
When a commit occurs, this person should be responsible for this commit,
and it should have all capacity to manage contributors the way he wants
for his products. He should be in charge of following the foundation
policies and guidelines.

There should also be 'leaders architects'. For example a set of
components that are dependant each other, let's say archetypes or plone
on a higher level, should have their leaders. These leaders would be
elected by maintainers. Leaders can give the new
orientation of the global set, and say what should be done, or what
should not be done. This may be about architecture, writing rules or
When the Leader gives the new rules, each component leader applies it to
its component.

I think that we may apply this progressively. A first step would be to
call for packages maintainers. People would get a chance to be
maintainer of a product. This may be progressive : currently some people
are maintainers of the huge parts of code ; this may become official and
they would be mentioned as officially responsible for these packages.

The issues that make me think about that are :

- how many bugs are assigned to the superstar called 'nobody' ?

- it's currently difficult to know who to contact for a complex issue on
a product. This doesn't help contributors to get involved. This is btw
verry simple to find who is responsible for products on plone.org/products !

- it's currently difficult to contribute to a product of plone core. You
may say "you want to do it ; just do it", but people don't do it as
easy. Contributors a afraid about what other people may think of their
code. They often do a patch and just keep it for themselves because they
don't know who to ask if their work is good enough for a plone commit !
(yes it's true ;) ) I don't think that IRC or mailing lists are an
answer to that issue.

- Plone is growing. I mean the community and the source code are
growing. It becomes very difficult to maintain a good quality of the
code. (If someone doesn't believe me, just send me a post :) )

What do you think of this idea ? Do you think that it is
possible/affordable ?



-------------- next part --------------
A non-text attachment was scrubbed...
Name: tbenita.vcf
Type: text/x-vcard
Size: 436 bytes
Desc: not available
URL: <http://lists.plone.org/pipermail/plone-framework-team/attachments/20070317/a1b467b5/attachment.vcf>

More information about the Framework-Team mailing list