IPython Notebooks, History and Fernando Perez

Used in Public

Recently, I went to a Meetup.com talk given by a UC Berkeley Computer Science PhD about Apache Spark and the PySpark Library. He used an IPython Notebook to run code examples during his presentation. While he presented awesome open source technology that outperforms cutting edge software, what were people talking about after his presentation? The IPython Notebook tool that he used to present!

As the presenter was a UC Berkeley graduate student, I'm not surprised that the IPython Notebook was used in his presentation. IPython is closely related to the UC Berkeley community as its creator, Fernando Perez, is a research scientist at Berkeley. His vision of an interactive computing environment for Python and his persistent work over more than a decade has undoubtedly contributed to the successful launch of the 1.0 version if IPython in August 2013. From February 2008 to October 2013, Perez accounted for about 1,000 commits to the IPython Github Repository, approximately 1/10th of the total commits. He has also been formally recognized for his role in creating IPython, Winning the 2012 Award for the Advancement of Free Sortware

Perez is an active blogger and has taken the time to document the history of the IPython Project. This is especially informative when learning about IPython, because it highlights contributions from different public and private contributors and the challenges they faced creating new features. Perez also takes the time to document his original intent for creating IPython. He states that "Mathematica and its notebooks (and the Maple worksheets before) were in my mind as the ideal environment for daily scientific work." This is also reflected in Perez's interviews, talks and writing; that IPython Notebooks can serve as a starting point for reproducible scientific papers where results, data and code are shared along with an academic publishing. IPython is released under a BSD license and also requests that academic publications correctly cite the use of IPython.

More on History

Since its launch in December 2011, the Notebook feature has been a source of notoriety for the IPython project, which was actually started in 2001. Its recent 1.0 release included work from about 150 authors over 12 months. Previous releases, include the most recent 1.0 release, had the following statistics, as reported on IPython.org:

Why IPython is Growing

Notebooks are now being used more and more to present interesting work and readers are becoming interested in the Notebook format! The Notebook, among IPythons other numerous features, is such a compelling feature that it has contributed significantly to the endogenous growth of the IPython project. More specifically as more developers and academics use IPython Notebooks to share their examples or findings more people will be exposed to the tool and become interested. This is likely to be described by an endogenous triggering model, where word of mouth in the form of presentations, such as the one by the Berkeley PhD, or published scientific papers, or simple code examples, are contributing to the spread of adoption of the IPython Notebook. As adoption spreads so too will more interested and motivated developers join in contributing to the project. As IPython states that it strives to be a language agnostic computing tool, contributors have already created Ruby, JavaScript and Julia kernels that integrate with the interactive environment created by IPython.