Learning Scientific Programming with Python - Christian Hill