About Course
If you already know a little bit about programming (with Python or any other language), you’re ready to start this course! Also, I’ve included a complete Python Refresher section to help you get up to speed with Python if you don’t know it well already.
Course Content
01 – Welcome to this Course!
-
001 Curriculum overview
02:04
02 – A Full Python Refresher
-
001 Introduction to this section
01:02 -
003 Variables in Python
08:27 -
005 String formatting in Python
06:27 -
006 Getting user input
05:17 -
008 Writing our first Python app
03:20 -
009 Lists, tuples and sets
06:32 -
010 Advanced set operations
04:40 -
011 Booleans in Python
05:01 -
012 If statements
08:18 -
013 The in keyword in Python
02:02 -
014 If statements with the in keyword
08:19 -
016 Loops in Python
11:09 -
017 List comprehensions in Python
07:25 -
018 Dictionaries
08:32 -
019 Destructuring variables
08:30 -
020 Functions in Python
10:43 -
021 Function arguments and parameters
07:42 -
023 Default parameter values
03:55 -
024 Functions returning values
07:21 -
025 Lambda functions in Python
07:54 -
026 Dictionary comprehensions
04:02 -
027 Unpacking arguments
10:25 -
028 Unpacking keyword arguments
08:46 -
029 Object-Oriented Programming in Python
15:55 -
030 Magic methods __str__ and __repr__
06:27 -
031 @classmethod and @staticmethod
14:05 -
032 Class inheritance
08:33 -
033 Class composition
06:09 -
034 Type hinting in Python 3.5+
05:09 -
035 Imports in Python
09:36 -
036 Relative imports in Python
08:54 -
037 Errors in Python
12:50 -
038 Custom error classes
05:06 -
039 First-class functions
07:54 -
040 Simple decorators in Python
07:14 -
041 The ‘at’ syntax for decorators
-
042 Decorating functions with parameters
02:25 -
043 Decorators with parameters
04:51 -
044 Mutability in Python
06:04 -
045 Mutable default parameters (and why they’re a bad idea)
03 – Website Basics
-
001 How do websites and the internet work
04:51 -
002 Front end vs. Back end development
02:16 -
003 Key web technologies HTML, CSS, and JavaScript
02:58 -
004 The Browser Inspector using the developer tools
06:27
04 – Page structure with HTML
-
001 Elements the basic components of HTML
03:08 -
004 A full example HTML and CSS
10:54 -
005 Some of the most common HTML elements
05:19 -
007 What are HTML content categories
05:30 -
009 Nesting elements in HTML
05:50 -
010 Starting our first HTML project
03:57 -
011 Which HTML elements can’t be nested
02:14 -
012 An overview of HTML container elements
06:16 -
013 A detailed look at HTML attributes
06:10 -
015 Adding images to our project
04:47 -
016 What is semantic HTML
05:40 -
017 Document-level annotations in HTML
05:51 -
019 Completing our HTML project with document-level annotations
03:06 -
020 The best HTML resource MDN
02:04
05 – Page style with CSS
-
001 How to link a CSS file
04:45 -
003 Basic CSS selectors targeting specific elements
08:14 -
004 How colours work RGB, Hexadecimal, and HSL
05:55 -
006 Colours in CSS text and background
06:40 -
007 Starting to write our project’s CSS file
06:14 -
008 Inheritance in CSS
05:44 -
009 What properties can’t be inherited
06:41 -
010 The CSS Box Model
05:27 -
012 Overview of CSS units
03:46 -
013 Working with spacing in our project
04:56 -
014 Descendent selectors in CSS
07:12 -
015 What is specificity in CSS
07:38 -
016 BEM a simpler approach to CSS targeting
14:44
06 – Project 1 Micro Blog (design+site)
-
001 Overview of this section’s project
03:29 -
003 From our YouTube channel How to start a new software project
11:55 -
004 Step 1 becoming a user
05:51 -
005 Step 2 populating the backlog
05:56 -
006 Step 3 wireframing or rough design
02:07 -
007 Step 4 pixel perfect design
18:02 -
008 Step 5 creating the page structure
05:03 -
009 Step 6 coding the page structure with HTML
04:44 -
010 What are SVGs
03:00 -
011 How to include images in our HTML site
03:07 -
012 Finishing the header and navigation
03:42 -
013 HTML forms sending data
05:41 -
014 HTML forms working with textareas
03:12 -
015 Creating the footer with multiple columns
03:34 -
016 How to style the header and menu bar
10:55 -
017 Setting the font family in our project
00:39 -
018 How to style HTML forms and inputs
07:56 -
019 How to style the micro blog entries
03:33 -
020 How to style the page footer
06:39
07 – Backend Development with Flask
-
001 Hello, world with Flask
08:01 -
002 Using render_template to send longer HTML strings
04:36 -
003 What is Jinja2
05:38 -
004 Jinja2 Expressions
08:22 -
005 Working with data structures in Jinja2
06:39 -
006 Conditional statements in Jinja2
05:25 -
007 Using loops in Jinja2
06:09 -
008 Setting up our Microblog project with Flask
06:41 -
009 Receiving form data using Flask
06:27 -
010 Displaying past entries in the Microblog project
04:37 -
011 Formatting dates correctly in our entries
03:08 -
012 Introduction to MongoDB
06:49 -
013 Accessing MongoDB with Compass and Atlas
09:15 -
015 Storing Microblog entries in MongoDB
06:36 -
017 Retrieving the Microblog entries from MongoDB
03:08 -
018 How to use Flask’s app factory pattern
02:49
08 – Deploying Flask Apps to Render.com
-
001 What is the requirements.txt file
03:36 -
002 What do deployment services do for us
01:42 -
003 Preparing our app for deployment
04:10 -
004 Deploy a Flask app to Render.com
05:47
09 – Jinja2 Mastery Level I
-
001 Defining Jinja variables using the ‘set’ keyword
04:13 -
002 Jinja filters to call inline functions using the pipe operator
02:53 -
003 Jinja macros to improve reusability and remove duplication
07:32 -
004 Jinja inheritance using ‘extends’ and ‘block’
07:05 -
005 How to use CSS style tags with inheritance
05:49 -
006 Handling CSS in larger apps with inheritance
05:26 -
007 Jinja tests using the ‘is’ keyword
06:46 -
008 The Jinja Environment and Rendering Context
05:52 -
009 Routing with Jinja using url_for in your templates
07:40
10 – Project 2 Habit Tracker
-
001 Habit tracker project overview
01:53 -
002 Displaying and saving habits
14:02 -
003 Styling the habit tracker
11:25 -
004 Adding date navigation
14:06 -
005 Styling the date navigation
07:20 -
006 Completing habits
15:31 -
007 Adding Flask blueprints
07:26 -
009 Using MongoDB in the habit tracker
16:22
11 – Jinja Mastery Level II
-
001 Jinja Includes with the include keyword
13:39 -
002 Whitespace control in Jinja
04:30 -
003 Jinja escaping and unescaping
03:00 -
004 The call block for Jinja macros
05:16
12 – Project 3 Portfolio
-
001 Portfolio Project Overview
01:59 -
002 Making our Flask app for this project
05:14 -
003 The base template and nav bar
08:02 -
004 Adding an about page to our Flask app
03:17 -
005 Adding a contact page to our Flask app
07:20 -
006 Introduction to CSS Grid
12:47 -
007 Media queries with CSS for responsive development
04:34 -
008 Displaying projects in the homepage using CSS Grid
22:09 -
009 Creating the individual project pages
19:41 -
010 Error handling with Flask using app.errorhandler
04:14
13 – Authentication in Flask Apps
-
001 What are cookies What are sessions
08:39 -
002 Registering users in your Flask apps
11:29 -
003 Logging users in with Flask
07:42 -
004 Password hashing (or encryption) with passlib
09:18 -
005 Creating a ‘login required’ decorator
06:46
14 – Project 4 Movie Watchlist
-
001 Project overview and CSS variables
15:20 -
002 Adding a nav bar
15:24 -
003 Adding a footer
01:05 -
004 Putting the page layout together
02:56 -
005 How to toggle dark mode in a Flask app
09:55 -
006 Create a form with WTForms
07:04 -
007 Render a WTForm in our template
18:32 -
008 Receive and validate data using WTForms
14:01 -
009 Displaying a table of all movies
11:18 -
010 Creating the movie details page
10:08 -
011 Setting movie ratings
12:35 -
012 Set the last watched date
03:23 -
013 Create a custom WTForm Widget
07:05 -
014 Editing movies and pre-populating a form
07:25 -
015 Add user signups to a Flask app
09:48 -
016 Add user logins to a Flask app
09:44 -
017 Personalize pages based on the logged in user
08:11 -
018 Add user logouts to a Flask app
02:24
Student Ratings & Reviews
No Review Yet