Flask Book and PyCon Update
With my book already available for pre-order at Amazon.com I thought an update is in order.
If you look in the Amazon page the release date was set sometime in May 2014. I suppose this date is based on the writing deadline I agreed to in my contract, which is in February, plus the time the publisher needs to get the print version of the book out. It is quite possible that the book will show up as an early release e-book well before the official publication date.
You probably want to have an idea of progress. I'm happy to report that I have finished the writing part. I'm currently doing a review pass to edit the material and ensure there is consistency across chapters. I'm also working with awesome technical reviewers from the Python community that will make sure the quality is up there where you and I want it to be.
I imagine you also want to have some idea of the contents. The book is structured as a large tutorial that spans the entire book, with the chapters logically grouped into three parts.
In Part I the Flask framework and several core extensions are introduced. Here you'll learn about view functions, templates, web forms and databases, all within the context of single-file applications. A section on how Flask works under the hood is also included in this part. In the last chapter of this part a multi-file structure for larger applications is introduced.
In Part II the multi-file structure presented at the end of Part I is used as a base to build a social blogging application. This part has chapters devoted to user authentication, user roles, administration, followers, blog post timelines, user comments and APIs. The application featured in this part is, in my opinion, several orders of magnitude better than the microblog application of the Mega-Tutorial. Blueprints are used in several of the chapters, for example, giving the application a much more clean and scalable structure. I have made an effort to follow best practices, and to be more Pythonic than in my Mega-Tutorial articles.
Part III covers the tasks required to publish the application. In this part topics such as unit testing, performance analysis, logging, deployment and application updates are covered.
The example application developed throughout the book will be hosted on github by the time the book is out, and of course you'll have access to it even if you don't buy the book.
Note that this book is not targeted at complete Python beginners. To make the best of this book you need some previous Python coding experience, and in particular a good understanding of packages, modules and classes is highly recommended. Familiarity with git and client-side technologies is also useful.
Flask Tutorial at PyCon
If you decide to register for my class, you will have the opportunity to see me build an original, fully featured application that I'm developing specially for the event, all in front of your eyes, while I explain myself at every step and answer your questions.
If you want to learn the "Flask way" in a hands-on setting then I hope you will consider joining me in Montréal.