How to think like a computer scientist - Allen B. Downey (Green Tea Press, 2012)