- Course Description
- Prerequisites
- Learning Outcomes
- Study Guide
- Class Schedule
- Class Assignments
- Evaluation
- Late Assignment Policy
- Additional Resources
- Information Resources
- Make School Course Policies
In this course, students build on knowledge of RESTful web patterns and dive deep into the Node and Express ecosystems. Students learn how to manage greater scope and complexity in their code while consistently keeping the user's experience in mind through implementing a clone of the popular website, Reddit. The course will also cover the procedures required to authenticate and authorize web application users.
Students by the end of the course will be able toβ¦
- Diagram and implement resource associations using a document-based database.
- Write advanced db queries with a focus on optimum performance and efficiency.
- Discern between differing levels of persistence and the use cases that best fit each.
- Implement authentication using JWT tokens and sessions.
- Invent, create, test, deploy, and deliver a custom, fully secured API.
Course Dates: Wednesday, January 20 β Wednesday, January 3, 2021 (7 weeks) Class Times: Monday, Wednesday at 9:30amβ12:15pm (13 class sessions)
Class | Date | Topics | Assignment Due | Assessment |
---|---|---|---|---|
- | Mon, Jan 18 | No Class - MLK Day | ||
1 | Wed, Jan 20 | Intro to Node | - | |
2 | Mon, Jan 25 | JS Intro & Asynchronous Programming | GIF Search Tutorial | |
3 | Wed, Jan 27 | HTTP Methods & Endpoint Design | Codecademy JS: Promises & Async/Await Promise Challenges |
|
4 | Mon, Feb 1 | Databases | Reddit.js Part 1-3 | |
5 | Wed, Feb 3 | Testing with Mocha & Chai | Reddit.js Part 4-6 | |
6 | Mon, Feb 8 | Documentation with Docsify | TDD/BDD Challenges | Midterm Assessment |
7 | Wed, Feb 10 | Testing Express Routes | API Project Proposal/Documentation | |
8 | Mon, Feb 15 | Review/Lab Day | Chai Testing Challenges | |
9 | Wed, Feb 17 | Authentication with JWT | Reddit.js Part 7-9 | |
10 | Mon, Feb 22 | More Authentication | API Project Phase 2 | |
11 | Wed, Feb 24 | Lab Day | Reddit.js Part 10-11 Auth API Tutorial |
|
12 | Mon, Mar 1 | Authentication with Passport | ||
13 | Mon, Mar 3 | Final Class | API Project Phase 3 | Final Assessment |
We will be using Gradescope this term, which allows us to provide fast and accurate feedback on your work. All assigned work will be submitted through Gradescope, and assignment and exam grades will be returned through Gradescope. As soon as grades are posted, you will be notified immediately so that you can log in and see your feedback. You may also submit regrade requests if you feel we have made a mistake.
Your Gradescope login is your Make School email, and your password can be changed at https://gradescope.com/reset_password. The same link can be used if you need to set your password for the first time.
- Make Parties (Tutorial)
- Reddit.js (Tutorial)
- Passport Authentication Challenge
- TDD/BDD Challenges
- API Project
To pass this course, you must earn at least a 70% weighted average, according to the following breakdown:
- API Project: 30%
- Tutorials, Assignments, Projects, & Class Participation: 50%
- All tutorials graded on completion
- Midterm and Final Assessment: 20%
In order to pass this course, you must also:
- Actively participate in class and abide by the attendance policy
- Make up all classwork from all absences
- Late assignments that are submitted more than 5 days (120 hours) after the deadline will be given a 25% late penalty.
- The absolute last day to submit any assignment will be Monday, March 3 at 11:59 PM.
If you require accommodations or have extenuating circumstances such as prolonged illness, please contact your instructor to request an extension.
- jwt.io: JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties. JWT.IO allows you to decode, verify and generate JWT.
- Check out the Additional Resources section at the bottom of each day's lesson plan for the most up-to-date, helpful resources for that class period!
Any additional resources you may need (online books, etc.) can be found here. You can also find additional resources through the library linked below:
- Program Learning Outcomes - What you will achieve after finishing Make School, all courses are designed around these outcomes.
- Grading System - How grading is done at Make School
- Diversity and Inclusion Statement - Learn about Diversity and Inclusion at Make School
- Academic Honesty - Our policies around plagiarism, cheating, and other forms of academic misconduct
- Attendance Policy - What we expect from you in terms of attendance for all classes at Make School
- Course Credit Policy - Our policy for how you obtain credit for your courses
- Disability Services (Academic Accommodations) - Services and accommodations we provide for students
- Online Learning Tutorial - How to succeed in online learning at Make School
- Student Handbook - Guidelines, policies, and resources for all Make School students