http://blog.emacsen.net/blog/2012/06/07/observations-from-a-python-workshop/