CS418/518 - Web Programming
Meeting time Tuesday 4:20-7:00, Location Dragas 1117
Old Dominion University Department of Computer Science
Office Hours: Friday afternoons (please schedule an appointment)
Course Overview and Objectives
This class will introduce Web Programming; the process of writing interactive applications accessible through the WWW.
We will develop in the LAMP environment: Linux, Apache, MySQL and PHP. Emphasis will be on the integration of these
components for a useful application; none will be exhaustively covered. Lectures will provide the overview of various
concepts and the class will be centered around development of a semester-long project. Prerequisites include Web familiarity,
programming knowledge and database experience. We will only use very simple databases, so that knowledge can be acquired
during the class. Successful students will be profficient in LAMP stack development and its relationship to modern web design.
Laboratory work required. Overview of Internet and World Wide Web; web servers and security,
HTTP protocol; web application and design; server side scripts and database integration, and programming for the Web.
Prerequisites: A grade of C or better in CS 312 and CS 330.
CS330 Object-Oriented Programming and Design
Academic Integrity / Honor Code
By attending Old Dominion University you have accepted the responsibility to abide by the ODU Honor Code. If you are
uncertain about how the honor code applies to any course activity, you should request clarification from the instructor.
The honor pledge is as follows:
"I pledge to support the Honor System of Old Dominion University. I will refrain from any form of academic dishonesty or
deception, such as cheating or plagiarism. I am aware that as a member of the academic community, it is my responsibility
to turn in all suspected violators of the Honor Code. I will report to a hearing if summoned."
In particular, submitting anything that is not your own work without proper attribution (giving credit to the original author)
is plagiarism and is considered to be an honor code violation. It is not acceptable to copy source code or written work from
any other source (including other students), unless explicitly allowed in the assignment statement. In cases where using
resources such as the Internet is allowed, proper attribution must be given.
Any evidence of an honor code violation (cheating) will result in a 0 grade for the assignment/exam, and the incident will be
submitted to the Department of Computer Science for further review. Note that honor code violations can result in a permanent
notation being placed on the student's transcript. Evidence of cheating may include a student being unable to satisfactorily
answer questions asked by the instructor about a submitted solution. Cheating includes not only receiving unauthorized
assistance, but also giving unauthorized assistance. For class files kept in Unix space, students are expected to use Unix
file permission protections (chmod) to keep other students from accessing the files. Failure to adequately protect files may
result in a student being held responsible for giving unauthorized assistance, even if not directly aware of it.
Students may still provide legitimate assistance to one another through the course mailing list. You are encouraged to form
study groups to discuss course topics. Students should avoid discussions of solutions to ongoing assignments and should not,
under any circumstances, show or share code solutions for an ongoing assignment.
All students are responsible for knowing the rules. If you are unclear about whether a certain activity is allowed or not,
please contact the instructor.
All assignments will be performed as a group or individually. All students must attend all presentations by their peers to
receive full credit for their presentation grade.
Students will construct a single application over the duration of the semester
and will be delivered in a series of milestones. This simulates a professional
software development environment.
Your grade in the class will be comprised of 4 assignments worth 25 points each:
Each assignment will be demoed in class on the due date. Late assignments are not accepted.
- 15 points - project requirements
- 3 points - brief project writeup - how is each requirement met, design decisions, programming tricks, helpful resources
- 3 points - website usability - how easy is the site to use
- 2 points - website aesthetics - how nice does the site look
- 2 points - midway status report - 3-4 min presentation on assignment progress
The grading scale is as follows (+ and - modifiers will be applied as appropriate):
- 90-100 A-, A
- 80-89 B-, B, B+
- 70-79 C-, C, C+
- 60-69 D
- 0-59 F
Attendance and Participation
I expect you to attend class and to arrive on time. Your grade may be affected if you are consistently tardy. If you have to
miss a class, you are responsible checking the course website to find any assignments or notes you may have missed. Students
may leave after 15 minutes if the instructor or a guest lecturer does not arrive in that time. Students will also be required
to attend all midway and milestone presentations from their peers to receive full presentation credit.
Relevant texts will be recommended in class; all are optional.
Students should signup for the class email and slack lists. You do not have to use an ODU email address -- sign up with any
email address that you would check daily. I will use both the list and slack channel to send out important updates (assignment
deadline changes, class cancellations, office hours cancellations, etc.).
Please be respectful of your classmates and instructor by minimizing distractions during class. Cell phones must be turned off
Make-ups for graded activities are possible only with a valid written medical or university excuse. It is the student's
responsibility to give the instructor the written excuse and to arrange for any makeup work to be done.
In compliance with PL94-142 and more recent federal legislation affirming the rights of disabled individuals, provisions will be
made for students with special needs on an individual basis. The student must have been identified as special needs by the
university and an appropriate letter must be provided to the course instructor. Provision will be made based upon written guidelines
from the University's Office of Educational Accessibility. All students are expected to fulfill all course requirements.
Students are encouraged to self-disclose disabilities that have been verified by the Office of Educational
Accessibility by providing Accommodation Letters to their instructors early in the semester in order to start
The course website should be your first reference for questions about the class. The schedule will be updated throughout the semester
with links to assigned readings. Announcements and frequently asked questions (FAQ) will also be posted to the course website.
The best way to get help is to come to office hours. If you cannot make the regularly scheduled office hours, please send an email to
setup an appointment.
I am available via email, but do not expect or rely on an immediate response.