Maurice Gittens wrote:
Since this thread has come up I will share my reasons with you.
Excellent, thank you...
If what I have read about Apache projects is actual, Forrest is a meritocracy.
While lurking on this list, I, a few times, took issue with the way merit
seems to be repudiated by certain members in the Forrest community. The
commit that reverted the mention of Thorsten as the inventor of the
dispatcher actually made me decide that the Forrest project is not for me.
For me, the key is that the dispatcher is not possible without a whole
load of code that existed prior to the creation of the dispatcher and
without the input of the community in design discussion.
In what meritocracy is merit denied those deserving it?
In an ASF project merit is given by recognising the contributions of all
contributors, not individuals. We recognise individual contributions by
voting in as a committers, PMC members and eventually ASF members. We do
not do it by recognising individual code contributions.
Thorsten did great architectural, design and engineering work in the way he
orthogonalized the primitives needed for advance SOC in the Forrest
framework.
For the record, this is absolutely correct in observing the value of his
*leadership* in this work, but there are many others who have
contributed to the dispatcher in many different ways, code patches,
testing, design discussion, the workshop at ApacheCon, past code
contributions etc.
To do this he needed an appreciation of both the high level
picture and the nitty-gritty details of Forrest.
Does he not deserve a mention for this achievement and contribution?
That credit is in the archives, in the SVN logs in the status.xml file,
in the changes.html page and in the community memory and, most of all,
by the fact that Thorsten is a committer and PMC member of the Forrest
project.
Is it fair to project the fact that some feel their contribution are not
worthy mention, unto all?
Exactly - by claiming ownership (or implying ownership) one diminishes
the contributions of others!
If a person gives up the right to merit; why
does he feel that another person should as well?
A person is only expected to give up the concept of ownership. Merit
comes from community recognition, ad in a healthy community, comes
without asking for it. Thorsten has that recognition.
Just about every Open Source project I know recognizes major
contributors. Why not Forrest?
I cannot think of a single advantage where an individual *takes* such
credit, only examples where it is *given* by the community as a whole.
Does Thorsten deserve such credit? Of course he does, and if you look in
the archives you will see it all over the place. But others also deserve
such credit.
In the period I lurked on this list Thorsten _gave_, in the nontrivial sense,
possibly more than all others! Why is it that he should not _get_ factual
recognition of this?
The key here is "in the period I lurked on this list", we must not
forget what happened before you started lurking. For example, I did the
majority of the work on the plugin architecture, which made the
dispatcher possible. I also spent time adapting the plugin architecture
to support what Thorsten needed to do. My own work built on the skin
plugin system, (mostly contributed by Nicola Ken), which in turn was not
possible without the skinning system (mostly contributed by Stefano),
etc. etc.
Even the *concept* of the dispatcher was born from community discussion
and development. It has never been the output of one individual, and
this is becoming even more true as more developers find the time to
contribute to it. Of course, this discussion would never have happened
without the leadership of Thorsten, but then without the support of the
community would Thorsten have succeeded? I'm implying nothing, just
asking a rhetorical question that cannot be answered accurately.
Finally, the core design pattern used in the dispatcher came from Sun,
not from Thorsten.
So, in summary, whilst Thorsten undoubtedly pulled all this together and
built the majority of the code, it is certainly not the "invention" of a
single individual.
Now, we could go down a whole route of discussing at which point history
credits someone as *the* inventor. However, I do not believe that, it is
part of our role to decide such things. It is the role of the historians
who come after us.
As Tim pointed out, they will have a wealth of information to work on,
should anyone be interested. If they ever ask me to name the key figure
in the dispatcher development there are two people I would name,
Thorsten as the key architect and developer and Cyriaque who built the
first usable theme and started making the code accessible to the rest of
us. The community will be in there as the third key contributor.
(not that I think Forrest is important enough to attract such historians)
I understand that Forrest is your project governed by your rules.
My contribution and the purpose of this mail is only to point out that certain
developers avoid projects which deny merit to those deserving it.
Thorsten is a committer and PMC member in this project. That is how ASF
projects recognise contributions and "apply" merit, see [1] and [2].
Furthermore, nobody is saying that the dispatcher would have appeared
without Thorsten, only that the dispatcher would not appear without the
community.
This is what distinguishes a community led development from a code or
individual led development.
Please view this email as no more than an opinion of such a developer.
I hope that Forrest does not loose many contributors as a consequence
of this policy.
You are, of course, entitled to your opinion. There are many views on
how Open Source should work. There are many people, like you, who do not
accept that the ASF approach is the best, perhaps you are one of those
people.
Personally, I think that a focus on community is critical to a
successful Open Source project. Claims of credit, over and above the
community are, in my opinion, damaging to that community.
Ross
[1] http://www.apache.org/foundation/how-it-works.html#meritocracy
[2] http://www.apache.org/foundation/how-it-works.html#roles