Hi, Someone brought the following commits to my attention, asking how you guys can solve such disagreements without endless discussions.
** Here's the story ** 1) Justin commits this to replace for example "utilize" with "utilise": https://github.com/apache/flex-utilities/commit/68e4e93ac70a61e31029f3d4601184ca90222878#diff-2e816ed51dd59a9bb0630ea81ecae78e 2) Later Alex mentions that you guys haven't agreed on International English so far: http://markmail.org/message/b7nurawtxsgg32i2 3) And later Alex commits to the same file replacing "utilise" with phrasing that avoids using either form: https://github.com/apache/flex-utilities/commit/eb658e05f50be571877c1f5b6ef366bb8bc4ae4d#diff-2e816ed51dd59a9bb0630ea81ecae78e ** My analysis ** Using neutral phrasing is a creative move on Alex's part, but unfortunately the core issue of which spelling to use hasn't been solved, and bites you guys back later when Justin (IIRC) mentions the issue isn't resolved and wants a decision on which spelling to use. All this while others probably couldn't care less about one or the other spelling and consider the whole thing a waste of time. So How can you guys come to agreement on using International vs. US English, for example, without spending ages discussing it? At step 1), Alex could very well have vetoed the commit, as per [1], with justification. Justin is then expected to revert it until a decision is made. Commit vetoes are not shameful or rude, if used sparingly and with proper technical justification. Alex thinks you didn't agree on this, it feels important to him so he vetoes the commit, no problem with that. A discussion will then usually happen, and if it's impossible to agree, the Apache principles recommend a PMC vote - on your dev list of course, there's no need for that to be private. The key to avoiding an endless discussion is to express your opinion clearly (and concisely if possible) and if a common opinion doesn't emerge suggest a vote before the whole thing drags on for too long. I this case, If I was on this PMC I'd just reply "I don't care, and if people disagree let's have a vote on this" and then get out of the discussion. By default all votes follow the "majority approval" rule [2] so assuming at least 3 PMC members vote you get a clear and documented decision within 72 hours. Having votes about such trivial (to me) things is certainly not fun, but we know that we cannot always agree in our projects, so having such a way to resolve disagreements without spending ages on them certainly helps the project progresses. The "majority approval" voting mode for almost everything (vetoes are for commits only) helps move forward. It's not fun to have to accept a decision that goes against your will if you're in the minority, but that's how collaborative projects work. Please don't get into voting on each and every thing that happens, but having a concise and documented set of guidelines for such things that feel important to some PMC members helps avoiding rehashing things every time they come up, so it's an effort that's needed for a project to progress. If other PMC members don't feel those issues are important, just stay out of the discussion and vote one way or another when needed to allow things to move forward. Hope this helps. -Bertrand [1] http://www.apache.org/foundation/voting.html [2] http://www.apache.org/foundation/glossary.html#MajorityApproval