Tentative schedule for CIS 371

Week Date Topics Reading Milestones
1 Mon. 9 Jan. Introduction (notes)
Proficiency-Based Grading
Basics of Networking
Original WWW Proposal
Proficiency-Based Grading
Assign Homework 0: First Day Questions
Assign Project : Project Description
Assign Project : Semester Project
Wed. 11 Jan. Key ideas of the Original WWW (notes) Formal WWW article in the ACM magazine Due Reading 1: WWW History and Basics
Due Homework 0: First Day Questions
Fri. 13 Jan. Networking overview (notes)
Parts of a URL
HTTP Basics
Basic web client operation
 
URI vs URL
HTTP: The protocol Ever Web Developer Must Know
Sample Client Code
2 Mon. 16 Jan. No Class
Wed. 18 Jan. More HTTP (notes)
HTTPS
HTTP: The protocol Ever Web Developer Must Know
HTTPS/TLS Handshakke
Assign Homework 1: Explore HTTP
 
Fri. 20 Jan. Basic web server operation
HTML (notes)
Quiz 1(O, I2)
Sample Server Code
HTML Tutorial
Assign Homework 2: Web Server
3 Mon. 23 Jan. Faculty Candidate
Wed. 25 Jan. More web server   Due Homework 1: Explore HTTP
Assign Homework 3: Wordle Part 1 (HTML / CSS)
Assign In-Class 1: CSS
Fri. 27 Jan. HTML
CSS (slides)
Quiz 2(O, I2)
 
CSS Tutorial
Due Homework 2: Web Server
4 Mon. 30 Jan. HTML/CSS Assign Homework 4: Wordle Part 2 (Templating)
Wed. 1 Feb. CSS
Fri. 3 Feb. Dynamic Servers / Templating (notes) CGI
Examples
Due Homework 3: Wordle Part 1 (HTML / CSS)
5 Mon. 6 Feb. More templating Due Project : Project Description
Wed. 8 Feb. ExpressJS (notes)
Quiz 3(I1)
Express
Fri. 10 Feb. ExpressJS (notes)
Query Strings / HTML Forms (notes)
Sample Code
6 Mon. 13 Feb. Express and forms Express
Sample Code
Due Homework 4: Wordle Part 2 (Templating)
Wed. 15 Feb. Express and MVC (notes) Sample Code
Fri. 17 Feb. Real database access
Callbacks (notes)
Promises (notes)
 
Sample Code
Sample Code
7 Mon. 20 Feb. Promises (notes)
SASS/SCSS (notes)
Sample Code
SASS tutorial
Assign Homework 5: Express (Part 1)
Wed. 22 Feb. Jest Jest
Fri. 24 Feb. Jest (notes)
Mocking
Unit testing
Quiz 5(h6; h3 i1)
Jest Assign Homework 6: Express (Part 2)
8 Mon. 27 Feb. Assign In-Class 2: Cookies
Due Homework 5: Express (Part 1)
Wed. 1 Mar. Cookies and Sessions (notes) Sample Code
Fri. 3 Mar. Sessions
Routing
Quiz 6(h6; h3 i1)
Sample Code
Sample Code
Due Homework 6: Express (Part 2)
Assign Homework x: Express (Part 3)
9 Mon. 13 Mar. Client Side JavaScript
DOM / DOM Manipulation (notes)
Wed. 15 Mar. "Flippy Triangles"
Client Side MVC Setup
Client Side Jest testing
Sample Code Assign Homework 7: Wordle Part 3 (MVC)
Assign Homework 11: Wordle Part 4 (Unit Testing)
Fri. 17 Mar. Single Page Apps (notes) (screencast)
10 Mon. 20 Mar. Creating Web Pages (screencast)
Introduction to JSX (screencast)
Quiz 7(h4, cookies)
  Due Homework x: Express (Part 3)
Wed. 22 Mar. React Components and Props (screencast)
JavaScript Spread operator (screencast)
Using Closures to Save State (screencast)
Introduction to State (screencast)
Assign Homework 8: React (Part 1)
Fri. 24 Mar. More React State
Fetching data from API Server
AJAX (notes)
API Only Server (notes)
11 Mon. 27 Mar. CORS (same-origin) issues
Create/Update with React
controlled vs. uncontrolled components.
Wed. 29 Mar. Using create-react-app
More React
Quiz 8(h4, sessions)
Due Homework 8: React (Part 1)
Fri. 31 Mar. React Routing (notes) React Routing
React Routing
Assign Homework 9: React (Part 2)
12 Mon. 3 Apr. "Mobile First"
Bootstrap (notes)
 
W3Schools Reference
Due Homework 7: Wordle Part 3 (MVC)
Assign Homework 11: Bootstrap
Wed. 5 Apr. Security (notes)
CORS, code injection, CSRF
Quiz
Assign Homework 10: React (Part 3)
Fri. 7 Apr. Security (notes)
13 Mon. 10 Apr. HTTP 2.0
Unit testing React (notes)
Quiz (Javascript)
HTTP 1 vs 2
React Testing Library
Wed. 12 Apr. end-to-end testing (Selenium, Cucumber, Cypress)  
Fri. 14 Apr. More on middleware
Quiz (Security)
Due Homework 9: React (Part 2)
14 Mon. 17 Apr. TBD
Quiz (Javascript
Due Homework 11: Wordle Part 4 (Unit Testing)
Due Homework 10: React (Part 3)
Wed. 19 Apr. Projet Demos
Fri. 21 Apr. Project Demos Due Homework 11: Bootstrap
Due Project : Semester Project
Wed. 26 Apr. Final Exam 2:00 p.m.

Assignment List

Due Name Details
Wed. 11 Jan. Reading 1: WWW History and Basics
Wed. 11 Jan. Homework 0: First Day Questions
Wed. 25 Jan. Homework 1: Explore HTTP
Fri. 27 Jan. Homework 2: Web Server
Fri. 3 Feb. Homework 3: Wordle Part 1 (HTML / CSS)
Mon. 6 Feb. Project : Project Description One page description due
Mon. 13 Feb. Homework 4: Wordle Part 2 (Templating)
Mon. 27 Feb. Homework 5: Express (Part 1) (Part 1)
Fri. 3 Mar. Homework 6: Express (Part 2) (Part 2)
Mon. 20 Mar. Homework x: Express (Part 3) (Part 3)
Wed. 29 Mar. Homework 8: React (Part 1) (Part 1)
Mon. 3 Apr. Homework 7: Wordle Part 3 (MVC)
Fri. 14 Apr. Homework 9: React (Part 2) (Part 2)
Mon. 17 Apr. Homework 11: Wordle Part 4 (Unit Testing)
Mon. 17 Apr. Homework 10: React (Part 3) (Part 3)
Fri. 21 Apr. Homework 11: Bootstrap (Part 4)
Fri. 21 Apr. Project : Semester Project

Labs

Date Name Details

Updated Tuesday, 11 April 2023, 8:13 PM

W3c Validation