DjangoCon Europe, 2nd to 7th June 2015, in Cardiff, Wales. 6 days of talks, tutorials and code.

Dive into object-oriented Python

A hands-on workshop for Python users who need a better understanding of its OOP implementation - a key to success for for every Django programmer.

Note: this session is part of DjangoCon Europe’s open day. It’s free and all are welcome to attend, but please register because places are limited.

About the workshop

Each language has its own object-oriented implementation, that can differ in subtle or unexpected ways from others.

Newcomers to Python - whether they are coming from another language, or learning programming through Python for the first time - sometimes encounter some ‘strange’ issues, but understanding Python’s OOP implementation will help make many of them seem a lot less strange.

This tutorial will introduce beginners to Python’s beautiful but sometimes peculiar implementation of OOP concepts. It’s ideal for people who have a bit of Python knowledge and experience, and need to move from first steps to a deeper understanding.


Please bring your own laptop, as the workshop includes hands-on exercises. The minimum setup is a running Python console (preferably Python 3, but Python 2 is also OK) and your editor of choice.

The recommended setup is a running IPython Notebook installation.

There will be no time to install software during the workshop, so please ensure that everything is already working for you. Run this example program from Dive Into Python 3 to check that all’s in order.

Ubuntu users can use this code to get a working iPython Notebook:

sudo apt-get install -y python3-dev g++
virtualenv venv3
source venv3/bin/activate
pip install ipython pyzmq jinja2 pygments tornado jsonschema

Or, follow some instructions to install a complete scientific Python environment.

Both Linux and OSX users can also install the Anaconda IPython scientific Python distribution. We will not make use of all the graphical features of the Anaconda IPython installation, so this may be overkill.

About Leonardo Giordani

Leonardo started using Python in 2000, and Django in 2010.

He’s currently working in the field of satellite radar imagery (Tele-Rilevamento Europa), building massive scientific data processing chains in C/Python.

He develops Django-based solutions to monitor data processing and to manage software development and deployment.