195
people found this helpful, as of 2023
ranked #168,084 most helpful
out of 571,544,897 reviews
★★★★☆
Good Projects, but Not an Ideal Book for a True Beginner
This book is intended for beginners, and really breaks down python in a very approachable manner. Despite that being said, I wouldn't recommend this book to a beginner. In the preface, the author mentions that this book uses many bad habits (or at the very least frowned upon habits), which is true. Many of coding examples are inefficient (which, to the author's credit, he acknowledges), and while the code might run, it's not going to be pretty. The projects look worthwhile, and those alone would be what I'd argue makes the book worth it. Many novice developers (as well as intermediate & advanced) can shrug off the idiosyncrasies that are presented in this book, but a person brand new to coding would likely misunderstand the material, ultimately leading to bad habits that'll be harder to unlearn.
For a true beginner, I'd recommend the Python Crash Course book by the same publisher (No Starch Press). The fundamentals are clearly presented, and easy to understand. The foundation developed will be stronger, and you'll be less likely to develop bad habits, since most of the material is presented in a manner consistent with the python community (PEP).
For example, the way variables and input functions are utilized between the two books are drastically different. In this book, user input and assignment is handled as follows:
print('What's your name?')
name = input()
This is inefficient, and somewhat confusing, given that the alternative (as presented in Python Crash Course) is easier. In Python Crash Course, the same outcome is presented as follows:
name = input("What is your name? ")
The print statement asking for the user's name is excessive. If I'm trying to automate the boring stuff, I'm trying to trim the fat - not eat it.
November 2020 · Books · verified purchase