The aim of education should be to teach us rather how to think, than what to think.
- Welcome
 - IDE setup and configuration
 - IDE extensions
 - Code snippets, multicursors, hotkeys
 - BEM
 
- Intro to VCS
 - Purpose
 - VCS types
 - Version Control Systems
 - VCS services
 - Glossary
 - Commands
 - Branching
 - Typical branching flow
 - Useful tricks
 - .gitignore && .gitignore_global
 - .gitattributes
 - Gitflow
 - Github templates
 - Github pages
 
- Semantic HTML
 - Package managers
 - CSS frameworks
 - Adaptive coding
 - CSS Preprocessors & Postprocessors
 
- HTML template engines
 - Tooling
 - Gulp
 
- Webpack
 - Loaders & plugins
 
- Arrays
 - Functions
 
- Objects
 - DOM
 - Events
 - ESLint
 
- Introduction
 - Interfaces
 - Functional OOP
 - Prototype OOP
 - Algorithms
 
- Node.js
 - Koa
 
- Databases
 - SQL
 
- Mongo. Mongoose
 
- Installation
 - Vue devtools
 - Virtual DOM
 - Vue object methods
 - Components
 - Lifecycle Hooks
 - Directives
 
- Vue cli install
 - Project structure review
 - Api service
 - Vue router
 - Single file components
 - vue.config.js file
 - Css frameworks integrations
 - Deploy project to gh-pages
 
- Vue CLI
 - Vue router
 
- Vuex
 - User authβ
 
- Project management. Trello. Jira
 - Vue. User auth. Vee-validate. Slots
 
- User auth. Passport.js
 
- REST API design patterns
 - Sending emails
 - Uploading media to AWS S3
 
- HTML to PDF
 - Swagger
 - Search form
 
- Review previous homeworks
 
- Angular vs React vs Vue
 
- AWS EC2
 - Nginx
 - Deploy Node.js to AWS
 
- CI & CD
 - CircleCI
 - Docker
 
- Testing
 
- Review previous homeworks
 
- Sockets
 
- Passport.js