From dev-return-19404-apmail-couchdb-dev-archive=couchdb.apache.org@couchdb.apache.org Wed Nov 23 08:28:10 2011 Return-Path: X-Original-To: apmail-couchdb-dev-archive@www.apache.org Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 38524794C for ; Wed, 23 Nov 2011 08:28:10 +0000 (UTC) Received: (qmail 76119 invoked by uid 500); 23 Nov 2011 08:28:09 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 76063 invoked by uid 500); 23 Nov 2011 08:28:08 -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 76048 invoked by uid 99); 23 Nov 2011 08:28:08 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 23 Nov 2011 08:28:08 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of randall.leeds@gmail.com designates 209.85.210.180 as permitted sender) Received: from [209.85.210.180] (HELO mail-iy0-f180.google.com) (209.85.210.180) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 23 Nov 2011 08:28:03 +0000 Received: by iagz35 with SMTP id z35so1745908iag.11 for ; Wed, 23 Nov 2011 00:27:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=f4MNt2rZMmG3ZTbQoJcz8hroMcBia2FXG/3nlUF223A=; b=M4hTqk6FE7VkklUhcucidTxZ4MYK5z9OZ4VB+515kfnBQ3pCJXiH68/g4rNfph4BqL B6oT+Wt60gq5ODhWvlFHHB+i1Vgjxtpc5Ovr0HH1LW1KtltGBXpCtuqm4ovlmDxHRCGH QlOMN539YEMSkeBGnNZj8jvw5Q3FAlTNRTCK4= MIME-Version: 1.0 Received: by 10.43.65.79 with SMTP id xl15mr1737659icb.6.1322036860379; Wed, 23 Nov 2011 00:27:40 -0800 (PST) Received: by 10.42.142.4 with HTTP; Wed, 23 Nov 2011 00:27:40 -0800 (PST) In-Reply-To: References: Date: Wed, 23 Nov 2011 03:27:40 -0500 Message-ID: Subject: Re: Proposal for Intro to CouchDB Coding class From: Randall Leeds To: dev@couchdb.apache.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Wed, Nov 23, 2011 at 01:24, Joan Touzet wrote: > Hello CouchDB Developers, > > Based on an informal survey of CouchDB users who are interested in > contributing to the project, two key items tend to hold people back: > > =C2=A01. Knowing Erlang (and the CouchDB coding style) > =C2=A02. Knowing the CouchDB code base > > So I decided to further my own grad research in Education, and > contribute back to CouchDB, by volunteering to coordinate a class for > 6-20 students. > > ** I'd like to propose an Introduction to CouchDB Programming course, > kicking off January 5, 2012, and ask for support from the current devs > on this list. > > This won't be a traditional classroom course! Students themselves will > be shaping the direction of the course, the topics covered, and will be > expected to lead at least one week of online discussion. (I'll be > providing the pedagogical framework for this Collaborative Learning > model. This is my area of active research.) > > The idea is that, by the end of course (10 weeks or so), participants > will have learned enough Erlang to have basic competency, and enough > about the CouchDB code base to contribute. The "final exam" would be > completing and submitting some number of patches from the outstanding > bin of bugs in JIRA. > > ** I NEED YOUR HELP in two ways: > > =C2=A0A. Suggestions for good reference material (e.g. learnyousomeerlang= ) > =C2=A0B. Volunteers from the current devs to conduct a "guided tour" of > =C2=A0 =C2=A0 1 or more parts of the code > > The "guided tours" are the essential bits for this class to be > successful, and I'd like them as much as possible to be accurate and > accessible to newbs. These tours could take many forms: > > =C2=A0* A screencast of you talking about some code, e.g. ScreenFlow > =C2=A0* A live walkthrough over Adobe Connect video (time donated by my > =C2=A0 =C2=A0University dep't for the class) > =C2=A0* IRC-based runthrough > =C2=A0* "Ask the developer" - respond to questions about code on the clas= s > =C2=A0 =C2=A0forum > =C2=A0* You fly everyone out to your house for dinner :) Etc. > > ** If you're willing to help out, please reply on or off list and let me > know. Let's grow the contributor community! > > All the best, > -- > Joan Touzet =C2=A0| =C2=A0joant@atypical.net =C2=A0| =C2=A0wohali most ot= her places > Yay! Thanks, Joan. I think this idea is amazing and want to help however I can to make it a success. For now, consider me as volunteered for at least a couple tours. Here are some ideas for sections to tour: =C2=A0- couch_httpd and request handling =C2=A0- replicator =C2=A0- couch_index =C2=A0- couch_mrview =C2=A0- couch_btree =C2=A0- couchjs Maybe these? =C2=A0- couch_server =C2=A0- couch_stream (does this include multipart stuff?) =C2=A0- couch_config, couch-config, modules, supervision, etc... I'm sure there are a few more clean breakdowns, but that's just off the top of my head. >From that list I'm pretty comfortable covering the btree, couchjs and replicator. Maybe HTTP. -Randall