Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 25836 invoked from network); 11 Feb 2009 06:59:27 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 11 Feb 2009 06:59:27 -0000 Received: (qmail 85516 invoked by uid 500); 11 Feb 2009 06:59:26 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 85477 invoked by uid 500); 11 Feb 2009 06:59:26 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 85466 invoked by uid 99); 11 Feb 2009 06:59:26 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 10 Feb 2009 22:59:26 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of paul.joseph.davis@gmail.com designates 209.85.132.248 as permitted sender) Received: from [209.85.132.248] (HELO an-out-0708.google.com) (209.85.132.248) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 11 Feb 2009 06:59:18 +0000 Received: by an-out-0708.google.com with SMTP id c37so37378anc.5 for ; Tue, 10 Feb 2009 22:58:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=3SAFQdJ1Z1EEYDmtcAtFHE0zs/2t5alG/k+lieESNrk=; b=udpXIC21IBS9cvgXUYJnvERLCxLtnEqUC3jHdhmjgddDUH5rtoB9vSHr5RqQn5Dd8V FXxscKlOSckzd3XxmjBY7tsCc6khDK3pH+tu1mGH8ZdM4wIc/BUJiBkBPj3AgQfd4hIz bFKlZZVV70Ww/vquB6VhfmE1mNGuaMOCX1Xew= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=oSSsoqvqoxzHGqn8/kc1z0oL9V6+hC6r6hWDJlTgpOFrQqAAv7Vo9PVxeooWQbumJm BeGLOVsBvvTJ6mjvSi4IAs0nQCewxXtaUulnMwHY+r/Ai1Dtw05b3iMOR0FkbB9a1nMl A7Lr8kxetYCjADVchsDtNwU52yy1TFpRvtBGw= MIME-Version: 1.0 Received: by 10.100.5.16 with SMTP id 16mr218959ane.146.1234335536258; Tue, 10 Feb 2009 22:58:56 -0800 (PST) In-Reply-To: <56a83cd00902102127w72bd7edesdee75394f243724f@mail.gmail.com> References: <56a83cd00902102127w72bd7edesdee75394f243724f@mail.gmail.com> Date: Wed, 11 Feb 2009 01:58:56 -0500 Message-ID: Subject: Re: Helping out From: Paul Davis To: dev@couchdb.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org On Wed, Feb 11, 2009 at 12:27 AM, David Van Couvering wrote: > Hello. I've been following CouchDB from the sidelines for a while but > haven't been able to put much time into it. > > Recently, however, Sun laid me off, and I thought this would be a good > opportunity to get a little more engaged. > > No better way, IMHO, than to help out with the project. FYI, I'm already a > committer to Apache Derby, although I haven't been active there in the past > few years. > > I was looking at your road map and it looked like you want to get a lot of > documentation written. I was thinking that would be a great way for me to > start learning CouchDB. Is there a specific document that you would like to > me to try my hand at? Also, what are your processes, technologies and > standards around documentation? > > I can also start poking around at your bug list and perhaps offer some > patches to get my feet wet. Is there anything in particular that you would > like someone to focus on? I don't have an Erlang background, although I'm > interested in learning. My background is server-side Java and databases, > for the most part. > > I look forward to hearing from you. Meanwhile I'll try to get a build going > and see how that goes. > > All the best, > > David > > -- > David W. Van Couvering > http://davidvancouvering.blogspot.com > David, It's awesome to hear your interest especially given your recent situation. Re: Documentation As far as I'm aware the only guidelines in terms of documentation are to put things on the wiki. I would say that if a specific section of CouchDB interests you, start learning the code base from that aspect and add good wiki information on it. I know that I, for one, am not the most vigilant in keeping things in sync. Another aspect to documentation would also be documenting the Erlang documentation best practices. It doesnt sound as sexy, but getting a good set of rules for native Erlang documentation would be a Good Thing ™. There have been attempts at getting autogenerated docs. Having a good distillation of rules as well as a working build integration with the website would be an awesome advancement. Re: Patches The two biggest suggestions I have would be to start reading code via the *_httpd_*.erl sources. In terms of behavior, these have the most documentation as well as being a very logical root point to start tracing code paths. If you have something that tickles your fancy, its fun to follow an HTTP request all the way to disk. I took a shining to view generation and ended up reading through the btree code. There's lots of the seductive, "No fucking way it can be this easy" type of code that makes the internals fun to read through. My other suggestion is fairly closely related. Start walking through the list of bugs that are blocking for 0.9 and see what you're comfortable dealing with. I'd definitely suggest adding comments to bugs or popping on IRC if you find something approachable. JIRA is a PITA when it comes to assigning things, so I spend a good chunk of my time trying to remember if someone on the ML or IRC claimed progress or on going work. For reference, Jan has an awesome page setup that will get you the list of blocking issues for 0.9 at [1]. Hopefully he'll keep it updated beyond the 0.9 release. [1] http://jan.prima.de/fuckjira.html HTH and welcome to the community, Paul Davis