I'm sure the iPython Notebook could be useful in my day to day Python/Django usage but I haven't figured out how yet.
I work for Continuum, btw
Your mileage may vary, of course, so I'd say have a backup and give it a try - at least EPD didn't ruin anything for me. I'm pretty sure IPython Notebook on Windows machine is doable with some lib-hunting/building, since I managed to have fully functioning IPython Qt console installed and running perfectly on Win7 right now, and Notebook is just a couple additional requirements away from it.
That said, it's very easy to get it going on EC2, especially with Notebookcloud.
With the latest EPD 7.3-2, ipython notebook --pylab inline works for me on windows 7 32 bits + chrome. Feel free to contact me privately (see my HN account) if you want more help on how to get this fixed.
edit: for clarification, I saw this comment, and three hours later I'm back to reply.
That said, I thought it was quite straightforward to setup and use the IPython Notebook.
There are those who will find it useful but others will find that there are better desktop tools for these purposes. Individual developers are free to pick and choose.
Fortunately, neither this announcement not the Ipython roadmap emphasises development of the web-based notebook.
These already exist, though, and the ecosystem already has a lot of support and momentum behind it: javascript within the browser.
Would you explain what some of the benefits are in comparison to this? I'm an outsider so I don't have a very firm understanding of what the implications are.
There is a development branch of iPython by Brian Granger that emits JSON when you display a python object in the notebook. You can easily create handlers that display any Python object using javascript. That means D3.js or whatever HTML5/WebGL app you can throw in there becomes the front-end to a very powerful numerical computation back-end. Check out this demonstration I help code, http://www.flickr.com/photos/47156828@N06/8183294725
You could certainly base something like that around Javascript, and it would have certain advantages. But the Python world has a lot invested in scientific computing - Numpy, Scipy, and dozens of packages built on top of them. It's also got good integration with other languages, from FORTRAN to R. This sort of scientific computing is where we think the notebook really shines.
I'm even wondering: if there was a way for notebooks to import each other, would I still bother with modules?
1. In ipython_notebook_config.py, set the following:
# Save .py for each notebook for import elsewhere
c.NotebookManager.save_script = True
2. Restart your notebook server. 3. Save any notebooks you'd like to import under module friendly names. (They wind up in the same dir as the ipynb files.) 4. In your interactive notebook, import your_other_notebook.
This works well when all your notebooks are in the same folder, which is the default. I haven't given much thought to how you might create packages this way, but perhaps with a few code changes you could?
We might even pair it with a web-based editor, like ACE, so you can comfortably write modules on the same server.
Being able to weave together text|markdown, tabular data (in almost any format you want) and images ( whether from matplotlib, raw captures, or synthetic assemblies ) in one environment is very powerful.
I suspect that with some additional tools IPython notebook will become the integrators workbench par excellence, useful in many contexts.