CS418/518 - Web Programming

Meeting time Tuesday 4:20-7:00, Location Dragas 1117

Fall 2017

Old Dominion University Department of Computer Science

Lecturer: Dr. Justin F. Brunelle (jbrunelle@cs.odu.edu)

Office Hours: Friday afternoons (please schedule an appointment via email)
E&CS 3111

Course Information

The course will give best practice instruction and guidance in developing a messaging chatroom website like Slack using a LAMP stack, jQuery, PHP, and MySQL, along with other more modern technologies, languages, and systems.

While we will limit in-class discussions to these technologies, please feel free to use this course as an excuse to learn whatever new web technology you desire. However, adherence to assignment and milestone goals is still expected and deviation from the course materials will not be an acceptable excuse for not meeting expectations.

The course will focus on writing good code based both on best practice and code validation systems (e.g., JSLint). We will use git for version control via GitHub and project submission, so the code you generate in the course will serve as a publicly available example of the experience you obtain from the course.

Course material adapted from the Spring 2015 offering from Mat Kelly and Fall 2016 offering from Justin Brunelle.

Important Links


Date Topic Reading Notes
8/29 Syllabus
Git Cheat Sheet
Assignment 1
  • Guest Speaker From Dominion Enerprise, Jesse Wright
  • Docker deployment server demo
  • Assignment 1 review (private repos!!)
  • Intro to PHP
  • MySQL
  • Chapters 3-6 - PHP (O'Reilly)
    Chapter 2 - PHP Examples (Beginning PHP, Apache, MySQL Web Development)
    Chapter 8 - MySQL (O'Reilly)
    Chapter 4 - PHP-MYSQL Exercises (Beginning PHP, Apache, MySQL Web Development)
    RFC 2616 -- HTTP/1.1
    9/12 Chapter 7 - Validating User Input (Beginning PHP, Apache, MySQL Web Development)
    Chapter 8 - Error Handling Beginning PHP, Apache, MySQL Web Development
    Examples to review:
    9/19 Chapter 10 - Emailing with PHP (Beginning PHP, Apache, MySQL Web Development)
    Chapters 14-17 - Exploring JavaScript (O'Reilly)
    Chapter 18 - Ajax (O'Reilly)
    9/22 CS Colloquium
    Summer Internship Reports
    E & CS Building Auditorium (1st floor)
    Time: 10:30 (donuts) 10:40 (talk)
    Signed attendance sheets to be turned in with Milestone 1 report for 1-2 points of extra credit.
    9/26 Topic Reading Notes
    10/3 Milestone 1 midway reports Reading Notes
    10/10 No Class -- Fall Break -- --
    10/17 Milestone 1 presentations Reading Milestone 2 assigned
    10/24 Topic Reading Notes
    10/31 Topic Reading Notes
    11/7 Topic Reading Notes
    11/14 Topic Reading Notes
    11/21 Topic Reading Notes
    11/28 Topic Reading Notes
    12/5 Topic Reading Notes
    12/12 Milestone 4 due -- Final exam time