CSc 337: Course Schedule

Below is the complete lecture and section schedule. A Green day indicates that the emphasis will be on client-side development. A Blue indicates the emphasis will be on server-side development (or server + client). A Teal indicates the emphasis will be on an “other” topic, such as networking, security, performance, etc. A Red day indicates an exam or other important assessment. The Topic for each day indicates the topic that the video due that day will be related to. The Prep for each day indicates the work you need to have completed BEFORE watching the video due that day. (Due dates subject to change).

Monday Tuesday Wednesday Thursday Friday
6/8/2019
Topic: Course introduction, overview
Prep: The Other Road Ahead
Slides
6/9/2019
Topic: Web browsers, HTTP, GET and POST
Prep: TBA
Prep: How the web works
Optional Material: Low-level networking background (video series)
Slides
6/10/2019
Topic: HyperText Markup Language (HTML)
Prep: What is HTML?
W3 HTML Overview
Slides
6/11/2019
Topic: Cascading Style Sheets (CSS) Basics
Prep: CSS
Slides
6/12/2019
Topic: CSS layout
Prep: Learn Layout
Slides
PA 1 due
Files: guitar_world.zip
6/15/2019
Topic: HTML Forms and attributes
Prep: Your first HTML form
Slides
6/16/2019
Topic:More HTTP, Query string, Get vs POST
Prep: GET vs POST
Slides
PA 2 due
6/17/2019
Topic: Build a site with HTML, CSS, forms
Prep: None
Slides
6/18/2019
Topic: Intro to Javascript
Prep: Js Overview which is a part of This article set
PA 3 due Slides
6/19/2019
Topic: Intro to Javascript
Prep: Js Reference (you don't have to read all of it, just for reference)
Slides
6/22/2019
Topic: Document-Object Model (DOM)
Prep: Intro to the DOM
Slides
6/23/2019
Topic: DOM + Javascript
Prep: Manipulate the DOM
Slides
PA 4 due
6/24/2019
Topic: DOM + Javascript
Prep: None
Slides
6/25/2019
Topic: Client-Server Model
Prep: Client-Server Wiki
Slides
6/26/2019
Topic: Nodejs install / setup
Prep: About Node and
Node and NPM install/run tutorial
Slides
PA 5 due
6/29/2019
Topic: Nodejs
Prep: Callbacks and
A great gread node guide and
Slides
Prep: TBA
6/30/2019
Topic: Getting set up with DigitalOcean
Prep: NodeJs and DigitalOcean video (optional)
Slides
7/1/2019
Topic: Nodejs + Express
Prep: Node and Express
Slides
7/2/2019
Exam 1
7/3/2019
Independence Day Observed
#GodBlessAmerica
7/6/2019
Topic: Nodejs + Express
Prep: Express and Digital Ocean
PA 6 due
memeker.zip
Slides
7/7/2019
Topic: Nodejs + Express
Prep: None
Slides
7/8/2019
Topic: AJAX
Prep: AJAX
Slides
7/9/2019
Topic: Databases and DBMSs
Prep: TBA
Slides
7/10/2019
Topic: MongoDB
Prep: Intro to MongoDB
PA 7 due Slides
7/13/2019
Topic: MongoDB + Nodejs + Express
Prep: MEAN
and Express+Mongo Tutorial
7/14/2019
Topic: MongoDB + Nodejs + Express
Prep: Create an app with Mongo
7/15/2019
Topic: JSON
Prep: JSON
7/16/2019
Topic: jQuery
Prep: JQuery (go thru the tutorial)
auto_json_jquery.zip
7/17/2019
Topic: Designing with AJAX, MVC
Prep: MVC Overview
PA 8 due
7/20/2019
Topic: Intro to web security
Prep: Web Security
7/21/2019
Topic: Logins, passwords
Prep: Password salting and hashing
login.zip
7/22/2019
Topic: Sessions and Cookies
Prep: Sessions and Cookies
PA 9 due
7/23/2019
NO CLASS
7/24/2019
Exam 2
7/27/2019
Topic: Salting and Hashing
Prep: Password salting and hashing
7/28/2019
Topic: Database Injection
Prep: MongoDB Injection
PA 10 due
7/29/2019
Topic: Cross-Site Scripting (XSS)
Prep: XSS
Final Project Proposal Due
7/30/2019
Topic: Cross-Site Scripting (XSS)
Prep: None
7/31/2019
Topic: HTTPS, SSL, CAs
Prep: Node, HTTPS, LetsEncrypt and
Prep: Another HTTPS Tutorial
8/3/2019
Topic: DNS, server setup
Prep: DNS (Cloudflare) and DNS (Wikipedia)
8/4/2019
Topic: Fun with Js
Prep: None
8/5/2019
Topic: Designing for Mobile
Prep: Responsive Design (all sections)
8/6/2019
Topic: Server structure alternatives (MEAN, LAMP, Django)
Prep: LAMP vs MEAN and
Prep: Stacks
8/7/2019
Topic: Course wrap-up
8/10/2019
NO CLASS
8/11/2019
Final Exam Day
8/12/2019
NO CLASS
Final Project Due

This schedule is subject to change at any time.