Components


In [1]:
from IPython.display import display, Image, HTML
from talktools import website, nbviewer

Jupyter/Google coLaboratory

In May of 2014, the Project Jupyter and Google Research announced a collaboration that will bring the Jupyter Notebook to Google Drive.

Main features:

  • Store notebooks on Google Drive
  • Share notebooks and collaborate in realtime
  • Post comments on notebooks
  • Run the Python kernel in two ways:

Code and release:

  • Fully open source
  • Uses public Google APIs for Drive, Comments and Realtime Collaboration
  • Public but beta on the Chrome App Store

IPython Console

IPython started as a terminal based interactive console with tab completion, integrated help, plotting support, etc. This runs the Python based kernel in proces or out of process:


In [2]:
Image('images/ipython_console.png')


Out[2]:

IPython Qt Console

The Qt Console Console provides another frontend with inline plotting and multiline code editing.


In [3]:
Image('images/ipython_qtconsole.png')


Out[3]:

IPython.parallel

This same abstraction of running code remotely enables a high-level parallel computing framework.


In [4]:
Image("images/ParallelKernels.png")


Out[4]:

On November 14, 2013, IBM announced that it was making its Jeopardy playing supercomputer, Watson, available to developers on the internet as a service. In the summer of 2013, researchers on the Watson team revealed that they were using the IPython Notebook and IPython.parallel to improve Watson's performance and capabilities.

Before:

  • 8000 lines of Java code
  • 2 minutes per analysis run.

After:

  • 220 lines of Python code.
  • 2 seconds per analysis run.