CSC-336 Web Programming

Syllabus

Back to Home

Course Description

Web Programming I (3) This course provides students with a strong foundation in the principles of web application development from the fundamentals to current technologies. The course focuses on back-end programming rather than website layouts and front-end design. Topics include creating interactive websites, web application architecture, server-side scripting, databases, client-server interactions, and web security. Students are introduced to specific sets of web programming tools including JavaScript, Node.JS, PhP, Python CGI, and SQL. Students gain an understanding of some of the most important technologies that underlie the popular websites they encounter every day, which is both practical for creating web apps and intellectually interesting for computer scientists. Prerequisite: CSC-208.

Grades

Weekly Assignments (80%)

There will be assignments given most weeks of this course. Each assignment will be evaluated on a 0–3 point scale.

Assignment Evaluation (3 point scale)

External Resource Reliance (3 point scale)

For some assignments, a score will be given to communicate to you the instructor's assessment of how much you appear to be relying on external resources. This will not be directly factored into any grades. Instead, it is meant to help you understand how your work engages with the course material. Remember, you should not be turning in code you do not understand, and in general, should not be turning in code you did not write.

Verbal Assessment (3 point scale)

There will be at one or more verbal assessments of your understanding of the assignments given by the instructor. The instructor will decide which questions are appropriate and give an indication of 0, 1, 2, 3 as described below:

Note: A 2 is considered pretty good. That's the expected level for most assignments.

Participation (20%)

Participation is required for all students. Participation will be evaluated based on attendance, participation in class discussions, and participation in group work.

Code Understanding and Use of Generative AI

All submitted code is expected to be understandable by the author; that is, students must be able to explain their solutions and reasoning. The use of generative AI tools (such as ChatGPT, Cursor, Copilot, etc.) to produce code is strongly discouraged unless the student already has a full understanding of the concepts involved. Regardless of how the code is written, students will be required to explain all submitted code and project structures during reviews. Failure to demonstrate understanding will negatively impact grades.

Course Policies

Attendance is required. Late assignments will not be accepted.

View Course Schedule