Introduction to Internet Programming

Fall 2017


  • Office Hours:
    • Mon:   2:20 - 3:10
    • Tues:   8:50 - 9:20 (Zurn 207)
    • Tues:   10:00 - 10:50
    • Tues:   1:00 - 1:50
    • Thur:   8:00 - 09:20 (Zurn 207)
    • Thur:   1:00 - 1:50

Course Details

Instr: Dr. Roger Griffiths
Office: Old Main 305
Phone:   824-2123
Location:   Advanced Computer Lab (basement of Old Main)
Class Time:   Monday, Wednesday, Friday;   1:00 - 2:10 (4 semester credits)
My Schedule:
Texts: 1)   CSS: The Missing Manual (4th ED)   by David McFarland
Publisher: O'Reilly Media; ISBN-13: 978-1491918050
2)   HTML5 in easy steps (2nd Edition)   by Mike McGrath
Publisher: In Easy Steps; ISBN-13: 978-1840787542

Course Description:

This course serves as an introduction to the process of developing semantic, syntactically valid, and accessible websites using HTML and CSS. You will learn everything you need to know to start building websites from the ground up. All web content will be hand coded using a simple text editor with a strong emphasis on well-formed valid code.

The course will provide a comprehensive coverage of both HTML and CSS, and a brief look at the new CSS modules and frameworks.

Before enrolling in the course, the student should be competent in basic computer operations on the operating system of their choice. A laptop is not required for this course.

Learning Objectives:

By the end of this course, you will have acquired proficiency with both HTML and CSS while learning basic web programming concepts and skills. More specifically:
  1. Have a very good working knowledge of HTML (Hyper Text Markup Language), CSS (Cascading Style Sheets), and the basic principles of website design.
    • You will demonstrate this mastery of HTML(5) through your utilization of almost every (valid) HTML tag in the web content that you generate in this course.
    • You will demonstrate your mastery of CSS(3) through your: writing HTML for CSS, the use of a very wide range of selectors, your use of CSS inheritance and managing the cascade, applying style to almost every element on each page including the page navigation, graphics, tables, forms, and lists. You will both design and build pages using sophisticated layouts, and incorporate responsive web design, and well as build special styles for printed pages.
    • You will demonstrate your mastery of each new concept/skill as the semester progress in the construction of many individual web pages, often as assignments. You will demonstrate your mastery of the entire course content via two final projects (more below).
  2. Utilize your HTML and CSS skills to construct a variety of individual web-pages. To enhance your understanding of these technologies, all web content (all coding) will be done using a simple text editor.
  3. Understand the importance of web standards as per the W3C (World Wide Web Consortium). Demonstrate this understanding in the construction of all of your web content.
    • Use separation of the content from the presentational aspects, as well as from the behavior;
    • build semantic content in web pages;
    • know how to locate web accessibility guidelines and standards, and implement same in the construction of web content.
  4. Demonstrate your understanding the basics of (secure) file transfers, file management, and web server configuration. We will be working with a live server running Red Hat Enterprise Linux.
  5. Demonstrate a general understanding of the delivery of web content, and each of the individual piece of that flow: the web-server, server-side technologies and content generation, the internet (TCP/IP, protocols, domain names, IP addresses and n-tier architecture), the web browser, and client-side scripting.
  6. As a Direct Measure of the learning objectives, and as a practical matter, you will design a complete website from the ground up, organize the file structure, upload your files to our live-server, build each HTML page and all of the associated CSS files, test the site for validity and accessibility, debug your site, and present a final finished final site (the course final project).


A number of programming assignments will be made during the term. Some will be as in class exercises, others will be assigned as homework with a specific due date. Programs must be finished in on time, unfinished assignments will be graded as they existed at the deadline, or occasionally, penalized and permitted late.


Percent % Letter Grade
90 to 100 A  
87 to 89 B+
80 to 86 B  
77 to 79 C+
70 to 76 C  
60 to 69 D  
Below 60 F  
There will be:
  1. homework assignments, which includes your final project,
  2. an in class midterm exam (100pt) and,
  3. a final exam (200pt cumulative)
    -- exams are closed-book and without the use of a computer.
Course grades will be calculated as follows:
  • In class exams:   55%
  • Assignments:      45%

Your overall performance in the course is measured by the total number of points you accumulate relative to the maximum points possible. These are the only points possible in this class, there is no extra credit or 'make up' for poor examination grades. Your letter grade in this course will be based on the distribution at right. If you ask for extra-credit, I will know that you did not bother to read this syllabus (your contract), which of course is not a good sign.

  • Students are required to take all exams at the scheduled hour as they appear on the syllabus and course schedule.
  • There will be no late 'make-up' exams, as this is unfair to the rest of the class. If you know in advance you are going to miss a scheduled exam, let me know well in advance of the exam. Athletes, carefully review our exam schedule looking for conflicts.
  • A missed exam will result in the final exam being worth 300 points (you do not loose any points for the missed exam, those points simply roll into the final exam).

Course Policies:

  • You are responsible for all that is announced or covered in class even if you are absent.
  • A prerequisite for additional help outside the classroom is regular class attendance.
  • Every student is required to establish a class contact, that is, a fellow classmate that you may contact in case you are having a problem with a particular homework exercise at night/weekend or in the event you miss class you can get the class notes from them.
  • If you miss class, you are responsible for getting the notes from your 'class contact' (see above).
  • Since you will be sitting in front of a computer every day in class, there is a strong temptation to 'play' during class - my suggestion: "Don't give in to that temptation" - more on this topic in class.
  • Email is great for simple communications, but more complex issues must be handled in person.
  • Don't use email as an excuse to avoid personal contact.
  • Due to the truly overwhelming amount of email I receive, any requests that involve more than a yes or no response may not get addressed in a timely fashion due to time constraints on my day, please come see me in that case.
  • I expect you to read this syllabus and get clarification of any items you do not understand the first week of class. If you send me an email asking me about something covered in this syllabus, that email will be disregarded.

Special Notes:

Mathematics & Information Technology Outcomes and Assessment:

Information Technology majors will be assessed in this course as indicated below.

Learning Outcome Assessment Tool
Students will construct well-designed, usable websites, with content, presentation, and functionality separated, adhering to web standards and web accessibility guidelines. Website production projects

The final website projects will be assessed according to the attached rubric (Project-Site).

Learning Differences:

In keeping with college policy, any student with a disability who needs academic accommodations must call Learning Differences Program secretary at 824-3017, to arrange a confidential appointment with the director of the Learning Differences Program during the first week of classes.

Support of the Mercy Mission:

This course supports the mission of Mercyhurst University by creating students who are intellectually creative. Students will foster this creativity by: applying critical thinking and qualitative reasoning techniques to new disciplines; developing, analyzing, and synthesizing scientific ideas; and engaging in innovative problem solving strategies.