Advanced Web Design and Programming
Class: M/W 2–3:15pm, LSB 312
Instructor: Henry Feild, Ph.D.
Office Hours: M/W/F 11am–12pm; Th. 10–11am in LSB 113.
Schedule
Unless otherwise noted, all homework and projects are due by the beginning of class on the day listed.
Date | Topic | Monday | Wednesday | |
---|---|---|---|---|
Jan. 26, 28 | HTML + Server side basics | — | HW1; MP1 | |
Feb. 2, 4 | Server-side state | HW2; MP2 | Quiz 1 | |
Feb. 9, 11 | Client-side state | HW3 | Quiz 2; MP3 | |
Feb. 16, 18 | Authentication | No Class | Quiz 3; HW4; MP4 | |
Feb. 23, 25 | RESTful APIs | Exam 1 | HW5; MP5 | |
Mar. 2, 4 | AJAX | HW6; MP6 (Skeleton of all the functions) | Quiz 4; HW6; MP6 (full thing) | |
Mar. 9, 11 | Single page applications; Frameworks |
HW7; MP7 | Quiz 5 | |
Mar. 14–22 | No class—Spring break | |||
Mar. 23, 25 | Databases | HW8; FP1 | Quiz 6; MP8; FP2 | |
Mar. 30, Apr. 1 | Advanced jQuery | Exam 2 | HW9; FP3 | |
Apr. 6, 8 | Security | HW10; FP4 | Quiz 7 | |
Apr. 13, 15 | Testing/Debugging | HW11; FP5 | Quiz 8 | |
Apr. 20, 22 | Advanced topics | No class | Quiz 9; HW12; FP6 | |
Apr. 27, 29 | Review | FP7 | Exam 3 | |
May 4 | Wrapping up | FP8; FP9 | No class | |
May 8 | Final Presentations—3:30–5:30 in LSB 312 |
Assignments
Quizzes
Most Wednesdays will begin with a short quiz, mostly concentrating on the material covered the previous week. Paper notes may be used, but no electronic resources. There will be no quizzes during weeks with exams. Not all quizzes will necessarily be graded.
Homeworks
Each week there will be a short homework, which might also be combined with a reading from the Web. This will be administered via Canvas. Not all homeworks will necessarily be graded. These are usually due before the start of class each Monday (see the schedule for due dates).
Mini-projects (MP)
Mini-projects (MPs) are short programming assignments. While all assignments are listed at the beginning of the semester (so theoretically you can work on them as early as the first week of class), the relevant material will be covered Wednesday of the week prior to when the MP is due, giving you just under a week to complete it. Since MPs are quite small in scale, this should not present a problem. Not all mini-projects will necessarily be graded.
Up until Spring break, MPs are due most Mondays, but sometimes Wednesdays, before class. Most Monday meetings will be largely dedicated to presentations by students of their work. Student presenters will be announced the day of, and therefore everyone should come prepared on Monday to present.
Here is a full listing of the MPs:
- MP1: Static web page
- MP2: Form submission
- MP3: Server-side state
- MP4: Client-side state
- MP5: User login
- MP6: Implementing a RESTful API
- MP7: AJAX
- MP8: Single page app
Final project (FP)
The Final project (FP) consists of several milestones. After spring break, MPs will be replaced with FP milestones. Here is a listing of all the milestones:
- Final project overview
- FP1: List of three project ideas
- FP2: Project sketch
- FP3: Component diagram
- FP4: Code skeleton
- FP5: 30% functionality implemented
- FP6: 60% functionality implemented
- FP7: 90% functionality implemented
- FP8: 100% implemented
- FP9: Report
- FP10: Final presentation