Course Description

This course focuses on the phenomenon known as the World Wide Web (WWW or Web). Its focus is to present many of the core technologies that the Web is based upon. These core technologies include:

  • HTML and CSS (Hypertext MarkUp Language and Cascading Style Sheets)
  • HTTP (HyperText Transfer Protocol)
  • Web servers, their configuration and performance properties
  • Client-side Programming Using JavaScript
  • Ajax (Asynchronous JavaScript & XML) and JSON (JavaScript Object Notation)
  • Server-side Programming Using PHP and JavaScript

In addition the course will also cover the following subsidiary topics:

  • Web Services (REST)
  • Web Security
  • Web Technologies for Mobile Phones (Android and iOS)
  • Responsive Website Design
  • Cloud Computing (Amazon Web Services and Google Cloud Platform)
  • AngularJS and Nodes.js
  • Serverless Applications
  • AWS Lambda and Google Functions

Two Exams

  • Exam #1 around week 7.
  • Exam #2 at the end of the course.

Both exams will be closed book, closed notes, and no computers or electronic devices, such as smartphones or tablets are allowed.

Please familiarize yourself with the following Exam Rules:

  • Pen vs. Pencil. Using only a pen in an exam.
  • Students will be placed in vertical rows.
  • Only students by the two hallways and the front row will be allowed to ask questions.
  • Anyone found with class material on their desk will be immediately removed from the exam, their exam taken, and awarded a zero (0).
  • Anyone found with material on the floor will be deducted 10 points.
  • Anyone looking at other people exams / answers will be deducted 10 points.
  • Cell phones will not be allowed on anyone's desk. Anyone that is found/seen with a "visible" cell phone will be deducted 10 points.
  • Nobody will be allowed to leave the exam session before all exams have been collected.
  • Everyone must attend his/her exam session in which he/she is officially enrolled. Anyone who is found attending a different session will be deducted 10 points.

Student Scheduling Conflicts

No student is permitted to omit or take early a midterm or final exam.

Students should plan in advance to avoid scheduling conflicts in their midterm and final exam.

D-clearance for "overlapping" courses will be denied.

Development Homeworks

Numerous development homeworks will be given during the semester. To receive full credit for work done, code must be submitted by the end of the day on the day they are due.

Each homework has its own evaluation criteria. But two general criterias that your work should meet are:

Validity
Does it do what it is supposed to do? Does it produce the specified outcomes, and handle error conditions correctly and elegantly?
User Interface
Are the web pages, (i.e. user interface) designed so the client can easily navigate and find the information he is searching for?

When to turn in your homeworks

The homeworks in this course and their due dates are specified in the Lectures page and the Homeworks page. On the date that the homework is due, it may be handed in at any time up to 11:59PM. Our objective is that you always complete the homeworks as they are a valuable part of the learning experience. Partial solutions are much better than no solutions.

Late Homework Policy

Homework submitted for grading before or on the "Homework Due Date", as listed in the Schedule of Lectures, will be eligible for 100% of the grade points for the assignment. Homework submitted late will be accepted for up to 7 calendar days after the due date, and will receive an automatic 10% penalty. Homework submitted more than 7 days after the due date will not be accepted, and will be scored as a zero (0).

Mobile Lab Demonstrations

Homework 9 demonstations (Mobile lab) will be done in the classroom at the usual lecture time. Students should bring in to their classroom a laptop, a tablet, or a smartphone to demonstrate their solution to Homework 9. Students must show up at the time of thir respoective enrolled session. Participating to the wrong session will result in an automatic 5 point penalty. The Late Homework Policy does not apply to the mobile lab.

Grading

The following table shows the percentages for the 5 graded homeworks and the 2 exams, to make up the final score, used to compute student's final grade.

Homeworks 40%
Exam 1 30%
Exam 2 30%

All exams and homework assignments are required.

Re-Grading of Homeworks

  • Regrading of homewroks is available, for 10 calendar days, starting the day the scores are published in the Grades page, and a corresponding Piazza announcement of their availability has been made. Re-grading is by e-mail exclusively, to the Grader that scored your assignment. Assignment scores are "signed" by each grader using the two-letters listed in the class home page, under Teaching Staff - Graders. There is no re-grading of homework assignments after the 10-day period. There is no re-grading of Homework #9.

Re-Grading of Exams

  • There is no re-grading of exams. Unfortunately, due to the size of the class there will be no opportunity to see your exam and have it re-graded. With over 300 students we have neither the time nor the staff to go over each person's exam a second time. If you do not agree with this rule, please drop the class now, as these are the ground rules.

Final Grade

Final grades will be available EXCLUSIVELY online on the OASIS system. Final grades will not be posted on the class website and will not be available by e-mail request.

It is up to the Grade Dept. to decide when grades become available on Oasis. Do not inquire with the Instructors about the availability date of your grade. Any such inquiries will end up in the bit bucket. To contact the Grade Dept., please see the info at:

http://arr.usc.edu/services/grades/generalinfo.html

According to their FAQ, "Grades are officially released to students on OASIS five business days from the last final exam date for the university." [For Fall 2017, the "last final exam date" is December 13, which means final grades will be available no earlier than December 18]