This is a hands on, lab-based, course that introduces the basic concepts, theories and associated methods necessary to work with the web. Topics will cover a range of areas including HTML, CSS, and both client-side and server-side scripting.
Lecture notes will be posted on the calendar. You are expected to review the notes and follow along with the problems at the end. There is no required textbook, but the is a recommended textbook (Internet & World Wide Web: How to Program, Fifth Edition, P. J. Deitel, H. M. Deitel, A. Deitel; Prentice Hall, 2012) and suggested reading from external websites.
Near the bottom of the online notes for nearly every lecture there will be example problems for you to work during class. These problems are also good practice for the exams.
There will be a heavy emphasis on validating all HTML and CSS files to ensure they comply with the standards. You will also have to debug your work in this class (validating helps with debugging HTML and CSS). You are expected to become familiar with reading the validator errors for HTML and CSS, console errors for JavaScript, reviewing the logs for PHP, and using the debuggers available.
The
calendar is the primary source of information and guidance that will be used throughout the semester.
You are expected to check there often for readings, notes, posted assignments, and deadlines.
Labs: There will be weekly labs. Most labs will start on Tuesday will be due Friday at 2359.
Labs will be turned in using the online submission system and the instructor will also expect to have your lab files available in your web folder (more about that later). Each submission must include a README file with information about each lab.
Note: be prepared to work on labs outside of the lab period. As there
is no homework in this class, labs are more complex and will require more time.
Quizzes: Be prepared for weekly quizzes.
Project: There will be one large project in this class. You will work in groups of 3-4 students to complete a functional and interesting website. Final project presentations will be during the final exams.
The grandparent of today's Internet, ARPANET was implemented in the late 1960's by ARPA (the Advanced Research Projects Agency). This new network consisted of a dozen universities and institutions connected via 56kb communications lines, and was the first of it's type, allowing shared resources.
The primary goals of this network were:
While this Internet was just for universities and research labs, the military became a big user, and the U.S. Government decided to allow access to this network for commercial purposes. Soon, a huge variety of networking and associated software appeared. The development of TCP/IP protocols enabled inter-operation.
As the Internet grew, businesses spent heavily to improve the Internet with fierce competition amongst the communications carries and the hardware/softare suppliers. Result → bandwidth (the carrying capacity) of the Internet increased tremendously and costs plummeted.
In 1990 Tim Berners-Lee introduced the concept of the World Wide Web (www) allowing users to locate and view multimedia based documents. Later, in 1994, he founded the World Wide Web Consortium (W3C) which is devoted to developing non-proprietary and inter-operable technologies for the web to make it universally accessible. Additionally, the W3C assists with standardization via W3C recommendations, including:
In this course you will be developing web pages and interactive content! To do this you will be using midn.cs.usna.edu, a CS Department server that is available for your use within all of your courses. This is the machine that you should connect to remotely (from outside of the labs) to do your work.
Files in your local ~/public_html/ directory will be visible online.