You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@couchdb.apache.org by Nitin Borwankar <nb...@gmail.com> on 2013/09/14 23:12:34 UTC

IPython Notebook and CouchDB

Hello all,

It's been a while since I posted here - rumors of my demise have been
greatly exaggerated and are being spread by evil munchkin bacon-hating
trolls.

IPython Notebook appears very useful and relevant to CouchDB enthusiasts (
http://ipython.org/notebook ). Never bury the lede they told me :-)

Originally created to share reproducible research, by creating a
Mathematica-like platform in Python, IPython Notebook now allows running
Python, R, Ruby, Javascript, shell, SQL, Scala and Julia code all in a
single context, via a browser interface, while sharing objects between
these.  The project is now well funded by Sloan Foundation to the tune of
1.1M$ so this is not going away, nor is it a random overnight hack - it has
been 12yrs in the making.
Fernando Perez the initial author and project leader.

But why on a CouchDB mailing list?  One word - JSON.

The state of the computation in the Notebook is represented as a JSON blob
and persisted in the filesystem.  Currently there is no peer-to-peer
sharing mechanism for IPython Notebook JSON files - only via hub-servers.

The interface to the filesystem is well abstracted (save, get, findbyid)
and building an interface to CouchDB should not be too difficult.   The
codebase appears to have an interface driver for Azure.

This message is to solicit collaborators if anyone wants to help create an
interface to CouchDB ( I am nborwankar on the G mail service and on the Git
Hub service ) - contact me offline.

Cloudant, IrisCouch folks there's a hosting oppty here as well, perhaps you
might want to sponsor such an effort via hours and/or $.

Jason, trying to catch you on Skype for a while :-)

Why should you care - perhaps because you agree that reproducible science
is important. Perhaps because you agree that private sharing of data is
important. CouchDB provides a natural platform for p2p sharing of JSON
objects.  The REST interface is a huge plus.  In a previous life I was
responsible for helping create a BibTeX to JSON mapping, then use CouchDB
as a store.  Other than that in a separate effort, along with some
luminaries on this list, we created a LaTeX collaborative editing platform
for advanced math based on CouchDB as a store.  The server was slashdotted
and survived.

IPython Notebook on CouchDB seems like a natural next step.

Please let me know if you're interested.
Creating a library like nano.js and embedding it in the IPyNB context may
be all that is needed, I can help point out the relevant files in the IPyNB
codeline.

On a tangentially related note I've created LearnDataScience a set of such
Notebooks for self-directed learning in data science. http://learnds.com
A CouchDB platform for self-learning would be enabled by the small project
I am proposing here - let's call it IPyCouch.

Thanks much for listening.

Nitin.

(follow me @nitin on Twitter if you dare)


------------------------------------------------------------------
Nitin Borwankar
nborwankar@gmail.com