Hi folks, GSOC[1][2] registration for ASF closes this weekend, and we'd like to get some proposals into it, viz http://community.apache.org/gsoc.html from last year.
If you reply, please do so just to the dev@ list -- note I BCC'd users@ for some ideas. I've got a few suggestions to get the ball rolling, with numbers where taken from the future features list: https://gist.github.com/rnewson/2387973 6. implement a Domain-Specific Language to run within the Erlang VM, to support native speed filtering, validation, and indexing in addition to the current in-built JS and erlang ones. Maybe something that includes http://jsonselect.org/ 8/9. Rewire CouchDB's HTTP layer to support websockets and spdy. I think this implies switching to cowboy, this could be too messy. 12. Extend CouchDB's query model (e.g. https://developers.google.com/chart/interactive/docs/querylanguage) to support a richer syntax. 13/14. Implement partial reads and updates of documents, Make the javascript view engine faster. Could include v8 bindings, different / parallel communication approaches between erlang and javascript worlds, avoiding reparsing JSON roundtrips, and make it faster than the current spidermonkey implementation. Implement external storage of attachments and appropriate HTTP API hooks incl replication to allow hosting attachments outside the .couch files, either on local storage, or in cloud blob storage (S3, azure etc). Implement a view development sandbox, where you can easily prototype with a sub-set of documents without long build times. Add an optional HTTP compression layer to CouchDB. It would be really cool if you could do the compression during doc update (or view creation or something) so that it can be served directly next time. See https://github.com/lgerbarg/couchdb/tree/gzip-support for a prior implementation or https://gist.github.com/archaelus/76455 for a file-based approach, and http://visualstart.blogspot.co.at/2012/02/mochiweb-erlang-and-gzip.html for some other ideas. Develop a plugin API & rework the authentication layer to allow plugging in ErLDAP, nodejs with EveryAuth or PassportJS or in fact anything you like. Extend geocouch and/or couchdb with some of Volker's ideas (cue Volker). Or stuff like quadtrees, geohashes or hilbert curves. Finally, if you are interested in being a mentor, please speak up! A+ Dave [1]: http://www.google-melange.com/gsoc/homepage/google/gsoc2013 [2]: https://groups.google.com/forum/?fromgroups=#!topic/google-summer-of-code-discuss/yYM2ru4bTeo
