2nd Edition (Using Python 2.x)
by Jeffrey Elkner, Allen B. Downey, and Chris Meyers
Last Updated: 21 April 2012