Return-Path: X-Original-To: apmail-couchdb-user-archive@www.apache.org Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id DEC289DFB for ; Tue, 8 Nov 2011 18:01:02 +0000 (UTC) Received: (qmail 47170 invoked by uid 500); 8 Nov 2011 18:01:01 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 47136 invoked by uid 500); 8 Nov 2011 18:01:01 -0000 Mailing-List: contact user-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@couchdb.apache.org Delivered-To: mailing list user@couchdb.apache.org Received: (qmail 47128 invoked by uid 99); 8 Nov 2011 18:01:01 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Nov 2011 18:01:01 +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 (nike.apache.org: domain of mikeal.rogers@gmail.com designates 209.85.161.180 as permitted sender) Received: from [209.85.161.180] (HELO mail-gx0-f180.google.com) (209.85.161.180) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 08 Nov 2011 18:00:53 +0000 Received: by ggnv5 with SMTP id v5so1119194ggn.11 for ; Tue, 08 Nov 2011 10:00:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer; bh=HZWrulHLLkgksqy0d10yboL+ckdd1EFXT0Xx41BR8LI=; b=pPdLqGMD3uQnOLRrPuiQpUDTxqtXXAv9j3UQGRhvQkcwZ7UXKCVP+29Gh/XzMBhpGj rZdKDL4qsfdbKhBBzPlmnUjamjmG4+cq3IJ98R5TYo3r+cl9fN4iOruKS+tvvGKP82u+ KFqVqg6rBHWXpjXPzXTD+Bxlo6d2r0cm9ugec= Received: by 10.101.26.11 with SMTP id d11mr3268389anj.57.1320775232526; Tue, 08 Nov 2011 10:00:32 -0800 (PST) Received: from [10.10.0.138] (67-131-100-3.dia.static.qwest.net. [67.131.100.3]) by mx.google.com with ESMTPS id r5sm6204865anl.13.2011.11.08.10.00.31 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 08 Nov 2011 10:00:31 -0800 (PST) Content-Type: text/plain; charset=iso-8859-1 Mime-Version: 1.0 (Apple Message framework v1251.1) Subject: Re: nodejs couchapp From: Mikeal Rogers In-Reply-To: Date: Tue, 8 Nov 2011 09:59:49 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <2C65B131-0A72-4F45-936E-6CE413CFFC1C@gmail.com> References: <4EB80D11.1080504@gmail.com> <4EB95D32.7010505@gmail.com> <48DFA539-4203-41F9-AB4A-D6DDEC9763BD@gmail.com> To: user@couchdb.apache.org X-Mailer: Apple Mail (2.1251.1) X-Virus-Checked: Checked by ClamAV on apache.org On Nov 8, 2011, at November 8, 20119:41 AM, Ryan Ramage wrote: > If you want a feel where you can go with couchapps, checkout Max > Ogden's datacouch project: >=20 > https://github.com/maxogden/datacouch >=20 > While not purely couchapp, it shows the way on how to move past the > boundaries of the traditional couchapp model. >=20 > While Mikeal may be tired of doing backflips, I don't mind. The first > couple of backflips you might hit your head, but then they become easy > and you might find them invigorating as well. :) It's a tradeoff. Sometimes it's worth the backflips. For some use cases = you have no choice, writing an offline app you have many of the same = constraints so you might as well write offline apps as couchapps. Sometimes it's easy to forget how much of building couchapps is simple = because CouchDB is simple, and writing an app in node.js with CouchDB as = a datastore is still quite simple even if it's a little more complicated = than a couchapp and as you start doing those backflips it might be = simpler to break out of the couchapp model and keep CouchDB as a backend = store. -Mikeal >=20 > Ryan >=20 > On Tue, Nov 8, 2011 at 10:02 AM, Mikeal Rogers = wrote: >>=20 >>=20 >> On Nov 8, 2011, at November 8, 20118:47 AM, john.tiger wrote: >>=20 >>> On 11/07/11 15:14, Mikeal Rogers wrote: >>>> I wrote node-couchapp and i don't even remember what those flags = did. i have since changed the command line api. >>>>=20 >>>> couchapp push app.jshttp://localhost:5984/db >>>=20 >>> Thks. Wow, this is so simple and works great. >>>=20 >>> Now a question: since making a couch app is so easy, why are not = more people using it ? Are couch apps limited versus using a full MVC = backend (ie Express, Strata, ..) >>=20 >> There are definitely limitations, pulling info in to the page that = isn't in your database isn't doable, _list and _show are pretty slow so = you're limited to single page apps if you want to keep things really = fast. >>=20 >> For simple things, nothing is simpler than a couchapp, but as your = app gets more complex you're going to start doing backflips to get it to = fit in to the couchapp model. >>=20 >> -Mikeal