[IPython-dev] Some new cell types for describing data analyses in IPy. Notebook

Matthias BUSSONNIER bussonniermatthias at gmail.com
Wed Jul 3 04:25:28 EDT 2013


Gabriel, 

You screen shot are interesting, 
At some point I played with gridster[1]

and was more or less able to get cell to rearranges, but didn't keep the code. 
You might be interested. 

Keep in mind that the notebook browser-interface we ship is only one possible
frontend that can interpret ipynb files, nothing prevent you to write a
different frontend that display the notebook in a different format. 

This added to the fact that each cell can support arbitrary metadata, you
should be able to arrange preexisting in structure that work together. It might
be a little difficult to do it right now as our javascript is not yet modular
enough to be easily reused, but we are moving toward it.

Right now I thing storing the notebook as a directed graph is problematic in a
few way, the first being that it is incompatible with the fact that people want
to be able to run notebook in a headless manner, which if you add explicit
choice is not possible. This also contradict the fact that the notebook capture
both the input and the output of the computation. As you showed there is
actually 18 different combinations of data analysis, and they are not all
stored in the notebook. 

I really thing this is an interesting project, and reusing only our metadata in
the notebook, you should be able to  simulate it (store the dag in notebook
level metadata, and cell id in cell metadata) then reconstruct the graph when
needed. Keep in mind that at some point we might/will add cell id to the
notebook.

To sum up, I don't think the current JS client is in it's current state the
place to implement such an idea. The Dag for cell order might be an idea for
future notebook format but need to be well thought, and wait for cell IDs.

-- 
Matthias



[1] http://gridster.net/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ipython-dev/attachments/20130703/405c57ba/attachment.html>


More information about the IPython-dev mailing list