IPython founder details road map for interactive computing platform

Developer Fernando Perez says JavaScript and multi-user capabilities will be highlighted in coming upgrades of data analysis/visualization project

Page 2 of 3

InfoWorld: Is IPython a breakthrough in data analysis?

Perez: IPython is a tool that builds on the strengths of the Python community and the scientific Python toolkits for data analysis. The breakthrough, if there is any, should be judged by the user community. But what we are trying to contribute is having a tool that provides a very fluid experience, so when scientists are working with their data and they are trying to understand a problem, they are as close to the data and the results and experience as possible, with as few barriers between the code they're trying to type and the [obtaining] of results. That then allows them to communicate whatever insights they obtain with others.

These notebook documents, once saved, they're files that can be emailed to others, they can be converted to Web pages, and they can actually be shared online. We provide a service that renders notebooks into Web pages so that people can share their insights without asking the recipients to install anything. It's called the notebook viewer, and it lets anyone share a link with others and they can read their data analysis, including viewing their graphics and the results and whatnot without having to install anything.

InfoWorld: At what stage of development is IPython?

Perez: We are about to release [version] 2.0 in a few weeks. We have a number of very interesting and valuable features coming up, including a very sophisticated framework for interactive JavaScript widgets, for browser-based rich interactivity that can have connections back to a computational backend. That's about to be released. We've [also] made lots of improvements to the notebook and usability.

InfoWorld: What does IPython 2.0 bring to JavaScript developers?

Perez: It means that it becomes very easy for users in any programming language, and I want to reiterate how IPython these days is language-agnostic and how these tools can be used in other programming languages. It allows people who are developing code in other programming languages to produce computational output that immediately couples the JavaScript visualization. For example, we're seeing people writing D3 visualization where you can execute Python code, but immediately in the browser a D3-based rich visualization pops up. What it will do is it will expand the reach of what Web developers are doing, better coupling them to the community that traditionally use languages like Python and R to do their analytics by building a bridge between the traditional programming languages communities and the Web developers. The Web developers normally only code in JavaScript, but the people who are running Python or R tend not to be Web developers. This will help build a bridge between those two communities.

InfoWorld: What other features are in IPython 2.0?

Perez: We've made a lot of improvements to the usability of the notebook in that we've solved the major limitation it had that required you to start many notebook servers and many different parts of your file system. It seems like a simple thing, but the ability for a single notebook server to navigate your entire file system is actually a huge usability win. There've been improvements to the underlying machinery that converts notebooks to other formats, so if you want to convert a notebook into a blog post into a Web page, into a PDF for a paper or for a book or to print a report, that machinery has also seen a lot of improvements.

InfoWorld: Is there anything else you want to say about the IPython?

Perez: [For] IPython 3.0 we also have very ambitious plans. That will be released hopefully in the summer. What we will do is we will expand the current notebook server from being something that is tied to a single user into something that can be run for multiple users, so you can run a notebook server on a multi-user server, for example, and when users log in they will automatically get their own notebook machinery. The idea of deploying a notebook server in a research group, in a data analytics team, for a class at a university -- this is a feature that we have enormous demand for. We've already done all the design work for it. The plan is to implement it over the course of the next six months or so.

| 1 2 3 Page 2