This workshop introduces beginner programmers to Web Development with Flask 3.0. It walks through the creation of a money management application and demonstrates Flask 3.0’s async capabilities as well.
It is targetted towards both novice python programmers with some experience in the language, as well as hopes to bring developers up to speed about Flask 3.0.
Link to Source Code & Slides (WIP)
- Introduction and Basics (10 minutes)
- Installing Python + Flask
- Running basic hello world to prevent common gotchas
- Getting copy of the course source code
- Showcasing the testing UI for the money management application (developed in Streamlit)
- Getting Started with Flask (15 minutes)
- Discussing what Flask does, what a webserver application is
- Discussing components of a common web service (CRUD)
- Listing alternatives in Python and other languages
- Similar design (nodejs, fast-api)
- batteries included (django, rails)
- Core Flask Concepts (15 minutes)
- Flask from 0 to Django through Extensions
- Forms and User Input (10 minutes)
- Database Integration (10 minutes)
- Introduction to DuckDB
- Common Alternatives
- Async Programming in Flask 3.0 (25 minutes)
- Why async calls matter
- How to use an async http service
- Flask 3.0 and Async
- Authentication (AuthN) and Authorization (AuthZ) (15 minutes)
- Error Handling and Debugging
- Introduction to CURL and Postman
- Logging in Flask (using structlog)
- Useful network tools for webdevelopment (netstat)
- Deployment (20 minutes)
- Testing (15 minutes)
- Testing HTTP services with Locust
- Q&A (10 minutes)
Total time: 160-180 minutes.
This course requires
- Basic knowledge of python
- A laptop with a working python installation (3.12+)
We advocate for using uv
to setup python on your laptops. It makes things easier for everyone.
Anyone with a basic understanding of Python, (1-4 years experience), or anyone who has used Flask at a basic level before and wants to update their skills.
Vinay Keerthi is a self-taught developer who’s worked with Python since it’s 2.7 days. He’s been using Flask since its beta label days and has earlier conducted workshops on Flask for corporates and at the BangPypers meetup group. He has previously worked at Visa, Merkle Science and current works at ChainSafe, where he develops data pipelines using Dagster. He is most proud of the fact that in 2019, his bookshelves ran on Flask! You can find more about him on his website.
Abhiram R works at o9 Solutions Inc, where he works on ML and LLMs. He’s previously worked at Scribble Data and Blue Jeans Network. When he’s not busy discovering more reasons to eat idlys, Abhiram blogs about Python at Everything Python and
runs BrokeBibliophiles Bangalore, one of Bangalore’s most popular bookclubs. Abhiram has also previously volunteered for PyCon and BangPypers, and is passionate about education in and outside of tech.
{{ gettext('Login to leave a comment') }}
{{ gettext('Post a comment…') }}{{ errorMsg }}
{{ gettext('No comments posted yet') }}