Filled with practical, step-by-step instructions and clear explanations for the most important and useful tasks. The book uses a bottom-up approach to help you build applications, and is full of step-by-step instructions and practical examples to help you improve your knowledge.Instant Flask Web Development is for developers who are new to web programming, or are familiar with web programming but new to Flask. This book gives you a head start if you have some beginner experience with Python and HTML, or are willing to learn.
This book does exactly what it's trying to achieve - it gives a short, fast and focused Intro to Flask. In case you haven't heard of it, Flask is a lightweight and very extensible Python Web Framework that is built with good intentions, doesn't stand in your way and is fun to use. For these reasons, the community around Flask is growing quite fast and books are currently being written about it. Instant Flask is - to my knowledge - the first one and I can thoroughly recommend it.
The author, who is a core contributor to Flask, takes you through the steps of creating a schedule app that is compatible with both Python 2.7 and Python 3.3. The book is structured into short topics each about 3 to 5 pages long. They are covered in the necessary details with a "There's more" section for additional references.
The topics range from Routing URLS, Handling Requests, using a Database etc. (Simple), basic CRUD, Handling Sessions and Users etc. (Intermediate) to using custom filters with Jinja2 (the templating engine), Authentication, Deployment (Advanced). You will explore various Flask extensions like Flask-Login, Flask-Script, Flask-WTF etc., some Twitter Bootstrap for making things pretty, the power of Jinja2 and even some Werkzeug for password hashing.
The author writes very clear and achieves a good balance between explanation and code examples. Since this book is very hands on I recommend coding along or messing with the source code which is available at the Packt Publishing site.
Having checked out Django first I was smitten by the simplicity of the Flask core and the flexibility that the numerous extensions provide. This book details the very core steps in building a web app and should be in every beginner's pocket.
Minor complaints: 1) the author is using "raw" SQLAlchemy instead of the Flask-SQLAlchemy extension, the latter of which is nicer since it's customized for the Framework 2) Flask-Migrate as a nice tool for database migration isn't mentioned 3) Testing isn't covered
ad 1): rewrite it! ad 2): implement it! ad 3): write them!
The cool thing about those Instant books (it's my first! - I will get another!) and the source code being available is that you can change and extend stuff easily. The book provides you with the most important knowledge. There are many great things ahead.
I wholeheartedly recommend the book as there simply isn't too much out there yet - barring the reading of the official documentation - that can get a person moving forward and successful with Flask.
Useful and easy to implement open-source projects are few and far between and in my opinion, Flask is still a young framework with plenty of room to grow. That the author took the time and energy to make this book is a boon to any web developer interested in using a Python framework without learning a more complicated ORM (e.g. Django)
This book is worth every penny and probably more, but it is an ebook and therefore less expensive as ebooks should be.
Full code is given by the author that the reader can use to deploy a project and then hack it up to her pleasure. This is nice and goes a bit further than the docs are able to and so I would recommend the book if only to take it up a notch for the potential Flask user in a way that she might not experience from reading the docs and perusing the scant amount of tutorials available in the wild.
I think that Ron Duplain does an admirable job of presenting a complete project that could be modified and presented to the world. My only caveat is that this book is fast-paced, and therefore I wouldn't recommend it to beginners of the Python language or those who are not experienced - at least in a minimal way - in using a server console. Some will disagree with this stance, but I have seen very experienced programmers quickly broken by the rudiments of attempting to install python on Windows, failing to get paths correct, having difficulty learning how to run scripts, and so on.
GNU/Linux is installed with python2 and sometimes python3 (depending on the distribution) and learning the command line is the same there as it is anywhere - there's going to be a learning curve, so pick your poison.
I suppose that in light of this being a relatively short book, I can understand why some topics are touched on less than others. As this is an ebook, it is easy to cut and paste code as well as copy and paste keywords and urls to a browser to do research and so the actual length of the book can be abbreviated. I do have my reservations about copying/pasting code rather than writing it from concepts, fundamentals, and practice, but it seems that since more programmers coming into the market seem to ply their trade by asking for help with code in social media pages that perhaps this is a precursor to a more crowdsourced form of code development. Whether it is inevitable or just a fad, I'm still not thrilled by the prospect of coders becoming lazier and depending too much on others for their work product.
Perhaps the newer generation of social-media coders who have been raised on search engine research will have a relatively easy time finding the extra knowledge to fill in the gaps, and perhaps not. Learning a new **anything** takes time and dedication and a bit of moxy sometimes to get us through the rough patches.
The Flask web application framework is written in Python and is based on the Werkzeug toolkit, using Jinja2 to create templates. Flask is considered a micro framework as it keeps the core of the framework small and simple while allowing it to be extended as much as the user wishes. Instant Flask Web Development is written by Ron DePlain who has been a core contributor to the Flask project. In the book he explains the core functions of the framework by building a complete application in the form of a web based appointment calendar.
Just as Flask is a micro framework, the book gets straight to the point attempting to get the readers feet wet and programming as quickly as possible. The book is set up in three distinct sections, building from Simple topics, to Intermediate to then on to Advanced.
Simple topics begin with getting the user to prepare the development area providing a view of virtualenv, pip and python and then kicks off building the application by setting up your urls. It then covers how Flask handles requests, working with static files and databases, creating forms and file uploads. It then gives a brief overview of Jinja2 to start creating templates for the environment. The intermediate topics then dive further into the application framework demonstrating how to create new records in web forms, displaying the records and editing records.
The advanced topics then cover how to extend the framework by using JavaScript to trigger delete requests, using custom templates, authenticating users and user sessions. The final topic runs through deploying your completed application to the world using HTTP proxying.
To get the most out of this book, it does help for you to have at least a little knowledge of Python and how websites work. By creating a complete application from start to finish, it covers a wide range of topics that you would most likely use in setting up a similar project or application.
In some of the earlier chapters it does run a little off topics, by moving away from the main application you are building, which can become confusing. Due to the fast pace of the book, it can become a little confusing which file you need to work with at which point.
I have found this book to be a great place to get started with Flask programming as it gets straight to the point and does not try to complicate things by going too far in depth in each of the topics. The application built is a good example of the framework and although the book feels like a quick reference to get you started, it does give enough information to extend the framework and move on to create you own Flask applications.
It is a short, but very well organized book. I found the idea of building an application step by step very useful. The code in the book has some minor issues, but overall, I liked the book!