1. Урок 1.00:01:02
    Introduction to this section
  2. Урок 2.00:08:27
    Variables in Python
  3. Урок 3.00:02:01
    Solution to coding exercise: Variables
  4. Урок 4.00:06:27
    String formatting in Python
  5. Урок 5.00:05:17
    Getting user input
  6. Урок 6.00:03:20
    Writing our first Python app
  7. Урок 7.00:06:32
    Lists, tuples, and sets
  8. Урок 8.00:04:40
    Advanced set operations
  9. Урок 9.00:04:41
    Solution to coding exercise: Lists, tuples, sets
  10. Урок 10.00:05:01
    Booleans in Python
  11. Урок 11.00:08:18
    If statements
  12. Урок 12.00:02:03
    The 'in' keyword in Python
  13. Урок 13.00:08:19
    If statements with the 'in' keyword
  14. Урок 14.00:11:08
    Loops in Python
  15. Урок 15.00:03:09
    Solution to coding exercise: Flow control
  16. Урок 16.00:07:25
    List comprehensions in Python
  17. Урок 17.00:08:32
    Dictionaries
  18. Урок 18.00:08:29
    Destructuring variables
  19. Урок 19.00:10:42
    Functions in Python
  20. Урок 20.00:07:41
    Function arguments and parameters
  21. Урок 21.00:03:55
    Default parameter values
  22. Урок 22.00:07:20
    Functions returning values
  23. Урок 23.00:02:31
    Solution to coding exercise: Functions
  24. Урок 24.00:07:53
    Lambda functions in Python
  25. Урок 25.00:04:02
    Dictionary comprehensions
  26. Урок 26.00:06:17
    Solution to coding exercise: Dictionaries
  27. Урок 27.00:10:25
    Unpacking arguments
  28. Урок 28.00:08:45
    Unpacking keyword arguments
  29. Урок 29.00:15:53
    Object-Oriented Programming in Python
  30. Урок 30.00:06:26
    Magic methods: __str__ and __repr__
  31. Урок 31.00:05:05
    Solution to coding exercise: Classes and objects
  32. Урок 32.00:14:04
    @classmethod and @staticmethod
  33. Урок 33.00:05:55
    Solution to coding exercise: @classmethod and @staticmethod
  34. Урок 34.00:08:33
    Class inheritance
  35. Урок 35.00:06:09
    Class composition
  36. Урок 36.00:05:09
    Type hinting in Python 3.5+
  37. Урок 37.00:09:34
    Imports in Python
  38. Урок 38.00:08:54
    Relative imports in Python
  39. Урок 39.00:12:48
    Errors in Python
  40. Урок 40.00:05:05
    Custom error classes
  41. Урок 41.00:07:53
    First-class functions
  42. Урок 42.00:07:13
    Simple decorators in Python
  43. Урок 43.00:03:34
    The 'at' syntax for decorators
  44. Урок 44.00:02:25
    Decorating functions with parameters
  45. Урок 45.00:04:51
    Decorators with parameters
  46. Урок 46.00:06:04
    Mutability in Python
  47. Урок 47.00:04:28
    Mutable default parameters (and why they're a bad idea)
  48. Урок 48.00:04:01
    Overview of the project we'll build
  49. Урок 49.00:04:37
    Initial set-up for a Flask app
  50. Урок 50.00:04:06
    Your first REST API endpoint
  51. Урок 51.00:03:44
    What is JSON?
  52. Урок 52.00:04:30
    How to interact with and test your REST API
  53. Урок 53.00:05:38
    How to create stores in our REST API
  54. Урок 54.00:07:56
    How to create items in each store
  55. Урок 55.00:04:40
    How to get a specific store and its items
  56. Урок 56.00:13:29
    What are Docker containers and images?
  57. Урок 57.00:11:16
    How to run a Flask app in a Docker container
  58. Урок 58.00:15:41
    Data model improvements for our API
  59. Урок 59.00:07:08
    General improvements to our first REST API
  60. Урок 60.00:09:06
    New endpoints for our first REST API
  61. Урок 61.00:06:27
    How to run the API in Docker with automatic reloading and debug mode
  62. Урок 62.00:10:26
    How to use Blueprints and MethodViews in Flask
  63. Урок 63.00:04:02
    How to write marshmallow schemas for our API
  64. Урок 64.00:04:32
    How to perform data validation with marshmallow
  65. Урок 65.00:04:40
    Decorating responses with Flask-Smorest
  66. Урок 66.00:02:08
    Overview and why use SQLAlchemy
  67. Урок 67.00:04:46
    How to code a simple SQLAlchemy model
  68. Урок 68.00:09:43
    How to write one-to-many relationships using SQLAlchemy
  69. Урок 69.00:07:55
    How to configure Flask-SQLAlchemy with your Flask app
  70. Урок 70.00:07:22
    How to insert data into a table using SQLAlchemy
  71. Урок 71.00:03:59
    How to find models in the database by ID or return a 404
  72. Урок 72.00:05:11
    How to update models with SQLAlchemy
  73. Урок 73.00:00:50
    How to retrieve list of all models
  74. Урок 74.00:01:12
    How to delete models with SQLAlchemy
  75. Урок 75.00:03:54
    Conclusion of this section
  76. Урок 76.00:02:48
    Changes in this section
  77. Урок 77.00:10:54
    One-to-many relationship between stores and tags
  78. Урок 78.00:11:24
    Many-to-many relationship between items and tags
  79. Урок 79.00:10:16
    Who uses the JWT?
  80. Урок 80.00:04:17
    How to set up Flask-JWT-Extended with our app
  81. Урок 81.00:02:08
    Coding the User model and schema
  82. Урок 82.00:09:36
    How to add a register endpoint to the REST API
  83. Урок 83.00:08:39
    How to add a login endpoint to the REST API
  84. Урок 84.00:06:01
    Protect endpoints by requiring a JWT
  85. Урок 85.00:05:56
    JWT claims and authorization
  86. Урок 86.00:06:20
    How to add logout to the REST API
  87. Урок 87.00:04:33
    Request chaining with Insomnia
  88. Урок 88.00:09:31
    Token refreshing with Flask-JWT-Extended
  89. Урок 89.00:01:39
    How to add Flask-Migrate to our Flask app
  90. Урок 90.00:05:43
    Initialize your database with Flask-Migrate
  91. Урок 91.00:05:02
    Change SQLAlchemy models and generate a migration
  92. Урок 92.00:03:20
    Manually review and modify database migrations
  93. Урок 93.00:09:44
    What are Git repositories and commits?
  94. Урок 94.00:08:28
    Initialize a Git repository for our project
  95. Урок 95.00:02:37
    Writing Markdown for documents and commits
  96. Урок 96.00:05:28
    Remote repositories and how to use them
  97. Урок 97.00:06:18
    Git branches and merging
  98. Урок 98.00:05:31
    Merge conflicts and how to resolve them
  99. Урок 99.00:01:39
    Overview of the final e-book chapters
  100. Урок 100.00:05:55
    Creating a Render.com web service
  101. Урок 101.00:06:14
    How to run Flask with gunicorn in Docker
  102. Урок 102.00:01:52
    Get a deployed PostgreSQL database
  103. Урок 103.00:17:46
    Use PostgreSQL locally and in production
  104. Урок 104.00:01:39
    Test the finished production app
  105. Урок 105.00:04:48
    How to send emails with Python and Mailgun
  106. Урок 106.00:09:38
    How to send emails when users register
  107. Урок 107.00:05:06
    What is a task queue and setting up a Redis database
  108. Урок 108.00:06:27
    How to Populate and consume the task queue with rq
  109. Урок 109.00:05:25
    How to process background tasks with the rq worker
  110. Урок 110.00:10:18
    How to send HTML emails using Mailgun and Python
  111. Урок 111.00:05:40
    How to deploy a background worker to render.com