How to think like a programmer: The human part