For a teaching that I am preparing I found that my favorite tool – Excel – would no longer cut it, so I decided to finally give iPython Notebook a try – and it rocks! For those of you who do not know what this is: Python is a programming language that is very well suite for numerical analysis (not least because of the libraries available). iPython is a Mathematica style interface that is wrapped around Python, and iPython Notebook is a browser interface for iPhython.

Note that this installation is not particularly secure – we are essentially exposing a root shell on the web – so I highly recommend to either run this installation on its own cloud server (and assume that it will get hacked at one point) or to secure it.

Starting from a clean Ubuntu installation we first update the package manager and python, and then install a number of python packages and ipython and the notebook

UPDATE 9/Aug: I have just noticed that the apt-get install ipython-notebook command installs an outdated version (1.x) that most annoyingly does not support a directory structure for storing the notebooks (introduced in 2.0; you can find the version number using ipython --version). The way around this is to properly install iPython using pip. Nothing wrong with this, other than that this needs a full development environment installed and takes longer. The last two commands should be replaced with

Also those commands above currently (Ubuntu 14.04) install Python 2 which is slowly becoming legacy code. To install the respective Python 3 packages the commands will have to changed to `apt-get -y install python3-pip` etc, or to `pip3 install ipython[notebook]`. iPython is then run as `ipython3`. The notebook is launched using with the command `ipython3 notebook –profile=nbserver` END UPDATE 9/AUG.

We then need to make a self-signed SSL certificate to allow https connection to the server (all questions can be answered by simply hitting return)