Interactive tutorial and introduction into programming with Python for the humanities

Folgert Karsdorp

The programming language Python is widely used within many scientific domains nowadays and the language is readily accessible to scholars from the Humanities. Python is an excellent choice for dealing with (linguistic as well as literary) textual data, which is so typical of the Humanities. In this book you will be thoroughly introduced to the language and be taught to program basic algorithmic procedures. The book expects no prior experience with programming, although we hope to provide some interesting insights and skills for more advanced programmers as well. The book consists of 10 chapters. Chapter 5 and Chapter 6 are still in draft status and not ready for use.

This document describes the installation procedure for all the software needed for the Python class. If your stuck anywhere in the installation procedure, please do not hesitate to contact Folgert Karsdorp.

Text Editor

We advice you to install a good text editor, Sublime text 2/3 for example. However, you are absolutely free to use your own favorite editor. For Sublime Text 2/3 go to download the version for your operating system and install.

In the course we will be using software that works best with Google Chrome. Firefox 6 (or above) and Safari will also work. Internet Explorer is not supported.

We will be using Python 3.4 for our course. Lower versions are more or less supported, but not recommended.


All platforms

We strongly advice you to install the Anaconda Python Distribution. This distribution contains all the necessary modules and packages needed for this course. It is available for all platforms and provides a simple installation procedure/ You can download it from: More detailed installation instructions can be found here:

Anaconda's default installation is Python 2.7. However, we will use Python 3 in this course. To install all necessary packages for Python 3.4, type

conda create -n py34 python=3.4 anaconda

followed by

source activate py34

at the command line. If you work on a Windows machine, use the following command instead:

activate py34

(If this doesn't work, have a look here: After that you can start the course with double clicking the file start-windows.bat (if you are working on Windows) or if you work with Linux or start-osx.command if you work on Mac OS X.


Download and install the Anaconda Python Distribution (see above).

Double click the file start-windows.bat.

If everything goes right, this should open your browser (preferably Google Chrome or Firefox) on a page (or something similar) which says IP\[y\]: Notebook. If for some reason, the notebook is opened by Internet Explorer, copy the URL and paste that in either Google Chrome or Firefox.


Only take these steps if you know what you are doing. Otherwise, simply download and install the Anaconda Python Distribution (see above). After that, double click the file start-osx.command.

First you will need to install Xcode from the App Store. After you have successfully installed Xcode, open Xcode and go to Xcode -> preferences -> Downloads. Now click on the install button next to commandline tools.

Open spotlight and type in terminal to open the terminal application. (You can also go to your applications folder and then to utilities where you'll find the

Cd to the folder where you downloaded or saved the file (probably in ~/Downloads) by using

cd /folder/of/

Run the installer with the following command. The installer will download some packages and will request for your password to install them.


To check your installation, relaunch the Then type in

ipython3 notebook --matplotlib=inline

If everything went well this should open your browser (best with Google Chrome or Firefox) on the page which says IP[y]: Notebook.

Linux (Ubuntu/Debian)

Only take these steps if you know what you are doing. Otherwise, simply download and install the Anaconda Python Distribution

First open a terminal, then type

sudo apt-get install python3 ipython3 ipython3-notebook numpy scipy matplotlib flask whoosh seaborn

If you run another Linux distribution, similar packages should be available. Finally execute the file

Static Notebooks

This is a fall-back method.

Chapter 1 - Getting started

Chapter 2 - First steps into text processing

Chapter 3 - Text Analysis

Chapter 4 - Programming principles

Chapter 5 - Building NLP applications

Chapter 6 - Objected Oriented Programming

Chapter 7 - Archiving and Searching

Chapter 8 - Practical: Searching your own PDF library

Chapter 9 - Learning from Examples

Chapter 10 - Learning without Supervision