{"id":337,"date":"2007-07-21T10:15:03","date_gmt":"2007-07-21T14:15:03","guid":{"rendered":"http:\/\/www.dr-chuck.com\/wordpress\/?p=337"},"modified":"2011-12-17T12:23:19","modified_gmt":"2011-12-17T16:23:19","slug":"voting-in-sakai","status":"publish","type":"post","link":"https:\/\/www.dr-chuck.com\/csev-blog\/2007\/07\/voting-in-sakai\/","title":{"rendered":"Voting in Sakai"},"content":{"rendered":"<p>Just a review of the way we vote (like Apache) on decisions that need to be made.   Vote have two purposes: (a) make a decision and (b) stimulate disucssion on complex issues.<br \/>\nFirst I will review how I have seen Apache (Pluto in particular) operate.<br \/>\nIn Apache only committer votes count.<br \/>\nIn practice in Apache &#8211; generally the trend is toward forward progress.  Working code that does not break stuff is generally allowed to move forward.  When a proposal is voted down &#8211; usually it means something is &#8220;broken&#8221; or will break something.  Generally when something is shown or discovered to be broken or is a generally bad idea, the proposers don&#8217;t even wait for more -1 votes &#8211; they simply withdraw the proposal and go back and fix what they have.<br \/>\nIn the case where there is one or a small number of -1 votes &#8211; there is generally four cases: (1) there is really something wrong that is quickly relaized by the whole goup in short disucssion and the proposal is withdrawn, (2)  it turns out to be a misunderstanding or something that a quick discussion resolves and the -1 vote turns to a +1, (3) there is some technical ickiness in the approach &#8211; the -1 voter volunteers to quickly help fix the problem in a week or so, or (4) it is an interesting opinion from someone not really in the mainstream and after some examination &#8211; it is ignored and things move forward.<br \/>\nIn Sakai, this is the rough procedure:<br \/>\nIf it comes down to a &#8220;count&#8221; &#8211; the votes that &#8220;count&#8221; are the folks with long-term commitment to the particular element in question.<br \/>\nIn Sakai the &#8220;project team&#8221; is more than just developers &#8211; it includes designers, usability experts, developers, etc.  The key is that the counted vote is amongst the people with a history of and plans to continue directly working on the particular part of Sakai that is being discussed.<br \/>\nAny one in the community is very much encouraged to vote and comment and the project team of the element in question are encouraged to listen to and strongly consider the community votes.<br \/>\nNegative votes should include what it would take to make the vote positive.<br \/>\nIt is the responsibility of the project lead and project team for the component to evaluate the votes\/comments, etc and make the &#8220;wise&#8221; choice given the discussion.<br \/>\nSummary<br \/>\nWe want more votes to happen and more exploratory development to happen in branches with votes before the merge.  This gives the community a better chance of catching things that might destabilize the product or cause harm in other ways.<br \/>\nThis approach is designed to give project teams a safe way to have discussion about issues and get community input while maintaining the project team&#8217;s control over their own destiny.<br \/>\nWithout the rule that the project team gets the final say, it tacitly encourages project teams to quietly make their changes in trunk and then we all get surprised at release time.<br \/>\nWe have a number of examples in our past history of these &#8220;trunk release surprises&#8221; &#8211; they are not so much fun &#8211; because we are faced with the decision &#8220;do we keep the flawed stuff we have in trunk &#8211; or go way back and lose all the neat new features&#8221;.<br \/>\nSo to encourage open discussion it is important to remember that people outside the project team do not have veto power with a single negative vote.<br \/>\nFolks who want things done differently should get involved in producing the solutions to problems &#8211; not just sending out -1 votes when a vote call is being done.<br \/>\nWe have to remember tht project teams often spend weeks or months of work to get something working well enough in a branch to propose a vote.  When the work is complete and being voted on &#8211; it can be very costly to delay the merge of the work significantly because as time passes the merge becomes harder and harder.  So we need to make sure that we have a solid reason to tell a project team to &#8220;go back to the drawing board&#8221;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Just a review of the way we vote (like Apache) on decisions that need to be made. Vote have two purposes: (a) make a decision and (b) stimulate disucssion on complex issues. First I will review how I have seen Apache (Pluto in particular) operate. In Apache only committer votes count. In practice in Apache [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-337","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/posts\/337","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/comments?post=337"}],"version-history":[{"count":1,"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/posts\/337\/revisions"}],"predecessor-version":[{"id":2420,"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/posts\/337\/revisions\/2420"}],"wp:attachment":[{"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/media?parent=337"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/categories?post=337"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dr-chuck.com\/csev-blog\/wp-json\/wp\/v2\/tags?post=337"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}