Learning Scientific Programming with Python
P**N
Extraordinary Book
It’s received wisdom that if you want to learn a programming language you need to sit down and program in that language. Books and videos certainly have their place, but you learn best by doing. Christian Hill’s extraordinary book bridges that gap by providing (1) a thorough description of the Python language but by also providing (2) thought-provoking questions (with answers in the text) and (3) an eclectic array of “problems”, which are intriguing programming exercises drawn from the scientific literature. If you really want to learn scientific programming in Python do at least a couple of the many problems in each section of the book, those that appeal to your specific interests. The author must have quite the imagination to provide so many interesting challenges. And the bonus is that solutions are to be found on the authors online website. Five stars plus!
E**M
Excellent resource and just what is needed
Of the 'python for science' books out there, this one is very good. It covers enough of the language to be useful. For example any project of sufficient complexity will use object oriented features of the code, and this book covers enough of that to be useful. It's not exhaustive on OOP but that's not the point of the book. Otherwise, the code examples and overviews of the python packages for science is thorough enough that one should be able to immediately start using those packages productively. I highly recommend this book.
A**R
Masterpiece !
I started this book because after having completed some online courses in Python I was feeling that I wasn't actually learning. This is the best programming book I have ever read. Every chapter has decent amount of theory and references. At the end of each subsection you have some questions (with solutions on the back of the book), and of course problems that seriously require critical thinking. The solutions of these problems are on the website of the book, where the author is commenting almost line by line. Following this book you will not only learn Python, but you will also learn how to code. If you manage to solve the majority of problems of this book you will certainly not be a beginner anymore and you will have the built the foundation needed for more advanced topics.Just buy it you won't regret it.
J**E
Good introduction but hard examples
The book is well-written and easy to follow in general except that the given examples are hard to understand not due to Python but due to the fact that they are selected from hard subjects. In the next edition, I suggest the author to give examples which will not require domain knowledge to follow them.
R**D
Excellent book for experienced C, C++ and Fortran programmers
If you are already comfortable with C, C++ or Fortran programming in a scientific or engineering environment, this is the book for you. For books of this genre, it's even a relatively decent read. as in, you can take a cup of coffee, sit in your easy chair, and read it, and find it reasonably interesting. The Python/NumPy/SciPy environment has some interesting and unusual features that you are not accustomed to, and some important differences from what you are accustomed to. The former are fun and interesting, and the latter are important. There is very little Python cultural hype (e.g., no "Knights that Say Ni!", etc., no dwelling on how to be Pythonic, etc.) which is refreshing. All in all, highly recommended - the book I was looking for.
C**8
A hidden gem
I'm teaching a course in scientific computing with Python, following this book, and it is definitely a great reference on the subject. Highly recommended.
N**.
Covers the Basics
The book did a good job of building up base understanding of python and then tailoring for more academic needs.
R**O
A Harmonious Blend of Precision and Clarity
A Harmonious Blend of Precision and Clarity"Learning Scientific Programming with Python" by Christian Hill is a testament to the enduring beauty of clear, methodical instruction—a reminder that the best teaching honors the traditions of our craft. Hill’s work stands out by meticulously presenting Python’s essential elements, ensuring that every syntactical nuance is laid bare with a precision that leaves no room for doubt.The examples within the book resonate like well-practiced verses, each one illuminating the path from concept to comprehension. They are not merely exercises; they are stepping stones that guide the reader gently yet firmly into the vast landscape of scientific programming. It is this clarity that makes the learning process both accessible and deeply satisfying.While my heart has long been fond of the robust foundations laid in Summerfield’s "Programming in Python 3"—with its invaluable first chapter that distilled the very essence of programming—I found myself equally enchanted by Hill's distinctive approach. Much like the revered classics of the past, which have stood the test of time, this book honors tradition while embracing modern challenges with a fresh and invigorating perspective.For those who have journeyed through the "Python from scratch course" and appreciate the elegance of a well-structured exposition, Christian Hill’s book is a delightful discovery. It is a work that invites you to not only learn but to marvel at the timeless principles of programming that continue to inspire both seasoned practitioners and curious newcomers alike.In essence, "Learning Scientific Programming with Python" is more than a manual—it is a lyrical call to embrace the art of programming with a clear mind and a passionate heart.
Trustpilot
3 days ago
5 days ago