Nilesh R. Mohite
Nilesh R. Mohite
About the Author
Jol Perras has been professionally involved in technology and computing for over 12 years. He got his start in the world of programming by attempting to teach himself Java at the tender age of 13 and got his first job at a small web development firm a few years later writing Java Server Pages. The first site he built is still running.
While studying physics and mathematics at McGill University in Montral, he helped set up a Tier II analysis centre for the Worldwide LHC Computing Grid, which cemented his interest in distributed systems architecture and high performance computing.
Currently, his days are spent building infrastructure and Python applications with the incredible people at Fictive Kin, writing open source code, and trying to lift heavy weights over his head on a regular basis.
I'd like to thank Sara for her infinite patience throughout the process of writing this lengthy technical manual and my coworkers at Fictive Kin for dealing with my particularly bad sense of humor on a daily basis.
About the Reviewers
Shalabh Aggarwal has several years of experience in developing business systems and web applications for small-to-medium scale industries. He started his career working on Python, and although he works on multiple technologies, he remains a Python developer at heart. He is passionate about open source technologies and writes highly readable and quality code.
Shalabh is also active in voluntary training for engineering students on nonconventional and open source topics. When not working with full-time assignments, he acts as a consultant for start-ups on leveraging different technologies. He is pursuing his master's degree in business from IIT Delhi.
I would like to thank my family, my mother, and my sister for putting up with me during my long writing and research sessions. I would also like to thank my friends and colleagues who encouraged me and kept the momentum going. I would like to thank Armin Ronacher for developing this wonderful web framework.
Christoph Heer is a passionate Python developer based in Germany. He likes to develop web applications and also tools and systems for infrastructure optimization, management, and monitoring. He is proud to be a part of the great Python community and wishes to have more time for open source contribution.
Andreas Porevopoulos has loved computers and programming since he was in high school and over the years he has developed many apps in different languages and systems, but Python was always his favorite. He has been working as a Full Stack Python developer for the last 7 years and has completed lots of projects in Django and Flask. He believes that these two frameworks are among the best for web app development.
The agile practices that he uses for all his developing/deploying needs are Git, Ansible, Vagrant, and Docker.
www.PacktPub.com
Support files, eBooks, discount offers, and more
For support files and downloads related to your book, please visit www.PacktPub.com.
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at > for more details.
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.
https://www2.packtpub.com/books/subscription/packtlib
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books.
Why subscribe?
- Fully searchable across every book published by Packt
- Copy and paste, print, and bookmark content
- On demand and accessible via a web browser
Free access for Packt account holders
If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view 9 entirely free books. Simply use your login credentials for immediate access.
Preface
The setting is familiar enough: you're a web developer who has worked with a few programming languages, frameworks and environments, and decided to learn enough Python to make a few toy web applications. Maybe you've already used some Python web frameworks to build an application or two, and want to explore a few of the alternative options that you keep hearing about.
This is usually how people come to know about Flask.
As a microframework, Flask is built to help you and then get out of your way. Taking a very different approach from most other general-purpose web frameworks, Flask consists of a very small core that handles the processing and normalization of HTTP and the WSGI specification (via Werkzeug) and provides an exceptionally good templating language (via Jinja2). The beauty of Flask lies in its intrinsic extensibility: as it was designed from the start to do very little, it was also designed to be extended very easily. A pleasant consequence of this is that you are not beholden to a particular database abstraction layer, authentication protocol, or caching mechanism.
Learning a new framework is not simply about learning the basic functions and objects that are provided to you: it's often as important to learn how the framework can be adapted to help you build the specific requirements of your application.