Fri 8 Nov 2013
Packt Publishing recently contacted me about reviewing their new book, Instant Flask Web Development by Ron DuPlain. They sent me an ebook copy and I just finished it up. I always strive to give an honest opinion about the Python books I read as I want my readers to know whether or not a book is worthy of their hard-earned cash. If you don’t have much time for a review, then you can check out my short one below. If you have a few minutes, you can read the rest!
- Why I picked it up: I’ve been interested in learning Flask (and web development in general) for a while now and this book just dropped in my lap.
- Why I finished it: It’s short and has a lot of interesting little recipes and tips.
- I’d give it to: I would give this book to someone who already knows Python and probably knows a little about web programming too.
Packt Publishing has recently started releasing its Instant line of books. These books are all short. In the case of Instant Flask Web Development, the book clocked in at 78 pages, including all the boilerplate Packt adds to the beginning and end. This is not a book for programmer beginners. The author assumes the reader knows Python and spends absolutely no time explaining how Python works. This isn’t a bad thing as a lot of books waste about a third of their content explaining beginner concepts rather than focusing on their core topic. It is also a cookbook of sorts as each section is a recipe that is labeled either Simple, Intermediate or Advanced.
On the other hand, there were points in the book that took several readings to understand what the author was talking about. There are also some incomplete code examples (like page 15) in the book and some examples that have gaps in them that the reader is supposed to know how to fill in. I found one example on page 46 that had two return statements indented to the same level such that the second one would never be reached. These are nitpicky issues, I know, but some readers will find this confusing if they are trying to use the code straight from the book. Speaking of code, the source that Packt provides only has the final version of the code. I actually like to see the code for each chapter or recipe to see how it evolves, but that’s a personal preference.
Let’s talk a little about what the book covers. The premise of the book is to create a fully functional scheduling application in Flask. Mr. DuPlain talks about handling requests / responses, static files, forms, using a database (via Flask-SQLAlchemy), templating with Jinja, error responses, authenticating users, sessions and deployment. The author spends the bulk of the book explaining request/response handing and working with the database (how to add, edit, delete, and query). There are lots of interesting plugins, such as Flask-WTForms, and how they work. You’ll find yourself wanting to click on all the various resource links that the author provides so that you can learn all kinds of other things outside of the book. I think this is what the book does best: whetting your appetite such that you want to learn more and more.
While there are some rough edges here and there in the book, I found it a worthwhile read. I found myself wanting to learn more about Flask and its plugins when I finished reading it. So if you’re interested in learning about one of Python’s micro-web frameworks, I think this book will help you get started.
Note: I am currently running a contest for this book that will end on 11/15/2013. Go check that article out if you’d like to enter for a chance to win a free copy!
Instant Flask Web Development
Other Book Reviews