1. Урок 1.00:02:02
    Introduction
  2. Урок 2.00:00:54
    Installing Python
  3. Урок 3.00:02:30
    Integers and Strings
  4. Урок 4.00:02:11
    Variables in Python
  5. Урок 5.00:01:34
    Solution to coding exercise: creating variables
  6. Урок 6.00:05:18
    Methods print(), str(), and int()
  7. Урок 7.00:03:47
    Solution to coding exercise: print, str, and int
  8. Урок 8.00:04:51
    The format() method
  9. Урок 9.00:03:38
    Solution to coding exercise: format()
  10. Урок 10.00:04:23
    Getting user input with the input() method
  11. Урок 11.00:01:11
    Solution to coding exercise: user input
  12. Урок 12.00:03:58
    Creating our own methods in Python
  13. Урок 13.00:02:53
    Solution to coding exercise: creating functions
  14. Урок 14.00:09:21
    If statements in Python
  15. Урок 15.00:04:37
    Solution to coding exercise: if statements
  16. Урок 16.00:02:10
    Section 1 assignment video
  17. Урок 17.00:01:32
    Our Development Environment
  18. Урок 18.00:05:28
    Creating virtual environments for Python development
  19. Урок 19.00:03:33
    Our Age application in PyCharm
  20. Урок 20.00:05:13
    (aside) Tweaking PyCharm
  21. Урок 21.00:07:37
    Understanding JSON and XML
  22. Урок 22.00:04:46
    Making our first HTTP GET request
  23. Урок 23.00:04:00
    Finding our chair price parsing HTML
  24. Урок 24.00:07:00
    Parsing HTML data using BeautifulSoup
  25. Урок 25.00:06:46
    Using the price as a number
  26. Урок 26.00:07:56
    Installing MongoDB
  27. Урок 27.00:07:20
    Introduction to MongoDB
  28. Урок 28.00:06:36
    Creating a PyCharm project that uses MongoDB and pymongo
  29. Урок 29.00:06:20
    Simplifying lists in Python with list comprehension
  30. Урок 30.00:14:02
    Introduction to Object-Oriented Programming
  31. Урок 31.00:06:20
    Creating our first class, the Post
  32. Урок 32.00:14:41
    Creating a Database class for database interactions
  33. Урок 33.00:03:25
    The last few Post methods
  34. Урок 34.00:05:04
    Having default parameter values in Python methods
  35. Урок 35.00:02:35
    Understanding dates in Python: the datetime module
  36. Урок 36.00:04:55
    Verifying that the Post methods all work
  37. Урок 37.00:13:46
    The Blog class and @classmethods
  38. Урок 38.00:05:37
    Verifying the Blog methods all work
  39. Урок 39.00:09:46
    Starting the menu and user interactions
  40. Урок 40.00:06:33
    Finalising the Menu class
  41. Урок 41.00:03:38
    Finally, running the application!
  42. Урок 42.00:07:55
    Introduction to REST APIs
  43. Урок 43.00:07:26
    How can we make our own API? What is Flask?
  44. Урок 44.00:09:33
    Python cls() and argument unpacking
  45. Урок 45.00:05:23
    Creating the User model for our application
  46. Урок 46.00:10:21
    Starting developing the User model
  47. Урок 47.00:07:41
    Creating the login and register
  48. Урок 48.00:06:32
    Finding blogs by a specific author
  49. Урок 49.00:07:10
    Allowing creation of blogs and posts
  50. Урок 50.00:04:06
    Creating the static resources and templates
  51. Урок 51.00:08:36
    Our first template in Jinja2
  52. Урок 52.00:08:02
    Beginning CSS styling of pages
  53. Урок 53.00:14:34
    The user login page
  54. Урок 54.00:06:13
    The user registration page
  55. Урок 55.00:14:53
    Using Bootstrap for the first time for great styling
  56. Урок 56.00:09:45
    How can we display a list of blogs?
  57. Урок 57.00:08:14
    Displaying a list of posts
  58. Урок 58.00:02:04
    The Jinja2 if statement for structure control
  59. Урок 59.00:09:15
    Creating new blogs (front-end)
  60. Урок 60.00:09:01
    Finalising the application by allowing to create posts!
  61. Урок 61.00:05:28
    Creating new Python projects in PyCharm 2019
  62. Урок 62.00:06:23
    What are Flask Blueprints?
  63. Урок 63.00:05:31
    Creating our new app structure
  64. Урок 64.00:03:33
    Getting page content with requests
  65. Урок 65.00:04:29
    How to find the price on a website
  66. Урок 66.00:03:30
    Getting an element's content with BeautifulSoup
  67. Урок 67.00:10:15
    Using RegEx to get specific information from a string
  68. Урок 68.00:10:39
    Creating our Item model
  69. Урок 69.00:04:06
    Adding type hinting to our application so far
  70. Урок 70.00:01:04
    Starting up MongoDB and making sure it's working
  71. Урок 71.00:06:24
    Preparing our Item model for saving in MongoDB
  72. Урок 72.00:07:43
    Inserting Items into MongoDB
  73. Урок 73.00:06:29
    Retrieving Items from MongoDB
  74. Урок 74.00:16:37
    Notifying users in a simple way when the price is reached
  75. Урок 75.00:08:06
    What is an abstract class in Python?
  76. Урок 76.00:10:48
    Making more methods generic
  77. Урок 77.00:09:02
    Finishing up the Model superclass
  78. Урок 78.00:03:59
    How to force a subclass to have properties of a parent class
  79. Урок 79.00:08:24
    Type hinting the current object type in a method return
  80. Урок 80.00:23:03
    Creating items through the web interface
  81. Урок 81.00:09:38
    Styling our site using Bootstrap 4
  82. Урок 82.00:06:33
    Creating the Items blueprint
  83. Урок 83.00:13:02
    Creating a page to show all items
  84. Урок 84.00:09:52
    Creating alerts through the web interface
  85. Урок 85.00:04:27
    A couple problems and solutions with our app... and our way moving forward
  86. Урок 86.00:14:56
    Introducing stores to our application
  87. Урок 87.00:04:44
    Getting rid of items
  88. Урок 88.00:05:41
    Testing our app with stores
  89. Урок 89.00:14:00
    Dataclasses in Python 3.7
  90. Урок 90.00:09:28
    Turning our models into dataclasses
  91. Урок 91.00:04:13
    Giving names to alerts in our application
  92. Урок 92.00:03:59
    Saving the last item price
  93. Урок 93.00:08:58
    Creating stores through the web interface
  94. Урок 94.00:10:44
    Editing alert properties
  95. Урок 95.00:03:47
    Linking the alert index to the edit page
  96. Урок 96.00:07:19
    Editing stores
  97. Урок 97.00:03:39
    Deleting alerts
  98. Урок 98.00:01:21
    Deleting stores
  99. Урок 99.00:06:06
    Registering users
  100. Урок 100.00:06:42
    Encrypting passwords in Python with passlib
  101. Урок 101.00:07:27
    Logging in
  102. Урок 102.00:07:11
    Viewing only your own alerts
  103. Урок 103.00:09:48
    What are Python decorators?
  104. Урок 104.00:14:31
    Limiting some pages only to logged in users
  105. Урок 105.00:08:38
    Adding a navigation bar using Bootstrap
  106. Урок 106.00:10:25
    Limiting actions to admins only
  107. Урок 107.00:04:08
    Signing up with Mailgun
  108. Урок 108.00:16:54
    Sending e-mail with Mailgun
  109. Урок 109.00:06:01
    Creating the landing page
  110. Урок 110.00:01:49
    Signing up for GitHub
  111. Урок 111.00:02:55
    Forking the GitHub repository from the last section
  112. Урок 112.00:03:03
    How to install Git on Windows
  113. Урок 113.00:02:08
    How to use the Windows Git Shell
  114. Урок 114.00:02:28
    How to install Git on Mac
  115. Урок 115.00:01:07
    How to install Git on Linux
  116. Урок 116.00:03:39
    Cloning the Git repository from GitHub onto your computer
  117. Урок 117.00:07:49
    File statuses and stages in Git
  118. Урок 118.00:05:27
    How to generate an SSH key for GitHub
  119. Урок 119.00:08:27
    Git commands: git commit and git push
  120. Урок 120.00:01:18
    Git command: git log to check previous commits
  121. Урок 121.00:03:05
    Signing up to Heroku
  122. Урок 122.00:01:01
    Installing the Heroku Toolbelt (Command-Line Interface)
  123. Урок 123.00:03:48
    Creating a new Heroku app
  124. Урок 124.00:05:09
    Getting values from environment variables in Python
  125. Урок 125.00:01:23
    Setting the environment variables in Heroku
  126. Урок 126.00:05:57
    Setting up Heroku required files in our project so Heroku knows what to run
  127. Урок 127.00:02:22
    Committing and pushing the new files to GitHub
  128. Урок 128.00:01:58
    Adding servers on Heroku (called 'scaling dynos')
  129. Урок 129.00:02:26
    Deploying our app to Heroku
  130. Урок 130.00:02:50
    Adding MongoLab to our Heroku app as an add-on
  131. Урок 131.00:02:07
    How to create a new MongoLab user
  132. Урок 132.00:02:27
    Changing our program's database URI to match MongoLab's
  133. Урок 133.00:03:23
    Using the Heroku logs to fix an Internal Server Error
  134. Урок 134.00:02:17
    Running our deployed app in Heroku
  135. Урок 135.00:03:19
    Another error: using the URI default database
  136. Урок 136.00:04:04
    Verifying the app works, and next steps in the course
  137. Урок 137.00:05:41
    Creating a DigitalOcean Droplet
  138. Урок 138.00:06:07
    Creating a non-root user
  139. Урок 139.00:08:03
    Configuring our new user
  140. Урок 140.00:03:34
    Installing MongoDB in Ubuntu
  141. Урок 141.00:04:00
    Getting our application code
  142. Урок 142.00:11:42
    Configuring uWSGI and the system service
  143. Урок 143.00:07:25
    Configuring nginx
  144. Урок 144.00:03:35
    Creating a cron job in Ubuntu
  145. Урок 145.00:00:28
    Course conclusion. Thank you!
  146. Урок 146.00:01:25
    Bonus lecture: other courses and next steps