Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай 100 days of web in python (#100DaysOfWeb in Python), а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:03:40
    Welcome to the course
  • Урок 2. 00:01:02
    The rules of #100DaysOfCode
  • Урок 3. 00:04:51
    Topics covered
  • Урок 4. 00:02:03
    Why Python for #100DaysOfCode
  • Урок 5. 00:02:21
    Course flow
  • Урок 6. 00:01:30
    Meet your instructors
  • Урок 7. 00:01:11
    Need a Python primer?
  • Урок 8. 00:02:14
    Git the source code
  • Урок 9. 00:01:29
    Three devs are better than one
  • Урок 10. 00:00:34
    Julian's setup
  • Урок 11. 00:00:36
    Bob's setup
  • Урок 12. 00:02:46
    Michael's setup
  • Урок 13. 00:02:48
    PyBites code challenge platform
  • Урок 14. 00:02:05
    Video player: A quick feature tour
  • Урок 15. 00:00:59
    Introduction to Flask
  • Урок 16. 00:02:16
    Your Next 4 Days
  • Урок 17. 00:03:40
    Install and Setup Flask
  • Урок 18. 00:02:57
    Setup your Flask app as a package
  • Урок 19. 00:02:33
    Create __init.py__
  • Урок 20. 00:03:10
    Define your Flask app routes in routes.py
  • Урок 21. 00:03:42
    Run your Flask app!
  • Урок 22. 00:03:03
    Persistent FLASK_APP environment variable using python-dotenv
  • Урок 23. 00:04:52
    Creating a basic index.html Flask Template
  • Урок 24. 00:07:19
    Creating the base.html Flask Template
  • Урок 25. 00:04:30
    A new template for a 100DaysOfCode page
  • Урок 26. 00:03:25
    Using CSS, create Menu Bar in the Base Template
  • Урок 27. 00:04:57
    Day 4: Your Turn - What did we learn?
  • Урок 28. 00:01:05
    HTML Chapter Intro
  • Урок 29. 00:01:43
    HTML is easy right?
  • Урок 30. 00:03:41
    A little HTML history
  • Урок 31. 00:00:51
    Our editor for this chapter: WebStorm
  • Урок 32. 00:01:16
    Yahoo, circa 1996
  • Урок 33. 00:12:22
    Building Yaahoo
  • Урок 34. 00:02:42
    Concept: Core HTML tags
  • Урок 35. 00:03:41
    Form basics
  • Урок 36. 00:02:55
    Describing form elements
  • Урок 37. 00:05:37
    Client-side validation
  • Урок 38. 00:02:03
    Your-turn
  • Урок 39. 00:01:39
    Lesson introduction
  • Урок 40. 00:04:50
    What are APIs, why you want them and API Star
  • Урок 41. 00:06:51
    Getting fake cars data with Mockeroo
  • Урок 42. 00:04:07
    API Star structure and its type system
  • Урок 43. 00:11:39
    API methods: GET and POST, testing with Postman
  • Урок 44. 00:03:09
    API methods: PUT and DELETE
  • Урок 45. 00:11:15
    Testing your API with pytest
  • Урок 46. 00:02:42
    Day 3 & 4 - Your turn: build your own API
  • Урок 47. 00:01:23
    CSS chapter intro
  • Урок 48. 00:03:38
    Goals of this chapter
  • Урок 49. 00:04:12
    CSS Zen Garden
  • Урок 50. 00:03:51
    Concept: Structure of a CSS file
  • Урок 51. 00:01:20
    Demo app introduction
  • Урок 52. 00:04:14
    Demo: Exploring CSS selectors
  • Урок 53. 00:01:56
    Concept: Inheritance and specialization
  • Урок 54. 00:04:18
    Demo: Box model
  • Урок 55. 00:01:11
    Concept: Controlling the box in CSS
  • Урок 56. 00:07:19
    Demo: Layout
  • Урок 57. 00:04:03
    Demo: Floating elements
  • Урок 58. 00:00:59
    Concept: Floating elements
  • Урок 59. 00:04:02
    Areas to research further
  • Урок 60. 00:01:08
    Your-turn: Day 2
  • Урок 61. 00:02:20
    Your-turn: Day 3
  • Урок 62. 00:01:41
    Your-turn: Day 4
  • Урок 63. 00:00:35
    Introduction: Calling APIs in Flask
  • Урок 64. 00:02:29
    Your 4 day overview
  • Урок 65. 00:04:38
    Environment setup
  • Урок 66. 00:07:11
    Passing variables between Flask app code and a Template
  • Урок 67. 00:03:47
    Working with the Chuck Norris API
  • Урок 68. 00:05:24
    Passing our Chuck Norris joke to a Template
  • Урок 69. 00:01:36
    Investigating the Poke API
  • Урок 70. 00:08:17
    Creating a form in our Pokemon Template
  • Урок 71. 00:06:46
    Breaking down the Poke API response
  • Урок 72. 00:06:52
    Writing the Pokemon route
  • Урок 73. 00:06:57
    Returning the data to the Pokemon Template
  • Урок 74. 00:04:13
    Day 4: Your Turn - What did we learn?
  • Урок 75. 00:02:02
    Introducing asynchronous web programming
  • Урок 76. 00:04:35
    Synchronous execution concepts
  • Урок 77. 00:06:16
    Synchronous execution demo
  • Урок 78. 00:09:10
    Asynchronous Python execution with async and await
  • Урок 79. 00:02:25
    Asynchronous execution concepts
  • Урок 80. 00:02:43
    Your turn: Day 2 - Async program
  • Урок 81. 00:02:08
    Flask will never be async capable
  • Урок 82. 00:07:12
    Introducing our web app: The cityscape API
  • Урок 83. 00:02:59
    Converting from Flask to Quart
  • Урок 84. 00:05:11
    Adding an async view method / controller method
  • Урок 85. 00:02:34
    Async all the things
  • Урок 86. 00:02:09
    Concept: Quart
  • Урок 87. 00:04:09
    Performance comparison: Flask vs Quart
  • Урок 88. 00:01:42
    Your turn: Day 4 - Async Flask conversion
  • Урок 89. 00:00:49
    Lesson introduction
  • Урок 90. 00:02:52
    4 day plan
  • Урок 91. 00:03:17
    History and why JavaScript
  • Урок 92. 00:04:23
    How to run JS in your browser / terminal / IDE
  • Урок 93. 00:05:28
    Variables (var vs let) and data types
  • Урок 94. 00:04:51
    Arrays
  • Урок 95. 00:05:55
    Conditionals and control flow
  • Урок 96. 00:09:19
    Functions
  • Урок 97. 00:03:53
    Objects
  • Урок 98. 00:03:11
    Day 2: 4 JS exercises
  • Урок 99. 00:08:04
    The Document Object Model (DOM) - targeting elements
  • Урок 100. 00:08:59
    DOM part II: add/remove childs, override CSS, event listeners
  • Урок 101. 00:02:55
    Debugging JavaScript
  • Урок 102. 00:03:31
    Common JS gotchas
  • Урок 103. 00:03:09
    Further study
  • Урок 104. 00:04:08
    Day 4: simple calculator and calorie tracker
  • Урок 105. 00:00:37
    Introduction: Static Sites
  • Урок 106. 00:02:01
    Your 4 day overview
  • Урок 107. 00:04:53
    What exactly is a static site anyway?
  • Урок 108. 00:01:46
    Setup: Create your repo
  • Урок 109. 00:04:45
    Configure Pelican
  • Урок 110. 00:06:49
    Writing our first post!
  • Урок 111. 00:03:48
    Generating the site
  • Урок 112. 00:05:11
    Setting up and deploying to Netlify
  • Урок 113. 00:04:30
    Linking to static content
  • Урок 114. 00:02:23
    How sweet is Netlify auto-build?
  • Урок 115. 00:03:48
    Creating a dedicated static page
  • Урок 116. 00:01:36
    Custom domains on Netlify
  • Урок 117. 00:03:20
    What did we learn?
  • Урок 118. 00:04:07
    Introducing SQLAlchemy
  • Урок 119. 00:01:47
    Our demo app: A scooter sharing startup
  • Урок 120. 00:01:35
    Who uses SQLAlchemy?
  • Урок 121. 00:02:10
    SQLAlchemy Architecture
  • Урок 122. 00:01:13
    Scooter share data model
  • Урок 123. 00:03:39
    Setting up our app
  • Урок 124. 00:05:42
    Modeling with classes
  • Урок 125. 00:03:34
    The rest of the classes
  • Урок 126. 00:03:58
    Connecting to our DB
  • Урок 127. 00:03:29
    Creating the database schema and tables
  • Урок 128. 00:02:36
    The database is created
  • Урок 129. 00:04:25
    Relationships
  • Урок 130. 00:06:02
    Inserts
  • Урок 131. 00:04:38
    The rest of the queries
  • Урок 132. 00:02:05
    Importing starter data
  • Урок 133. 00:06:32
    Finishing the app
  • Урок 134. 00:00:23
    Listen to the interview
  • Урок 135. 00:03:17
    Your turn: Days 3 and 4
  • Урок 136. 00:01:35
    Pyramid chapter intro
  • Урок 137. 00:01:57
    Our demo application
  • Урок 138. 00:02:29
    A spectrum of frameworks
  • Урок 139. 00:02:57
    Pyramid principles
  • Урок 140. 00:00:24
    Get back story
  • Урок 141. 00:02:16
    Creating the app: Intro
  • Урок 142. 00:06:32
    Creating the app: Via the CLI
  • Урок 143. 00:02:46
    Creating the app: Via PyCharm
  • Урок 144. 00:04:31
    A tour of a Pyramid project
  • Урок 145. 00:04:29
    Reorganizing our app
  • Урок 146. 00:04:35
    Adding the data models
  • Урок 147. 00:04:05
    Home page (fake data)
  • Урок 148. 00:06:52
    Home page (database data)
  • Урок 149. 00:01:43
    HTML towards details and a better design
  • Урок 150. 00:03:00
    Design and hero images
  • Урок 151. 00:06:07
    Adding the details route
  • Урок 152. 00:05:49
    Paying a bill: Submitting forms
  • Урок 153. 00:02:52
    Concept: Chameleon
  • Урок 154. 00:03:14
    Your-turn: Day 3
  • Урок 155. 00:00:45
    Your-turn: Day 4
  • Урок 156. 00:02:11
    Intro: what is React, why use it?
  • Урок 157. 00:07:38
    Brushing up some ES6 (modern) JS
  • Урок 158. 00:04:20
    Bootstrap our app with create-react-app
  • Урок 159. 00:06:49
    JSX and rendering a tip component
  • Урок 160. 00:02:43
    Interlude: Python Tips API back-end setup
  • Урок 161. 00:05:46
    Using classes and state in React
  • Урок 162. 00:08:07
    Calling the tips API using axios
  • Урок 163. 00:04:41
    Filter tips while typing in a search field
  • Урок 164. 00:04:41
    Style matching tips with react-highlight-words
  • Урок 165. 00:01:00
    Day 2: build your own API front-end using React
  • Урок 166. 00:07:01
    Structuring our Free Monkey (hangman) app
  • Урок 167. 00:02:53
    Constructor, componentDidMount, and first render
  • Урок 168. 00:05:18
    Setting the initial game state
  • Урок 169. 00:03:15
    Creating letter buttons with event handlers
  • Урок 170. 00:06:07
    Matching guess letters and updating the state
  • Урок 171. 00:02:32
    Adding CSS styles to the buttons upon guessing
  • Урок 172. 00:08:06
    Check win/loss scenarios, adding a reset game button
  • Урок 173. 00:02:32
    Day 4: build your own game using React
  • Урок 174. 00:00:31
    Lesson introduction
  • Урок 175. 00:01:29
    The structure of this 4 day module
  • Урок 176. 00:03:43
    Django starter and architecture
  • Урок 177. 00:01:54
    Demo quote CRUD app we will build
  • Урок 178. 00:03:00
    Get Django up and running
  • Урок 179. 00:04:10
    Basic Django configuration
  • Урок 180. 00:05:18
    URL routing and your first view
  • Урок 181. 00:04:21
    Create a Django model and migrate it to the DB
  • Урок 182. 00:06:28
    Playing with the ORM in Django's shell
  • Урок 183. 00:01:19
    Day 2: practice yourself
  • Урок 184. 00:06:17
    The quotes app url mapping
  • Урок 185. 00:01:59
    Create a Django form
  • Урок 186. 00:02:49
    Write a view to list all the quotes
  • Урок 187. 00:04:55
    Static files and the base template
  • Урок 188. 00:06:40
    Template settings and create a child template
  • Урок 189. 00:04:00
    Make a view/page to view an individual quote
  • Урок 190. 00:06:44
    Write a view to add a new quote
  • Урок 191. 00:02:58
    Write a view to edit a quote
  • Урок 192. 00:04:07
    Write a view to delete a quote
  • Урок 193. 00:09:39
    Refactor function-based into class-based views
  • Урок 194. 00:03:10
    Add the quotes app to Django's admin interface
  • Урок 195. 00:01:30
    Day 4: practice yourself
  • Урок 196. 00:01:18
    Lesson introduction
  • Урок 197. 00:06:01
    Virtual environment, dependencies, pytest starter code (fixtures)
  • Урок 198. 00:06:59
    Selenium's find_element_by methods, test #1: homepage
  • Урок 199. 00:08:08
    Test #2: testing individual book pages and JS autocomplete
  • Урок 200. 00:06:20
    Test #3: testing the login, using the debugger with pytest
  • Урок 201. 00:09:45
    Test #4: a test function for adding/deleting a book
  • Урок 202. 00:04:16
    Test #5: testing changing nav links upon logout
  • Урок 203. 00:01:08
    Optional Code Challenge: test a simple Django app
  • Урок 204. 00:00:50
    Introducing responder
  • Урок 205. 00:02:10
    Key features
  • Урок 206. 00:00:48
    Foundational projects
  • Урок 207. 00:01:08
    What API will we build?
  • Урок 208. 00:01:44
    Setting up the project
  • Урок 209. 00:01:46
    Adding the 'hello world' view method
  • Урок 210. 00:02:26
    Using dynamic HTML templates (Jinja2)
  • Урок 211. 00:01:35
    Serving static files
  • Урок 212. 00:02:51
    API view methods
  • Урок 213. 00:03:03
    Adding a data backend
  • Урок 214. 00:04:11
    Implementing the search APIs
  • Урок 215. 00:04:28
    Cleanup and refactoring for real web apps
  • Урок 216. 00:02:01
    Responder core concepts
  • Урок 217. 00:00:54
    Introduction: Twilio
  • Урок 218. 00:01:50
    Your single day overview
  • Урок 219. 00:03:00
    Twilio account setup
  • Урок 220. 00:01:07
    Obtaining your Twilio API key
  • Урок 221. 00:04:41
    Write a quick and easy Twilio SMS script
  • Урок 222. 00:02:13
    Twilio UI: Verified numbers and usage stats
  • Урок 223. 00:01:58
    What did we learn?
  • Урок 224. 00:00:43
    Chapter intro
  • Урок 225. 00:02:07
    What is full stack web development?
  • Урок 226. 00:01:01
    What application will we build?
  • Урок 227. 00:00:54
    Introducing Anvil
  • Урок 228. 00:02:42
    Anvil's building blocks
  • Урок 229. 00:02:09
    Anvil: New project
  • Урок 230. 00:02:28
    Adding navigation
  • Урок 231. 00:02:07
    Subforms
  • Урок 232. 00:04:20
    Linking the forms
  • Урок 233. 00:02:09
    Building the add document form
  • Урок 234. 00:04:45
    Add new document validation
  • Урок 235. 00:02:32
    Data tables
  • Урок 236. 00:03:27
    Server-side code
  • Урок 237. 00:02:54
    Creating the document in the database
  • Урок 238. 00:04:52
    Add doc form finale
  • Урок 239. 00:06:55
    All docs form
  • Урок 240. 00:01:32
    Adding filtering to all docs form
  • Урок 241. 00:03:05
    Adding filtering (continued)
  • Урок 242. 00:02:48
    Viewing document details
  • Урок 243. 00:01:56
    Publishing our Anvil app on the Internet
  • Урок 244. 00:02:56
    Concepts of Anvil
  • Урок 245. 00:01:14
    Lesson introduction
  • Урок 246. 00:05:17
    The structure of this 4 day module
  • Урок 247. 00:04:57
    Installing and configuring django-registration
  • Урок 248. 00:02:58
    Setting up urls.py for the two-step activation workflow
  • Урок 249. 00:04:39
    Setting required django-registration templates
  • Урок 250. 00:01:21
    Setting up a SendGrid account
  • Урок 251. 00:07:22
    Django SMTP configuration and testing out email
  • Урок 252. 00:05:01
    Adding login and logout links to the navigation bar
  • Урок 253. 00:03:30
    Update the Quote model to associate quotes with users
  • Урок 254. 00:06:31
    Update templates to only show edit buttons to quote owners
  • Урок 255. 00:04:49
    Protecting views with Django's @login_required decorator
  • Урок 256. 00:01:25
    Day 3 + 4: practice yourself
  • Урок 257. 00:00:33
    Introduction: Flask Login
  • Урок 258. 00:03:25
    Let's start by setting some expectations
  • Урок 259. 00:03:16
    Your 4 day overview
  • Урок 260. 00:03:01
    Setup: Flask and Project directory
  • Урок 261. 00:06:22
    Setup: A Barebones Flask app
  • Урок 262. 00:06:19
    Define your database model
  • Урок 263. 00:02:45
    Specify the db object in __init.py__
  • Урок 264. 00:00:53
    Setup: Install SQLite DB Browser
  • Урок 265. 00:03:17
    Create the database!
  • Урок 266. 00:05:01
    Make the create-user Jinja Template
  • Урок 267. 00:05:46
    Add functionality to create users
  • Урок 268. 00:01:15
    Specify the app secret key
  • Урок 269. 00:02:41
    Let's add some users!
  • Урок 270. 00:08:33
    Incorporate Flask-Login
  • Урок 271. 00:03:41
    Test it! Login to the app
  • Урок 272. 00:03:44
    Create a quick logout page
  • Урок 273. 00:04:30
    What did we learn?
  • Урок 274. 00:02:29
    Introduction to db migrations
  • Урок 275. 00:02:33
    Seeing the problem in action
  • Урок 276. 00:03:45
    Installing Alembic
  • Урок 277. 00:01:48
    Fix an error: Alembic distribution not found
  • Урок 278. 00:02:04
    Concept: Review configuring Alembic
  • Урок 279. 00:05:09
    Automatically detecting schema changes
  • Урок 280. 00:01:44
    Where is the DB version stored?
  • Урок 281. 00:03:02
    Concept: Alembic migrations
  • Урок 282. 00:03:17
    Your-turn: Days 2, 3, and 4
  • Урок 283. 00:01:00
    Introduction: Heroku
  • Урок 284. 00:01:34
    Your 4 day overview
  • Урок 285. 00:02:39
    Setup your Heroku account and install the Heroku CLI
  • Урок 286. 00:04:37
    Setting up the local app and Heroku environment
  • Урок 287. 00:07:39
    Deploy and launch your first Heroku app!
  • Урок 288. 00:03:53
    What are Heroku addons?
  • Урок 289. 00:02:45
    Install Heroku scheduler
  • Урок 290. 00:06:25
    Automate sending emails with Heroku scheduler
  • Урок 291. 00:03:46
    Heroku SendGrid addon setup
  • Урок 292. 00:06:24
    Use SendGrid to send an email
  • Урок 293. 00:02:53
    What did we learn?
  • Урок 294. 00:02:01
    Lesson intro
  • Урок 295. 00:05:02
    Virtual env, install dependencies and quotes app
  • Урок 296. 00:07:54
    Writing a custom django-admin command
  • Урок 297. 00:08:07
    Create a simple Django REST API
  • Урок 298. 00:03:41
    Implement the other CRUD methods
  • Урок 299. 00:07:43
    Django REST permissions: authentication and authorization
  • Урок 300. 00:05:16
    API documentation with Swagger
  • Урок 301. 00:02:59
    Day 3 + 4: Your turn - build your own API
  • Урок 302. 00:00:45
    Introduction: Web Scraping
  • Урок 303. 00:03:57
    Your next 4 days
  • Урок 304. 00:02:27
    Prepare to scrape!
  • Урок 305. 00:08:32
    Dive into BeautifulSoup4 and Talk Python
  • Урок 306. 00:07:31
    Write a Talk Python Training web scraping script
  • Урок 307. 00:03:31
    Installing and introducing newspaper3k
  • Урок 308. 00:08:08
    Extra! Extra! Student scrapes a news article!
  • Урок 309. 00:07:38
    What did we learn?
  • Урок 310. 00:01:20
    Lesson intro
  • Урок 311. 00:01:21
    4 day plan
  • Урок 312. 00:03:44
    Project: automate #100DaysOfCode tweeting
  • Урок 313. 00:04:00
    Dependencies and outline script
  • Урок 314. 00:04:15
    Manage config data with configparser
  • Урок 315. 00:03:48
    Turn on logging
  • Урок 316. 00:06:36
    Get a tweet with requests and BeautifulSoup
  • Урок 317. 00:07:08
    Post to Twitter with tweepy
  • Урок 318. 00:05:47
    Easy command line interface with argparse
  • Урок 319. 00:01:37
    Day 2 - Your turn / Twitter API practice
  • Урок 320. 00:01:41
    Project: random book slash command
  • Урок 321. 00:03:13
    Create a Slack app and slash command
  • Урок 322. 00:05:13
    Create a Flask app and call our books API
  • Урок 323. 00:03:13
    Response data and Slack message formatting
  • Урок 324. 00:03:23
    Testing out the slash command with ngrok
  • Урок 325. 00:01:21
    Day 4 - Your turn / Slack API practice
  • Урок 326. 00:01:29
    Why test web apps?
  • Урок 327. 00:02:35
    Testing challenges of web applications
  • Урок 328. 00:01:47
    3 types of tests
  • Урок 329. 00:01:51
    Setting up the app to be tested
  • Урок 330. 00:05:26
    Adding view models
  • Урок 331. 00:02:43
    View models applied to details page
  • Урок 332. 00:03:19
    View models and forms
  • Урок 333. 00:01:56
    Concept: View models
  • Урок 334. 00:05:44
    Our first unit test
  • Урок 335. 00:03:42
    Mocking out database access
  • Урок 336. 00:05:26
    More view model tests
  • Урок 337. 00:01:18
    Concept: View model unit tests
  • Урок 338. 00:04:14
    View unit tests: index page
  • Урок 339. 00:01:51
    Running all the tests at once
  • Урок 340. 00:01:45
    Concept: Testing view methods
  • Урок 341. 00:05:19
    Writing the functional tests
  • Урок 342. 00:01:42
    Concept: Functional tests
  • Урок 343. 00:02:57
    Concept: Web testing pareto principle
  • Урок 344. 00:03:14
    Your turn: Testing a web app
  • Урок 345. 00:02:29
    Lesson intro
  • Урок 346. 00:02:20
    A practical Lambda use case: CodeChalleng.es
  • Урок 347. 00:04:36
    4 day plan, PEP8 Checker app, setup
  • Урок 348. 00:09:18
    Build a simple Bottle web app
  • Урок 349. 00:04:40
    First Lambda: a simple calculator (using operator)
  • Урок 350. 00:05:05
    Creating Lambda test events
  • Урок 351. 00:04:08
    The glue: setting up AWS Gateway API
  • Урок 352. 00:11:39
    Second Lambda: PEP8 Checker (using pycodestyle)
  • Урок 353. 00:05:36
    Uploading a Lambda with external dependencies
  • Урок 354. 00:02:47
    Day 3 + 4: Your turn - create your own Lambda
  • Урок 355. 00:01:20
    Deploy introduction
  • Урок 356. 00:02:59
    Deployment moving parts overview
  • Урок 357. 00:01:38
    Deployment: What app to install?
  • Урок 358. 00:02:18
    Where to host our server
  • Урок 359. 00:03:01
    Creating our virtual server
  • Урок 360. 00:01:48
    Connecting and updating the Linux server
  • Урок 361. 00:05:22
    Server software config
  • Урок 362. 00:05:20
    Getting the Python source files on the server
  • Урок 363. 00:05:49
    Setting up uWSGI
  • Урок 364. 00:04:14
    Serving through nginx
  • Урок 365. 00:01:48
    A final check-in on the server
  • Урок 366. 00:02:58
    Concept: uWSGI setup
  • Урок 367. 00:01:36
    Concept: nginx setup
  • Урок 368. 00:01:01
    Deploying Flask web apps
  • Урок 369. 00:01:01
    Deploying Django web apps
  • Урок 370. 00:02:52
    Your turn: Deployment
  • Урок 371. 00:01:57
    Vue.js Chapter Introduction
  • Урок 372. 00:02:21
    What does a simple Vue.js app look like?
  • Урок 373. 00:03:20
    The starter project: Movie Exploder
  • Урок 374. 00:04:28
    Creating the Vue app instance
  • Урок 375. 00:02:23
    Enabling the Vue.js Plugin in PyCharm and WebStorm
  • Урок 376. 00:02:20
    Repeating data and HTML blocks
  • Урок 377. 00:01:03
    Concept: Repeating data
  • Урок 378. 00:01:56
    First, with fake data
  • Урок 379. 00:03:03
    Detailed movie details
  • Урок 380. 00:01:33
    Conditional rendering
  • Урок 381. 00:01:05
    Concept: Conditional rendering
  • Урок 382. 00:03:19
    Searching movies event
  • Урок 383. 00:01:35
    Top ten button
  • Урок 384. 00:03:06
    Displaying and selecting genres
  • Урок 385. 00:02:58
    A nicer dropdown
  • Урок 386. 00:01:15
    Selecting the genre
  • Урок 387. 00:02:05
    Install the Vue.js devtools
  • Урок 388. 00:02:04
    Your turn: Day 2
  • Урок 389. 00:05:23
    Searching movies via the API and axios
  • Урок 390. 00:01:06
    Concept: Calling API with axios
  • Урок 391. 00:03:10
    Genres via the service
  • Урок 392. 00:02:12
    Top 10 movies from API
  • Урок 393. 00:02:29
    Movies by genre through the API
  • Урок 394. 00:02:32
    Setting attributes with Vue.js
  • Урок 395. 00:00:55
    Look; no semicolons
  • Урок 396. 00:01:26
    Your turn: Day 4
  • Урок 397. 00:01:35
    Introduction to Docker chapter
  • Урок 398. 00:03:10
    Container history: Boats
  • Урок 399. 00:03:29
    Container history: Operating systems
  • Урок 400. 00:02:26
    Installing Docker on macOS, Windows, and Linux
  • Урок 401. 00:04:03
    Docker nomenclature
  • Урок 402. 00:02:28
    Code setup
  • Урок 403. 00:01:55
    Choosing a Docker base image
  • Урок 404. 00:03:17
    Running a Docker container
  • Урок 405. 00:01:01
    Productivity with Docker plugins for Pycharm
  • Урок 406. 00:06:14
    Building a Docker image
  • Урок 407. 00:03:52
    Installing glances
  • Урок 408. 00:05:48
    Nginx config for our static site
  • Урок 409. 00:03:59
    Serving external traffic from Docker
  • Урок 410. 00:02:34
    Using the local services container
  • Урок 411. 00:10:56
    Docker image for our Python services
  • Урок 412. 00:03:40
    Running the system as a whole
  • Урок 413. 00:02:15
    Docker cleanup and reclaiming disk space
  • Урок 414. 00:03:16
    Keep your Docker DRY (refactoring)
  • Урок 415. 00:02:09
    Concept: Dockerfile for the static site
  • Урок 416. 00:03:48
    Concept: Core Docker commands
  • Урок 417. 00:02:37
    Your-turn, day 2
  • Урок 418. 00:02:20
    Concept: Introduction to docker-compose
  • Урок 419. 00:08:28
    Building the services with docker-compose
  • Урок 420. 00:01:17
    Your-turn, day 4
  • Урок 421. 00:00:31
    You've done it!
  • Урок 422. 00:01:22
    What you've learned
  • Урок 423. 00:00:30
    Make sure you have the source
  • Урок 424. 00:01:08
    Stay immersed in Python
  • Урок 425. 00:01:11
    Continue to challenge yourself with PyBites
  • Урок 426. 00:01:12
    Thanks and goodbye