Much rather welcome new contributors and guide them along, get them to be
productive and useful than yell at them for having a bad initial patch.
>> From the outside, you look like a well oiled machine.
And it's a well oiled machine
that accomplishes things more effectively than a commercial organization.
But at the same time, it's a band of brothers to some degree.
>> We have close to 1,400 people with CVS accounts,
which means those people can all commit to some part of the repository.
Either PHP, PEAR, PECL, the documentation tree, anywhere in there.
Now they're not all active, obviously.
We probably have maybe slightly over half
the people have committed something in the last year and a half.
There's no management of these people really.
They sort of self-organize into smaller groups.
It's impossible to manage 1,400 people, obviously.
Especially when they're volunteers and they're not actually
going to show up to a meeting or to a meet and greet or email or whatever.
But they self-organize around what they're interested in.
So we have documentation teams for the various languages.
There's a big French documentation team that just worry about the French
translation of the documentation.
There's a Japanese translation team.
Big group of core documenters.
And those guys organize themselves.
There's no big chief of this whole thing.
I don't tell people what to do, I can't.
They're not going to listen to me.
Why would they listen to me, right?
They do what they're interested in, that's the only way volunteers work.
Then there's the PECL guys that build PECL extensions.
Generally, that's sort of where we test out new extensions and
bring in certain ones.
Like in PHP 5.1, we brought in the JSON extension, which started its life in PECL.
Next, maybe or some of the others that are big right now.
So that's sort of how new features and new things eventually creep in.
They live outside of the core tree, and they get enough penetration there,
enough people install them.
We see Linux distros pulling them in,
in their core version of PHP they pulled in some of these things.
So we sort of look at what's happening out there.
And that happens, but there's no real management of that either.
And it's a meritocracy, code speaks.
If you write a patch or
you write a piece of code to implement the feature, that says a lot.
If someone wants to disagree with that way of doing, if they can offer
an alternate implementation, that's a really good argument.
If all they do is whine about it, that's a really bad argument.
And chances are that the implementation will win.
Even though it may not be the best way of doing things, there is code,
it sort of works.
That's what we go with, and that's always been the default.