coding conventions : getUrl vs getURL
Rod Widdowson
rdw at steadingsoftware.com
Mon Mar 11 07:04:25 EDT 2013
Tom and I discussed the engineering side of this on Saturday, so I thought
I'd put in my $0.02 worth (of agreement with Scott).
In any engineering decision by the team there can only be 100% consensus.
Not voting, consensus. This is why we are a meritocracy not a dictatorship
and *absolutely* not a democracy. Everyone has to have bought in to the
project decisions; being voted down is not buy in.
In the usual working of things (as in: in all the time that I have had the
honour of being allowed to check in to Shibboleth, and in all other high
quality engineering projects I have worked on) consensus is trivially
achieved:
- "I agree with you"
- "I have no opinion so I demur [and/or you have the
seniority/experience/right to make the right decision"]
- "I disagree, but I have confidence in you as an engineer so we'll do it
your way (and I promise not to whine about it)"
Or
- "I disagree and here is why (when we bottom out our differences I promise
not to whine about it)
If quality engineers are involved then any engineering discussion which
falls into this last must, by definition, be a discussion of requirements or
some other knowledge gap (otherwise the answer would be in the first three).
At this point only discussion, not voting, can bottom this out - fix the
knowledge gap, resolve the different view of requirement and so on.
Equally however the team has to trust each other and be made up of the right
calibre of engineers - not least since going down the last route can be
expensive (like you said "no wheel spinning"); it's very important because
of its didactic properties, but it is expensive and not something we want to
spend our lives doing. This is why team membership (which Scott touches on
below) is the important question. Stupid obduracy doesn't work in this
setup.
I'm not saying, by the way, that this means that we should not be
opinionated. Just as well.
This has always happened informally in successful projects I have worked on
(including dictatorship projects). Not surprisingly, it is also pretty much
what Scott said below about Apache.
In this case my call about coding standards is "I don't care, someone,
anyone, decide and we can move on and make the code consistent (which I do
care about)". My call about team membership is that I'm pretty sure that I
agree with this proposal but I'd like a 5 minute discussion at the next team
meeting (for the learning) I'd particularly like someone who has experience
this level of formality to comment.
Rod
> From: dev-bounces at shibboleth.net [mailto:dev-bounces at shibboleth.net]
> A sort of related note is that the board wants us to document some basic
> standing procedures for dealing with granting new committers access,
> revoking access, etc. I didn't think that was unreasonable, and was going
> to suggest we adopt the methods most of the Apache projects use, which is
> mostly a "3 yes votes, 0 no votes" approach to most resolutions, and any
> no votes are worked through by requiring a justification and then
> discussing it.
>
> -- Scott
More information about the dev
mailing list