You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@couchdb.apache.org by Kamyar Navidan <ka...@gmail.com> on 2010/08/23 02:20:37 UTC

Ideas for Improvment

Hi,

I have been using and testing CouchDB since 0.7 days. Nowadays as it gets
more mature and feature rich I find myself much more interested in CouchDB.
I have some general ideas and suggestions that in my opinion may improve
many aspects of usage of CouchDB. Here goes:

   - Migrating CouchDB Wiki from Moin Moin to Pages Couchapp and hosting it
   on couchone.com server. Imagine always having the updated wiki on your
   machine.
   - More transparent way for replicating your couchapps. Right now (at
   least to my understanding) you should go to Futon or using curl for this.
   This is very essential since we may have days of millions of Couches on
   Android devices ahead of us. I think it would be possible to create
   a reusable sync/replicate evently widget (like account and profile) for
   this. My knowledge of couchapp development and Evently is a little above
   newbie level right now. I start hacking it myself but I don't expect to come
   to something useful very soon.
   - Make a web based version of Couchapp. Something like Futon but higher
   level and instead of working from file-system directory structure using a
   json document from Couchdb/web. There may be situations in which you don't
   have access to your machine, this way you can always create/edit couchapps.
   (Some of you may remember the awesomeness of through the web interface of
   Zope in the olden days.)
   - Having portable view servers. I am not sure if it is possible at all
   but having a view server code/executable as a another document in database
   would lower the barrier of entry for none javascript programmer. I
   personally used Mikael Rogers excellent python view server for a while until
   I realized I can't make all the none techy users go through the installation
   of view server on their machines. Something like a _view_servers db for each
   CouchDB server which has documents like this:

{"_id":"python",
 "_attachments":{
          "win32" : {
                  "file" : "viewserver.py",
                  "command" "python.exe %file%"
                   },
          "linux" : ....
          "mac"   : ....
          },
}

      and in configuration something like this:

[query_servers]
python = _view_server/python/win32


       Or we can attach the viewserver code/executable to each design doc
and make it self-sufficient. I wish I knew more Erlang to try this out by
myself.

   - This one is more of a question than idea. The ability for your open
   couchapps to replicate through the web may be good for your global memetic
   domination but what is the actual business model for this kind of
   development? You cannot charge people for it, you can't have ads,... . The
   only solutions that I can think of is either having a hosting business for
   CouchDB or make design docs somehow encrypted and only workable with a
   licence that you charge user for it.


Thanks for taking time to read this and hope to get your expert opinions on
these matters.

Regards,

Kamyar Navidan