Governance revisited

Troy Rollo wine at troy.rollo.name
Mon Sep 25 00:15:16 CDT 2006


On Monday 25 September 2006 13:16, Dimi Paun wrote:
> On Sun, 2006-09-24 at 12:36 +0900, Dmitry Timoshkov wrote:
> > Everyone who complaints about "problems" with patch acceptance policy
> > seem to claim that, but my impression is that complaints are going
> > from technically incompetent people, who just "feels" that the process
> > can be improved, but can't explain it in developer's language (i.e. in
> > technical words) how.

> One thing to be careful about is the ever growing trend of forming
> a very tightly coupled in-group. It is very easy to happen: most
> top developers work for the same company, they are extremely competent,
> and have the technical argument on their side.

Is it, or is it that the culture attracts "yes" men? Considering the text you 
quoted, who would want to work for CodeWeavers if they do differ in opinion 
(or, quite frankly, even if they don't)? People are more likely to go where 
they will be appreciated.

"We know we're right, because we're all very clever and we all agree".

> It is way too easy to feel righteous.

The text you quoted exhibits far more serious problems than that.

> This is a big problem, as it elevates the (already high) barrier to
> entry to a dangerous altitude. And the feedback is positive, as people
> are being put off, the in-group grows tighter, etc.

Indeed. Consider again the paragraph you quoted. Not only is it ad-hominem, it 
is a classic example of forestalling disagreement. Don't speak up to disagree 
or you'll be labelled incompetent. The accusation is far more likely to be 
more an indication of the maturity of its maker rather than a reflection of 
truth.

If I say I've been coding since I was 14 (in those days home computers had 
less than 1% penetration in Australia), in assembly language since shortly 
after that and raw machine code not long after, having memorised the 
instruction set, then was widely recognised as the most capable Comp Sci 
student at the top university for Computer Science in the state, and that I 
only employ people who are proven geniuses, would it make a difference? While 
true, it's all irrelevant to the argument at hand. The accusation made above 
is also irrelevant.

There is a valid point being made here - the black hole of patch submission 
*is* turning away developers. As one anecdote, one person currently on my 
staff - and note above - tried submitting patches to Wine in a personal 
capacity and would most likely still be submitting patches, but found the 
problems being discussed rendered it not worth his effort. I don't have to 
walk very far to find somebody else with the same opinion of Wine.

The present system turns people off even before you've had time to learn 
whether they are capable or not.

> To my mind, Alexandre is the Roger Federer and Michael Schumacher of
> software development. He is never wrong.

Everybody is wrong sometimes, although I have noticed that when somebody gets 
a sufficiently high reputation people stop noticing when they do get things 
wrong. I say this from the perspective of somebody who is sometimes in the 
situation of being the person with that reputation. As an example I have had 
people say to me "it's easy to speak up when you get everything right", to 
which I have responded that "I do get things wrong, you just don't notice 
when I do."

Actually, some people arguing in support of the status quo have pointed out 
that Alexandre sometimes accepts things he previously rejected after an 
argument being made successfully in favour of a change - in such a case if we 
are calling things black-and-white wrong or right, then either the first 
decision or the revised one must be wrong. A rejection cannot be an 
incontrovertible sign of the wrongness of the contribution.

Of course making an argument in favour of a particular contribution is 
somewhat challenging, if not impossible, when you're not being told why 
Alexandre perceives his solution to be better, which seems to be most of the 
time. Often the difference may be a mere matter of style - Alexandre seems to 
be more comfortable with copy-and-paste coding than I am, for example - but 
if it's more than a matter of style the rejection of the patch should give 
the reason. It saves no time to require people to chase up Alexandre for 
reasons unless by "saving time" you mean the person doesn't bother and so the 
change never gets in.

> This is
> even more difficult when you have to guess Alexandre's ideas about how
> you should properly solve the problem :)

Actually, this is probably 90%+ of the problem. If patch submission weren't a 
black hole in which it either gets through or you have to go begging for 
feedback like an errant schoolboy, you wouldn't see nearly the volume of 
complaints you do.

Worse are the times when you spend considerable time reworking a patch to his 
specifications and he still won't let it in. One of my staff had this 
problem, and the answer from Alexandre was that he wasn't going to let 
*anything* in covering that area no matter how it was implemented until it 
had been proven in the field (effectively forcing a branch). That's pretty 
soul-destroying stuff. That staff member resigned a short time later, and 
while he gave other reasons his frustration with dealing with Alexandre had 
been showing, and his whole job revolved around improving Wine.

> IOW, I think we're missing on an important human aspect of development:
> the need to compete, and show that you can do it better than the other
> guy.

This is something that abates with maturity... at least for people who don't 
get stuck in a One True View Of The World mind-set.

> Bottom line, I don't know. At most I can say that sometimes I wish
> Alexandre would be a bit more impulsive, and just let (a selected few)
> things in that people want.

I don't think this is necessary, at least 
-- 
Troy Rollo - wine at troy.rollo.name



More information about the wine-devel mailing list