Python cookbook - Beazley, David (O'Reilly, 2013)