Welcome to CSC 435

CSC435, 'Web Programming', is a upper division course within the American University's CS department. The course provides students with a strong foundation in the principles of web application development, starting from the fundamentals all the way to current technologies. Instead of website layouts and front-end design, the course focuses on back-end programming.Topics include creating interactive websites, web application architecture, server-side scripting, databases, client-server interactions and web security. Students will be introduced to specific sets of web programming tools such as HTML/CSS, JavaScript, PhP, Python CGI, and SQL. At the end of the course, students will understand some of the most important technologies that underlie popular websites they encounter everyday. The knowledge is both practical for creating modern web apps and intellectually interesting for a computer scientist.

Course syllubus is here: syllabus

Topics will include HTML, CSS, JavaScript, Python CGI, PHP, database SQL, dynamic web programming using Ajax and web framework (given time).

Course Info

Prerequisites:

Introduction to Programming, CSC 280.

Textbooks:

We don't require any textbooks. But I found the following textbooks great references.
  1. Learning Web Design, 4th Edition A Beginner's Guide to HTML, CSS, JavaScript, and Web Graphics, by Jennifer Niederst Robbins. . Required.
  2. JavaScript: The Good parts; Douglas Crockford, O'Reilly Media Inc., 2008. Highly recommended.
  3. Web Standards: Programmer's Reference, Steven M. Schafer, Wiley Publishing, 2005.
  4. Teach Yourself Javascript in 24 Hours, Michael Moncur, Sams Publishing, 2007 Recommended.
  5. Learning SQL, Alan Beautieu, O'Reilly Media Inc., 2005. Recommended.

Hours:

Lectures: Mon/Thursday, 5:20-6:35pm MGC Rm 324

Office hours: Wed, 4-6pm SCAN 110 or by appointment

Grading Policy

50% Assignments (five projects), 15% Mid-term exam, 15% Final Project, 10% Class attendance (in-class performances and attendance) and 10% in-class quiz.

Homework policy:

Homework is all about programming. No plagiarism: only high-level discussions are allowed (i.e., not relating to a single line of code), and you have to declare who you discuss with. Homework is due on the assigned due date (end of the day ). The late home work is not accepted. All homework must be submitted via blackboard. No email submission is allowed.

Attendence

We will do lots of live-programming, discussion, and quiz in class. Again, it is very much like learning a foreign language. Class participation is an important chance to practice your skills. Missing two classes without valid reasons will cause 0% attendence grade. Late for class more than 20 mins is counted as missing a class.

Online Discussion

Please sign up for piazza here:
CSC 435 Piazza

Final Projects

The materials covered in CS435 culminates in a final project, where students work in teams (maximum 3 people) or individual to implement a web application. Examples of previous projects include:

A successful student project proposal is:

Student project proposals should be sent to bxiao at american.edu as early as possible and no later than the Feb 15th. Project proposals should include a paragraph pitching your project to students.

Other Information

Please let me know if you have any other questions we can help address! The instructor can always be contacted by sending an email to bxiao@american.edu. Please allow 48 hours for email responses.