Advanced Scalable Python Web Development Using Flask

Learn to create scalable web applications that can serve millions of users using Flask, MongoDB and Amazon AWS

3.75 (182 reviews)
Udemy
platform
English
language
Web Development
category
instructor
Advanced Scalable Python Web Development Using Flask
2,871
students
14 hours
content
Dec 2017
last update
$54.99
regular price

What you will learn

You will learn advanced concepts for Flask web development including Blueprints

You will be introduced to MongoDB and the concepts of NoSQL databases

You will learn strategies for scaling applications to millions of reads and writes per second

You will learn to use Amazon Web Services like S3 and SES through the Boto library

Why take this course?

This course will teach you some of the advanced development concepts used in the top tech companies today. How do I know this? Because I’ve been leading tech teams in both large enterprise as well as startup companies in New York City for the past 15 years.

Thousands of students have completed my "Professional Python Web Development Using Flask" Udemy Course, which introduced them to the basic concepts of Python and Flask and this course builds on top of that knowledge and takes you to the next step in web application architecture design.

The course goes through the process of building a social web application using Python Flask and the most popular document store database in the market: MongoDB. We will go over modeling best practices, how to build efficient indexes and how to interact with it using the popular MongoEngine ORM.

Step-by-step we will go over the user registration, login and management, the relationship model for users to become friends, and a scalable news feed system using the same architectural design that Twitter and other popular social applications have been using to handle massive amounts of user data.

Additionally we will setup and use Amazon’s AWS cloud infrastructure for this social application, and you will learn how to manage thousands of images using Amazon S3 and best-of-class email distribution using Amazon SES.

At the end of the course students will be challenged with a final project where all the course material will need to be used to complete it. Students that finish the final project will be eligible for special future promotions.

If you already know the basics of Python and Flask and you are interested in advancing your knowledge, this course will go over some of the advanced concepts of web application development, architecture design, database modeling and leveraging cloud infrastructure services.

The course is divided in 7 sections:

  • Introduction
  • Fundamental Concepts
  • MongoDB and Flask Blueprints
  • The User Module and an Introduction to AWS
  • The Relationship Module
  • The Feed Module
  • Final Project


The course has more than 13 hours of video tutorials as well as the source code at the end of each lesson, so that you can see exactly what the whole project looks like in each stage.

The course can take anywhere from 10 days to a month to complete based on how much material the student completes daily.

Additionally we’re constantly updating the course, adding contents thanks to the feedback of our students.

Join this course and continue your path to becoming a professional Python backend web developer!

Content

Introduction

Introduction

Your Local Dev Environment

An Update About C9
Mac Local Dev Environment with Homebrew
Setting up MongoDB with Homebrew
Windows Local Dev Environment with Chocolatey

MongoDB and Flask Blueprints

Introduction to MongoDB
Setting up MongoDB on Cloud9
Playing with MongoDB
The Basic Factory Structure
Introduction to Blueprints
Section 2 Quiz

The User Module and an Introduction to AWS

Creating the User Model
Adding Indexes
The User Register Form
User Registration
Setting Up Unit Testing
User Registration Unit Testing
User Login
User Login Testing
Navbar and Starting User Profile
User Profile
Check Username Format with Regular Expressions
Edit Profile Form and Model
Edit Profile Views and Templates
Edit Profile Tests
introduction to AWS SES
Implementing Email Templates
Increasing Sending Limits in AWS SES
User Registration Email Confirmation Code
Confirmation Code Functionality
Confirmation Code Testing
Forgot and Reset Password
Forgot and Reset Password Form Work
Forgot and Reset Password Views
Reset Password Tests
Change Password
Change Password Tests
Image Uploading Setup
The Imaging Library
The Edit Form and Template for Image
The Edit View for Imaging
Setting up Amazon S3
Section 3 Quiz

The Relationship Module

Starting the Relationship App
Playing with the Relationship Model
Get Relationship Helper
The Relationship Frontend
Relationship Views
More Work on Relationship Views
Complete Relationship Frontend
Relationship Tests
Relationship Tests Part 2
Adding a Profile Image
The Friends Sidebar
The Friends Page
Reusable Follow Button
Relationship Emails
Section 4 Quiz

The Feed Module

Introduction to the Fan Out pattern
The Feed Model
Adding the Feed Form to Profile View
Feed Views
Feed Process Message
Feed Message Template
Messages in Profile Views
The Feed Home
Feed Images - Model, Form, Views
Feed images - Resizing, Templates
Feed Timestamp - Milliseconds
Feed Comments - Model and Views
Feed Comments - Templates
Comment Cleanup - Adding Likes
Only See Friend's Posts
Don't Distribute to Blocked Users
Feed Tests - Part 1
Feed Tests - Part 2
The New Homepage
Section 5 Quiz

Final Project

Final Project

Bonus Section

Course Promo

Screenshots

Advanced Scalable Python Web Development Using Flask - Screenshot_01Advanced Scalable Python Web Development Using Flask - Screenshot_02Advanced Scalable Python Web Development Using Flask - Screenshot_03Advanced Scalable Python Web Development Using Flask - Screenshot_04

Reviews

Shubham
May 23, 2020
I am totally unaware with AWS. How to setup cloud9 environment ? No details were mentioned. With some other tutorial, i could setup C9 but now mongo db is not installing due to error. "ackages excluded due repository priority protections"
Chieh
August 11, 2018
Great course for building up a website by using flask on python, but a little too easy for those experienced by using other languages like Java / .Net etc.
Cássio
April 5, 2018
I think it's the course is very basic. Only CRUDS in a web system. And the code does not follow PEP8. I confess that I was waiting for the "Advanced" contained in the title of the course.
Manpreet
March 4, 2018
Good course for stepping into the world of creating real-world applications with excellent course content needed for beginners to take it to the advanced level
Jason
January 4, 2018
I am grateful for the instructor taking the time to make this course. The content is real-world applicable and the provided examples are very useful and relevant towards learning the content. I appreciate the technologies used, including Cloud9, MongoDB, and the AWS platform. It was also very useful to have a link to Github with the code used in each chapter. However, I found myself getting frustrated throughout the course due to the instructors slow rate of speech and peppering of the word "um" within his narration. I think the instructor could benefit from writing out what he was going to say ahead of the recording of each chapter. Consistently and frequently throughout the course the instructor (while explaining a complex technical principle) would pause while trying to think of a word he wanted to use. These pauses would be met with several "ums", until the word was found. This may sound petty and trivial, but when you are trying to learn complex material while simultaneously coding along...it gets frustrating. I viewed most of the course at 2X speed which made this less distracting. However, an additional problem surfaced as a result of needing to view the course at 2x speed. The instructor uses a very large font size setting within his Cloud9 editor, causing a good portion of the code to run off the screen. The 2x speed makes the instructors rate of speech (spoken stream of consciousness really since he is not reading from a script) normal, but the typing was subsequently very quick. As I would try to type along, I would have to pause the video often to see the entirety of a line before the carriage return would no longer make it visible on the screen. Not sure if this makes sense, but basically 1) viewing at 2x makes instructor rate of speech tolerable, 2) editor font size very large causing much of code to be cutoff the screen, 3) when the instructor is typing the cursor follows the code to the end of the screen, 4) carriage return moves cursor to the left of the screen making what was just typed no longer visible since it is off the screen, 5) typing along is now not possible because the code if off the screen so the video most be backed up and paused to see what was typed. If the instructor instead used a font size that allowed the code to remain on the screen, this would not have been an issue at all and the entire course would have been vastly improved. Honestly, I would given the course 5 stars instead of 4 stars if not for this issue. The content is so phenomenal that I would have been able to overlook the rate of speech and "ums" at 2x if able to keep typing uninterrupted by the font size issue. PROS: - Real world applicable examples - Thorough explanation - Use of Cloud9 IDE - Use of MongoDB - Explanation of scalable principles - Use of unit testing - Use of MVC principles - Use of AWS SES - Use of AWS S3 - Provides link to Github for code used in each chapter CONS: - Instructor speaks in stream of consciousness and not from a script - The instructor speaks slowly and uses "um" in a copious and distracting fashion - Font size of the editor cause a good portion of the code to run off screen
Luis
November 18, 2017
I really loved the course! I think what I´ve learned here is a game-changing on my new journey as a developer. Definitely looking for more from you Jorge! Thanks very much!
Torbjörn
September 14, 2017
Very good course on a Flask implementation with a lot of advanced User handling. Instructor is extremely good. Recommended.
Tai
July 21, 2017
Another great course from Jorge. There are some glitches towards the end where some parts were skipped, and repository does not match the progress, but it is easily forgiven for a complicated course like this.
Alexander
June 22, 2017
Instructor's thoughts are not very well organized or coherent. Class prerequisites are stated as: Python and basic Flask, however the instructor fails to touch on even the basic database fundamentals.
Eric
March 18, 2017
I'm very pleased with the quality course. It taught me a lot and allowed me to practice my recently acquired git commands. Thank you Jorge! -Eric
Stu
January 1, 2017
Much like Jorge's last Flask course, this is a thoroughly explained, well thought out course, broken into manageable lectures which avoid overloading you with information. Jorge himself is a true expert and a great teacher, who always replies to student's questions. The course introduces more key Flask concepts and is highly enjoyable. I would definitely recommend this course.
Justin
September 30, 2016
Jorge is the best teacher I've ever encountered. He's extremely smart and knowledgable. Can't wait for his next course!
Nigel
September 26, 2016
This is a great course. If you are new to flask, definitely complete Jorge's introductory Flask course first.
Michael
September 20, 2016
So far the content is basic. I look forward to the next steps to see if I will finally learn something. also, the teacher is using cloud9. why not using docker or vagrant as these days this is common workflow
Charles
September 11, 2016
Great course, easy to follow, very well structured and informative. If your starting out I recommend taking the instructors other course first: 'Professional Python Web Development Using Flask'

Charts

Price

Advanced Scalable Python Web Development Using Flask - Price chart

Rating

Advanced Scalable Python Web Development Using Flask - Ratings chart

Enrollment distribution

Advanced Scalable Python Web Development Using Flask - Distribution chart
599504
udemy ID
9/1/2015
course created date
3/22/2020
course indexed date
Bot
course submited by