You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by bi...@apache.org on 2011/10/25 20:15:00 UTC

svn commit: r1188844 - in /incubator/accumulo/site/trunk: ./ content/accumulo/ content/accumulo/governance/ templates/

Author: billie
Date: Tue Oct 25 18:14:59 2011
New Revision: 1188844

URL: http://svn.apache.org/viewvc?rev=1188844&view=rev
Log:
ACCUMULO-70 added information to web page (disclaimer, governance, getting involved, source code, builds, issues, people)

Added:
    incubator/accumulo/site/trunk/content/accumulo/get_involved.mdtext
    incubator/accumulo/site/trunk/content/accumulo/governance/
    incubator/accumulo/site/trunk/content/accumulo/governance/consensusBuilding.mdtext
    incubator/accumulo/site/trunk/content/accumulo/governance/lazyConsensus.mdtext
    incubator/accumulo/site/trunk/content/accumulo/governance/voting.mdtext
    incubator/accumulo/site/trunk/content/accumulo/source.mdtext
Modified:
    incubator/accumulo/site/trunk/   (props changed)
    incubator/accumulo/site/trunk/content/accumulo/index.mdtext
    incubator/accumulo/site/trunk/templates/sidenav.mdtext

Propchange: incubator/accumulo/site/trunk/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Tue Oct 25 18:14:59 2011
@@ -0,0 +1 @@
+.project

Added: incubator/accumulo/site/trunk/content/accumulo/get_involved.mdtext
URL: http://svn.apache.org/viewvc/incubator/accumulo/site/trunk/content/accumulo/get_involved.mdtext?rev=1188844&view=auto
==============================================================================
--- incubator/accumulo/site/trunk/content/accumulo/get_involved.mdtext (added)
+++ incubator/accumulo/site/trunk/content/accumulo/get_involved.mdtext Tue Oct 25 18:14:59 2011
@@ -0,0 +1,90 @@
+Title: Get Involved
+Notice:    Licensed to the Apache Software Foundation (ASF) under one
+           or more contributor license agreements.  See the NOTICE file
+           distributed with this work for additional information
+           regarding copyright ownership.  The ASF licenses this file
+           to you under the Apache License, Version 2.0 (the
+           "License"); you may not use this file except in compliance
+           with the License.  You may obtain a copy of the License at
+           .
+             http://www.apache.org/licenses/LICENSE-2.0
+           .
+           Unless required by applicable law or agreed to in writing,
+           software distributed under the License is distributed on an
+           "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+           KIND, either express or implied.  See the License for the
+           specific language governing permissions and limitations
+           under the License.
+
+You don't need to be a software developer to contribute to 
+Apache Accumulo. To be successful this project 
+requires a huge range of different skills, levels of involvement and degrees of 
+technical expertise. So, if you want to get involved in Apache Accumulo, there 
+is almost certainly a role for you. 
+
+We are looking for people to:
+
+  - provide feedback
+  - write or update documentation
+  - help new users
+  - recommend the project to others
+  - test the code and report bugs
+  - fix bugs
+  - give us feedback on required features
+  - write and update the software
+  - create artwork
+  - translate to different languages
+  - anything you can see that needs doing
+
+All of these contributions help to keep a project active and strengthen 
+the community. The project team and the broader community will 
+therefore welcome and encourage participation, and attempt to make it 
+as easy as possible for people to get involved. 
+
+## Mailing lists
+
+Your first engagement with the project should be to subscribe to our
+[mailing lists][1].
+
+## Decision Making
+
+The most important thing about engaging with any Apache project is that everyone
+is equal. All people with an opinion are entitled to express that opinion and, where 
+appropriate, have it considered by the community.
+
+To some the idea of having to establish consensus in a large and distributed team 
+sounds inefficient and frustrating. Don't despair though, The Apache Way has a
+set of simple processes to ensure things proceed at a good pace.
+
+In ASF projects we don't like to vote. We reserve that for the few things that need 
+official approval for legal or process reasons (e.g. a release or a new committer). 
+Most of the time we work with the consensus building techniques documented below.
+
+
+### Lazy Consensus
+
+[Lazy consensus][2] is the first, and possibly the most important, consensus building 
+tool we have. Essentially lazy consensus means that you don't need to get explicit
+approval to proceed, but you need to be prepared to listen if someone objects.
+
+### Consensus Building
+
+Sometimes lazy consensus is not appropriate. In such cases it is necessary to
+make a proposal to the mailing list and discuss options. There are mechanisms
+for quickly showing your support or otherwise for a proposal and 
+[building consensus][3] amongst the community.
+
+Once there is a consensus people can proceed with the work under the [lazy 
+consensus][2] model.
+
+### Voting
+
+Occasionally a "feel" for consensus is not enough. Sometimes we need to 
+have a measurable consensus. For example, when [voting][4] in new committers or 
+to approve a release. 
+
+
+  [1]: /accumulo/mailing_list.html
+  [2]: /accumulo/governance/lazyConsensus.html
+  [3]: /accumulo/governance/consensusBuilding.html
+  [4]: /accumulo/governance/voting.html
\ No newline at end of file

Added: incubator/accumulo/site/trunk/content/accumulo/governance/consensusBuilding.mdtext
URL: http://svn.apache.org/viewvc/incubator/accumulo/site/trunk/content/accumulo/governance/consensusBuilding.mdtext?rev=1188844&view=auto
==============================================================================
--- incubator/accumulo/site/trunk/content/accumulo/governance/consensusBuilding.mdtext (added)
+++ incubator/accumulo/site/trunk/content/accumulo/governance/consensusBuilding.mdtext Tue Oct 25 18:14:59 2011
@@ -0,0 +1,66 @@
+Title:     Consensus Building
+Notice:    Licensed to the Apache Software Foundation (ASF) under one
+           or more contributor license agreements.  See the NOTICE file
+           distributed with this work for additional information
+           regarding copyright ownership.  The ASF licenses this file
+           to you under the Apache License, Version 2.0 (the
+           "License"); you may not use this file except in compliance
+           with the License.  You may obtain a copy of the License at
+           .
+             http://www.apache.org/licenses/LICENSE-2.0
+           .
+           Unless required by applicable law or agreed to in writing,
+           software distributed under the License is distributed on an
+           "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+           KIND, either express or implied.  See the License for the
+           specific language governing permissions and limitations
+           under the License.
+
+In some cases there is no obvious path to take, or you might be a new community, 
+or a new member of an existing community. In these cases people will often 
+need to build consensus by making proposals and eliciting responses.
+
+We want to avoid unnecessary discussion and the creation of significant
+amounts of unnecessary mail that everyone in the community needs to read. 
+That is not to say that we want to avoid constructive discussion. This is 
+the lifeblood of a successful project. However, many ASF projects adopt a 
+shorthand notation for showing support, or otherwise, for a proposal.
+
+## Expressing support (or otherwise)
+
+The notation used is "+1", "-1" and "0". It's also common to see "+0" and "-0".
+
+So, what do these notations mean?
+
+  - +1 means "I agree with this and will help make it happen"
+  - +0 means "I agree with this but probably won't make it happen, so my 
+opinion is not that important"
+  - -0 means "I don't agree with this, but I'm offering no alternative so 
+my opinion is not that important"
+  - -1 means "I don't agree and I am offering an alternative that I am able 
+to help implement"
+
+Many people will use fractions to indicate the strength of their feelings,
+ e.g. "+0.5". Some will even indicate this is a "no brainer" with something 
+like "+1000".
+
+The important thing is that this is not an exact science. It's just a shorthand 
+way of communicating strength of feeling.
+
+## Consensus Building is Not Voting
+
+The confusing thing about this notation is that it is the same notation
+used in a formal vote. Knowing when something is a vote and when it is a 
+preference is important. It's easy to tell though, if the subject does not have 
+"[Vote]" at the start then it's just an opinion. We try not to call votes,
+consensus building is much more inclusive.
+
+The reasons for this notation being common is 
+that when someone wants to summarise a discussion thread they can mentally 
+add up the strength of feeling of the community and decide if there is consensus
+or not.
+
+Once there is a clear consensus members of the community can proceed with 
+the work under the [lazy consensus][1] model.
+
+  [1]: /accumulo/governance/lazyConsensus.html
\ No newline at end of file

Added: incubator/accumulo/site/trunk/content/accumulo/governance/lazyConsensus.mdtext
URL: http://svn.apache.org/viewvc/incubator/accumulo/site/trunk/content/accumulo/governance/lazyConsensus.mdtext?rev=1188844&view=auto
==============================================================================
--- incubator/accumulo/site/trunk/content/accumulo/governance/lazyConsensus.mdtext (added)
+++ incubator/accumulo/site/trunk/content/accumulo/governance/lazyConsensus.mdtext Tue Oct 25 18:14:59 2011
@@ -0,0 +1,71 @@
+Title:     Lazy Consensus
+Notice:    Licensed to the Apache Software Foundation (ASF) under one
+           or more contributor license agreements.  See the NOTICE file
+           distributed with this work for additional information
+           regarding copyright ownership.  The ASF licenses this file
+           to you under the Apache License, Version 2.0 (the
+           "License"); you may not use this file except in compliance
+           with the License.  You may obtain a copy of the License at
+           .
+             http://www.apache.org/licenses/LICENSE-2.0
+           .
+           Unless required by applicable law or agreed to in writing,
+           software distributed under the License is distributed on an
+           "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+           KIND, either express or implied.  See the License for the
+           specific language governing permissions and limitations
+           under the License.
+
+The concept of "Lazy Consensus" is very important in our project. Lazy
+Consensus means that when you are convinced that you know what the community
+would like to see happen you can simply assume that you already have consensus
+and get on with the work. You don't have to insist people discuss and/or
+approve your plan, and you certainly don't need to call a vote to get approval.
+You just assume you have the community's support unless someone says otherwise.
+
+We have a time machine (Subversion), this means that as long as you commit 
+(or submit patches) early and often the community has plenty of opportunity 
+to indicate disapproval. If you believe the community will support your action
+you can operate on lazy consensus as long as you are prepared to roll back 
+any work should a valid objection is raised.
+
+## Avoiding Unnecessary Discussion
+
+The key thing about lazy consensus is that it's easier for people to agree,
+by doing nothing, than it is to object, which requires an
+alternative to be proposed. This has two effects, firstly people are less 
+likely to object for the sake of it and secondly it cuts down on the amount 
+of unnecessary mail traffic and discussion.
+
+Lazy consensus means we can avoid waiting for a community based decision 
+before proceeding. However, it does require everyone who cares for the health
+of the project to watch what is happening, as it is happening. Objecting too 
+far down the road will cause upset, but objecting (or asking for clarification 
+of intent) early is likely to be greeted with relief that someone is watching
+and cares.
+
+## Stating Lazy Consensus
+
+Sometimes a member of the community will believe a specific action is the correct 
+one for the community but are not sure enough to proceed with the work under the 
+lazy consensus model. In these circumstances they can state Lazy Consensus is in 
+operation.
+
+What this means is that they make a proposal and state that they will start 
+implementing it in 72 hours unless someone objects. 72 hours is chosen because
+it accounts for different timezones and non-apache commitments.
+
+In this approach the original proposal is not insisting that there is a discussion
+around their proposal, nor are they requesting that the community explicitly 
+supports their actions. However, this differs from assuming lazy consensus 
+since it allows space and time to [express support or objections][1] and corrections to 
+the proposal before work begins. 
+
+## Silence is consent
+
+People may choose to indicate their support for the actions taken with a +1 
+mail - quick and easy to read and reassuring for the implementer. However, 
+remember, in a lazy consensus world silence is the equivalent to support. This
+can take some time to get used to.
+
+  [1]: /accumulo/governance/consensusBuilding.html
\ No newline at end of file

Added: incubator/accumulo/site/trunk/content/accumulo/governance/voting.mdtext
URL: http://svn.apache.org/viewvc/incubator/accumulo/site/trunk/content/accumulo/governance/voting.mdtext?rev=1188844&view=auto
==============================================================================
--- incubator/accumulo/site/trunk/content/accumulo/governance/voting.mdtext (added)
+++ incubator/accumulo/site/trunk/content/accumulo/governance/voting.mdtext Tue Oct 25 18:14:59 2011
@@ -0,0 +1,106 @@
+Title:     Voting
+Notice:    Licensed to the Apache Software Foundation (ASF) under one
+           or more contributor license agreements.  See the NOTICE file
+           distributed with this work for additional information
+           regarding copyright ownership.  The ASF licenses this file
+           to you under the Apache License, Version 2.0 (the
+           "License"); you may not use this file except in compliance
+           with the License.  You may obtain a copy of the License at
+           .
+             http://www.apache.org/licenses/LICENSE-2.0
+           .
+           Unless required by applicable law or agreed to in writing,
+           software distributed under the License is distributed on an
+           "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+           KIND, either express or implied.  See the License for the
+           specific language governing permissions and limitations
+           under the License.
+
+Occasionally a "feel" for consensus is not enough. Sometimes we need to have a
+measurable consensus. For example, when voting in new committers or to approve a
+release. 
+
+## Preparing for a Vote
+
+Before calling a vote it is important to ensure that the community is given time to
+discuss the upcoming vote. This will be done by posting an email to the list
+indicating the intention to call a vote and the options available. By the time a
+vote is called there should already be [consensus in the community][1]. The vote 
+itself is, normally, a formality.
+
+## Calling a Vote
+
+Once it is time to call the vote a mail is posted with a subject starting with
+"[VOTE]". This enables the community members to ensure they do not miss an important
+vote thread. It also indicates that this is not consensus building but a formal
+vote. The initiator is responsible for the vote. That means also to count the votes
+and present the results. Everyone has 1 vote.
+
+### Casting Your Vote
+
+The notation used in voting is:
+
++1 (means I vote positive)
+   You can say why you vote positive but it's not a must-have.
+
+ 0 (means I have no strong opinion, aka abstention)
+
+-1 (means I vote negative because of the following reason)
+   Yes, you must support your objection and provide an alternative course of action
+   that you are willing and able to implement (where appropriate).
+
+#### Example for a vote mail:
+
+    Address: private@
+    Subject: [VOTE] John Doe should become a regular committer
+    
+    Text:
+    "I would like to propose to vote in John Doe as committer. John has showed in
+    the last months that he has the skills and oversight for improving things (think
+    about the last UI change of the "Find" dialog)."
+    
+    +1 (means I vote for John)
+     0 (means I'm not for John but also not against to vote him in)
+    -1 (means I'm not for John because of the following reason(s):
+    
+    Voting time frame is finished 72 hours from now until June 30, 12:00 PM UTC.
+
+#### Example for a reply mail:
+
+    Text:
+    +1
+    
+    I like his work and want him to stay and to go on with his good improvements.
+
+
+#### Example for a result mail:
+
+    Subject: [VOTE][RESULTS] John Doe should become a regular committer
+    
+    Text:
+    Vote started Thu, Jun 27, 2011 at 12:00 PM UTC, voting is now closed.
+    
+    Voting results:
+    
+    --- Numbers ---
+    
+    +1: 6
+     0: 0
+    -1: 0
+    
+    --- Details ---
+    
+    +1 John
+    +1 Jane
+    +1 David
+    +1 Dolores
+    +1 Carl
+    +1 Chris
+
+[See here for more information][2] <br>
+[See here for more mail templates][3]
+
+
+  [1]: http://incubator.apache.org/accumulo/governance/consensusBuilding.html
+  [2]: http://apache.org/foundation/voting.html
+  [3]: http://community.apache.org/newcommitter.html
\ No newline at end of file

Modified: incubator/accumulo/site/trunk/content/accumulo/index.mdtext
URL: http://svn.apache.org/viewvc/incubator/accumulo/site/trunk/content/accumulo/index.mdtext?rev=1188844&r1=1188843&r2=1188844&view=diff
==============================================================================
--- incubator/accumulo/site/trunk/content/accumulo/index.mdtext (original)
+++ incubator/accumulo/site/trunk/content/accumulo/index.mdtext Tue Oct 25 18:14:59 2011
@@ -29,6 +29,14 @@ projects have implemented aspects of thi
 and [Cassandra][7].  Accumulo began its development in 2008 and became an [Apache 
 Podling][8] in 2011.
 
+## Disclaimer
+Apache Accumulo is an effort undergoing incubation at The Apache Software Foundation (ASF), 
+sponsored by the Apache Incubator.  Incubation is required of all newly accepted projects 
+until a further review indicates that the infrastructure, communications, and decision 
+making process have stabilized in a manner consistent with other successful ASF projects. 
+While incubation status is not necessarily a reflection of the completeness or stability of 
+the code, it does indicate that the project has yet to be fully endorsed by the ASF.
+
 [1]: http://labs.google.com/papers/bigtable.html "BigTable"
 [2]: http://hadoop.apache.org/                   "Hadoop"
 [3]: http://zookeeper.apache.org                 "Zookeeper"

Added: incubator/accumulo/site/trunk/content/accumulo/source.mdtext
URL: http://svn.apache.org/viewvc/incubator/accumulo/site/trunk/content/accumulo/source.mdtext?rev=1188844&view=auto
==============================================================================
--- incubator/accumulo/site/trunk/content/accumulo/source.mdtext (added)
+++ incubator/accumulo/site/trunk/content/accumulo/source.mdtext Tue Oct 25 18:14:59 2011
@@ -0,0 +1,66 @@
+Title: Accumulo Source Code & Developers Guide
+Notice:    Licensed to the Apache Software Foundation (ASF) under one
+           or more contributor license agreements.  See the NOTICE file
+           distributed with this work for additional information
+           regarding copyright ownership.  The ASF licenses this file
+           to you under the Apache License, Version 2.0 (the
+           "License"); you may not use this file except in compliance
+           with the License.  You may obtain a copy of the License at
+           .
+             http://www.apache.org/licenses/LICENSE-2.0
+           .
+           Unless required by applicable law or agreed to in writing,
+           software distributed under the License is distributed on an
+           "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+           KIND, either express or implied.  See the License for the
+           specific language governing permissions and limitations
+           under the License.
+
+##  Source Code
+
+Accumulo source code is maintained using [Apache Subversion][subversion] version control 
+([browse][viewvc]|[checkout][svnloc]).  It builds with [Apache Maven][maven].
+
+## Developers Guide
+
+### Building code
+To check out the code:
+
+    svn co https://svn.apache.org/repos/asf/incubator/accumulo/trunk/
+
+To build the code:
+
+    mvn package && mvn assembly:single
+
+This will create a file accumulo-*-incubating-SNAPSHOT-dist.tar.gz in the target directory.
+
+### Continuous Integration
+
+Accumulo uses [Jenkins][jenkins] for automatic builds.
+
+* [Trunk][trunkbuild]
+* [1.3 Branch][13build]
+
+### Coding Practices
+
+* License Header: Always add the current ASF license header as described in [ASF Source Header][srcheaders].
+* Trailing Whitespaces: Remove all trailing whitespaces. Eclipse users can use Source->Cleanup option to accomplish this.
+* Indentation: Use 2 space indents and never use tabs!
+* Line wrapping: Use 160-column line width for Java code and Javadoc.
+* Author Tags: Do not use Author Tags. The code is developed and owned by the community. 
+
+### Eclipse Configuration Tips
+
+* Download Eclipse [formatting and style guides for Accumulo][styles].
+* Import Formatter: Preferences > Java > Code Style >  Formatter and import the Eclipse-Accumulo-Codestyle.xml downloaded in the previous step. 
+* Import Template: Preferences > Java > Code Style > Code Templates and import the Eclipse-Accumulo-Template.xml. This templates adds the ASF header and so on for new code.
+
+[subversion]: http://subversion.apache.org/
+[maven]: http://maven.apache.org/
+[viewvc]: http://svn.apache.org/viewvc/incubator/accumulo/
+[svnloc]: https://svn.apache.org/repos/asf/incubator/accumulo/trunk/
+[srcheaders]: http://www.apache.org/legal/src-headers.html
+[styles]: https://svn.apache.org/repos/asf/incubator/accumulo/trunk/contrib/
+[jenkins]: http://jenkins-ci.org/
+[trunkbuild]: https://builds.apache.org/job/Accumulo-Trunk/
+[13build]: https://builds.apache.org/job/Accumulo-1.3.x/
\ No newline at end of file

Modified: incubator/accumulo/site/trunk/templates/sidenav.mdtext
URL: http://svn.apache.org/viewvc/incubator/accumulo/site/trunk/templates/sidenav.mdtext?rev=1188844&r1=1188843&r2=1188844&view=diff
==============================================================================
--- incubator/accumulo/site/trunk/templates/sidenav.mdtext (original)
+++ incubator/accumulo/site/trunk/templates/sidenav.mdtext Tue Oct 25 18:14:59 2011
@@ -5,10 +5,14 @@
   - [Features](/accumulo/notable_features.html)
 
 # Community
+ - [Get Involved](/accumulo/get_involved.html)
  - [Mailing Lists](/accumulo/mailing_list.html)
+ - [People](https://issues.apache.org/jira/secure/ConfigureReport.jspa?versionId=-2&selectedProjectId=12312121&reportKey=com.sourcelabs.jira.plugin.report.contributions%3Acontributionreport)
+
+# Development
+ - [Source Code](/accumulo/source.html)
  - [Issues](https://issues.apache.org/jira/browse/accumulo)
-<!--  - Get Involved -->
-<!--  - People -->
+ - [Builds](https://builds.apache.org/job/Accumulo-Trunk)
 
 # Documentation
  - [Manual v1.3](/accumulo/user_manual_1.3-incubating)