Syllabus 2016 Fall - csusbdt/322-2016 GitHub Wiki

Course
CSE 322 Web Page Programming
School
CSUSB
Quarter
Fall 2016
Prerequisites
CSE 202 or programming experience
Class format
online
Textbook
Various readings available for free on the Web
Instructor
Peter Watson
Email
[email protected]
Office hours
TBA
Course website
https://github.com/csusbdt/322-2016/wiki

Course Format

This course is 100% Web-­based. There are no exams. All reading material is freely available on the Web. Your grade is based on the timely completion of a sequence of assignments, which is maintained on the course website.

At the end of each assignment, you will send the instructor an email with information described in the assignment instructions. He or she will evaluate your work by looking at your source code and running your applications.

System Requirements

You can do all required work in this course using any of the three common operating systems: Windows, Mac OS X and Linux. The assignments are to be done using a free-tier Cloud9 account, no software is needed on your local computer other than a browser.

Course Goals

The goal of this course is to increase your knowledge and skills for Web page programming for desktop computers and mobile devices.

Learning Objectives

  • Learn how to build Web pages for desktop browsers and mobile devices using HTML, CSS and Javascript.
  • Learn the multipage and single page Web application design patterns.
  • Learn how to use cloud computing services to develop and deploy Web applications.

Assignments

In this course, you will complete a sequence of assignments. The assignments involve research, programming and problem solving.

Programs that are incorrect or do not solve the stated problem will lose some or all points.

Work that is submitted late will lose some or all points.

Writing a program to produce required behavior is not good enough for a full score in this class; you must also write code that is readable by humans. Program readability is important because real ­world programs are read over and over again in the process of fixing bugs and adding new functionality. Program readability will be evaluated according to the following set of criteria.

Criterion Description
Cleanliness Have unnecessary variables and logic been removed from the code?
Logical indentation Does indentation show logical structure?
Consistent indentation Does indentation follow a consistent policy?
Portable indentation If tabs are used for indentation, are they used everywhere instead of spaces?

Keep in mind that tabs display differently in different viewing and editing tools. This is a problem if you mix spaces with tabs to achieve indentation. If you use tabs, then make sure that you do not use spaces anywhere in your code to achieve indentation.
Logical spacing Does spacing show logical structure?
Consistent spacing Does spacing follow a consistent policy?
Expressive and clear naming Do variables, functions and classes have names that clearly express their purpose in the program?
Clear responsibilities Are responsibilities of functions and classes clear and consistent with their names? Is the code structured to avoid reliance on side effects produced by functions?
Necessary comments Are comments included when needed?
Unnecessary comments Are superfluous comments omitted?
Spelling Are user-defined identifiers free of spelling errors? Are comments and other documentation free of spelling and grammatical errors?
Nonredundant When 2 or more places inside a program need to perform the same activity, is that activity defined as a function and called as such from where it is needed?
Robust to changes Does the code avoid breakage problems when modified. For example, the following code is not robust to changes.
var s = 'hello';
print 'The length of the string is ' + 5;
This should be rewritten as follows.
var s = 'hello';
print "The length of the string is " + s.length;
Organization Is source code well organized into files and folders?

Grading

Your score will be computed by dividing the total of all points earned by the total possible points. The following scale will be used to assign a letter grade.

Percent Grade
95 - 100 A
90 - 94 A-
87 - 89 B+
84 - 86 B
80 - 83 B-
77 - 79 C+
74 - 76 C
70 - 73 C-
67 - 69 D+
64 - 66 D
60 - 63 D-
0 - 59 F

Students with disabilities

If you are in need of an accommodation for a disability in order to participate in this class, please let me know as soon as possible, and also contact Services to Students with Disabilities at UH-183, (909)537-5238. You are advised to establish a buddy system and alternate in the class if you require assistance in the event of an emergency. Individuals with disabilities should prepare for an emergency ahead of time by instructing a classmate and the instructor.

Academic Regulations and Procedures

See the CSUSB Bulletin of Courses for the University's policies on course withdrawal, cheating, and plagiarism.

Computer Science and Engineering Club

The Computer Science and Engineering Club is a student-run organization that uses a combination of email and campus meetings to plan events, ask and answer technical questions, post job and internship openings, and discuss other topics of interest to computing majors at CSUSB. Club­-sponsored events include seminars, workshops, tutoring and fun activities.

⚠️ **GitHub.com Fallback** ⚠️