Schedule
1
Mobile-first HTML/CSS
Week of May 9
An introduction to full-stack development; How to succeed in this course; Creating mobile-first frontends with HTML and CSS.
2
Interactive frontends with Javascript
Week of May 16
Programatically manipulate the Document Object Model (DOM) through Javascript in the browser; Structuring a frontend with the Model-View-ViewModel architecture pattern; Some cool possibilities with browser-based Javascript.
3
Building Standard Web APIs
Week of May 23
A basic client-server architecture with a Express.js based REST Application Programming Interface (API); Breaking down the HTTP request; Using Javascript to make HTTP requests on the browser.
4
Storing and Serving Data
Week of May 30
Determine the best way of storing application data; Storing and serving images; Using ORMs in backend code; Learn the different methods of pagination and how to properly paginate in the backend; The classic N+1 problem in database queries and strategies to solve it.
5
Web Authentication and Authorization
Week of June 6
Implementing a secure web based login system; Protect views from unauthorized individuals; A deep dive into the Open Authorization v2 (OAuth2) protocol; Learn the differences between authentication and authorization.
6
Real-time web applications
Week of June 13
Enabling real-time capabilities in the browser on a web application with text, audio, video and screen sharing; Receiving real-time updates from third-party services with webhooks.
8
Task Queues and Deployments
Week of June 27
Processing long running tasks with task queues independent of a backend. Deploying a web application with a domain name to the internet through the use of a Virtual Machine and Docker; Best practices on deployment architecture.
9
Web Application Security
Week of July 4
A demonstration of common exploits of the web, such as XSS, CSRF, SQL Injection, etc. How to protect a web application from these attacks.
10
Scaling Web Applications
Week of July 11
Scaling a web application to scale to millions of users with horizontal and vertical scaling; perform application caching to speed up requests and reduce server load; retrying failed requests; Four golden signals of monitoring.
11
Advanced Web Development
Week of July 18
Understanding the Javascript event loop, web workers, service workers, Push API and testing web applications.
12
Trends in web development (Guest Lecture by Aleksander Bodurri)
Week of July 25
Aleksander Bodurri is an Angular core contributor and a Team Lead at Verto Health. He will be discussing the latest trends in web development.
13
Exam Review and Final Presentations
Week of August 1
A summary of what was covered in the past 11-weeks; showcasing the best web application projects developed in this course.