More than 8 Hours of Video Instruction
Advanced Web Development in Python with Django LiveLessons is intended for people familiar with web development who understand the basics of Django and want to get more out of it but are unfamiliar with more difficult topics such as authentication, database query optimization, and caching. The course builds directly on top of Andrew Pinkham's previous course, Web Development in Python with Django LiveLessons, starting with the same code base where the class left off and building new features in the same project, making for a clear and clean learning progression. While the previous course is not a hard prerequisite, the prerequisites for that course and the concepts introduced in it will be necessary to understand the videos. A review lesson enables people to judge for themselves whether the course is appropriate for their level.
About the Instructor
Andrew Pinkham is the founder and lead engineer at JamBon Software, which provides development consulting services. He is the author of Django Unleashed¬†(Pearson) and a popular speaker at DjangoCon U.S., and provides instruction in Python and Django. Andrew specializes in web and mobile products and enjoys communicating complex ideas in simple ways. He is also passionate about usability, security, and distributed systems. He is a 2009 graduate of Dartmouth College and currently resides in Boston, Massachusetts.
Learn How To
- Write tests for Django
- Implement authentication in Django
- Optimize Django performance
- Enhance applications
- Enable user media and processing with a Celery queue
- Utilize asynchronous Python
Who Should Take This Course
Python programmers and other software developers interested in leveraging the Django web framework to build web applications
Python programming experience
Lesson 1:Dip Your Toes Into Test Writing
Lesson 1 starts off the course with testing, which is crucial to successful software development. The lesson begins by looking at the why, what, and how of testing, and then dives into how to test all the different components in Django. You also get a taste of Django's check framework.
Lesson 2:Protect Site Access with Authentication
Lesson 2 starts with authentication, or login and logout, but the focus is not limited to just that. As always, the lesson begins by discussing the fundamentals, and then dives into how they work with Django. We'll build login and logout, views to allow users to change their password, views to allow people to reset forgotten passwords, and even set up new user registration.
Lesson 3:Protect API Access with Authentication
Lesson 3 is about how to use authentication and authorization to protect API endpoints. While the fundamentals are similar to Lesson 2, the actual work is different. The lesson starts with implementing token authentication and then switches to a more robust OAuth 2 authentication system. Andrew switches up the testing gears in this lesson, using Postman to interact with our API.
Lesson 4 is about optimization. Andrew talks about how you should optimize a back-end web app and what common optimization problems are. You learn how to optimize database interactions when using models, and Andrew talks about how to improve the site with caching.
Lesson 5:Enhance the Application with Pagination, Static Content, and a Sitemap
Lesson 5 adds a bit of polish to your website. You use some of Django's contributed library and generic views to make navigation easier. This includes adding a few pages to organize things alphabetically and by date, as well as how to generate RSS and Atom feeds and a sitemap for search engines. Finally, you add some basic CSS to your site.
Lesson 6:Enabling User Media and Processing with a Celery Queue
Lesson 6 covers one of the places where Django needs a bit of help. The problem, in short, is that web browsers expect you to get a response back to them very quickly; however, sometimes you need to perform a computation for longer than that round-trip time. For your app to handle situations like these, you’ll need to offload work from Django to some other process. You learn how to use Celery and queues in tandem with Django to handle this sort of scenario.
Lesson 7:Asynchronous Python Lesson 7 delves into the changes happening in Python and Django. Andrew discusses Python's new async features, presents an example of using async in a different framework, and even leads you through programming an app that uses WebSockets as well as HTTP. Finally, Andrew discusses how these changes will affect Django in the near future.
About Pearson Video Training
Pearson publishes expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. These professional and personal technology videos feature world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include IT Certification, Network Security, Cisco Technology, Programming, Web Development, Mobile Development, and more. Learn more about Pearson Video training at http://www.informit.com/video.
Table of contents
Lesson 1: Dip Your Toes into Test Writing
- Learning objectives
- 1.1 Introduce testing
- 1.2 Demonstrate test-driven development in Django--Part 1
- 1.3 Demonstrate test-driven development in Django--Part 2
- 1.4 Write tests for views and templates
- 1.5 Write tests for models
- 1.6 Write Django checks
- 1.7 Use factories for data generation
- 1.8 Property test serializers with Hypothesis
- 1.9 Upgrade Django
- 1.10 Discuss continuous delivery on Heroku
Lesson 2: Protect Site Access with Authentication
- Learning objectives
- 2.1 Preview the final result
- 2.2 Introduce identification, authentication, and authorization
- 2.3 Define a custom user model for better identity-management and internationalization
- 2.4 Demonstrate the use of Content-Types, User, Permission, and Group
- 2.5 Configure the site to use the Argon2 password hasher instead of PBKDF2
- 2.6 Build web pages to log in and log out users
- 2.7 Customize login and logout
- 2.8 Build pages for users to change their passwords
- 2.9 Customize authentication and password URLs
- 2.10 Allow users to reset their forgotten password
- 2.11 Protect pages with login
- 2.12 Protect pages with permissions
- 2.13 Allow new user registration
- 2.14 Configure Django to send emails
- Lesson 3: Protect API Access with Authentication
- Lesson 4: Performance
- Lesson 5: Enhance the Application with Pagination, Static Content, and a Sitemap
- Lesson 6: Enabling User Media and Processing with a Celery Queue
- Lesson 7: Asynchronous Python
- Title: Advanced Web Development in Python with Django
- Release date: November 2019
- Publisher(s): Pearson
- ISBN: 0136552943
You might also like
Web Development in Python with Django: Building Backend Web Applications and APIs with Django
9+ Hours of Video Instruction Leverage Python and the Django web framework to develop applications quickly …
The Complete Python Course including the Django Web Framework
Python is a most popular programming language in the world. Pretty much everybody is using Python …
Django A-Z: Build and Deploy Web Application with Python and Django
Embark on a structured web development journey from scratch with Python as your trusty companion. This …
Python Django Web Development: To-Do App
Django and Python may seem challenging at first, but with the right guidance, you can gain …