CPSC 424 Computer Graphics Fall 2023

CPSC 424 Policies

On this page:


Course Communication

Assignments, handouts, and materials from class will be posted on the course web page, specifically the schedule page. You will need to check this page regularly to make sure you stay up-to-date.

Some material may be posted on Canvas. There will always be a reference to the existence of this material on the schedule page so that you don't need to also check Canvas for updates.

Email will be used for individual communications and for time-sensitive announcements, so you should also regularly check your HWS email account.


Classroom Conduct

Learning is much more effective if you are engaged in the material. You should come to class prepared for the day's activities, and should be on task during class - please do not surf the web, text, play games, do assignments for other courses, etc during class time. Also please do not wear headphones during lab - it makes it difficult to interact with you, and you may miss important announcements to the class about assignments.

Arriving late, leaving early, and coming and going during class is distracting to me and your fellow classmates. Please endeavor to arrive on time, and to take care of any necessary business before or after class so you can be present for the whole class period. If you know in advance that you will need to miss part or all of a class, please let me know.


Coding Standards

Good organization and following reasonable conventions plays an important role in being able to successfully write and debug programs, and well as making your code more accessible to others. You are expected to employ good programming habits and consistently follow an appropriate set of conventions (such as this). You may lose points if your code is difficult to follow even if it works correctly.


Attendance and Making Up Work

You are expected to be on time for all class and lab sessions, and to be present and engaged in the course for the full period. Any absence, whatever the reason, means that you miss out on discussions and activities that take place in class. This puts a greater burden on you to catch up, and students who regularly miss class often end up not doing as well in the course. In addition, announcements are made at the beginning of class, and late arrivals may miss important information.

However, it is understood that sometimes there may be circumstances when you are unable to attend class. It is especially important that you not attend class and expose others to illness if you are sick.

Excused absences are absences due to official Colleges activities (e.g. sports competitions, musical performances, debate competitions, field trips), academic events (such as presenting at or attending a conference), religious observances, illness, or personal or family emergencies. A reason must be provided in order for such an absence to be counted as an excused absence. (Note that providing a reason does not automatically make an absence excused - it must also be one of the reasons listed above.)

Missing class for other reasons - such as job interviews, sports practices, helping out a friend, leaving early for a vacation, oversleeping, or being too busy - is considered to be an unexcused absence. Any absence for which no reason is provided is automatically considered to be unexcused.

  • There is no direct penalty for three or fewer absences, whether excused or unexcused.

  • There is no direct penalty for excused absences, regardless of the total number of absences. However, missing more than three classes, or more than one in a row, puts you at greater risk of falling behind. This means it is important for you to be proactive about planning for absences in advance when possible and catching up promptly afterwards.

  • If you have more than three absences (whether excused or unexcused), any unexcused absences may negatively impact your course grade, up to a full letter grade.

If you cannot attend class, please let me know as soon as possible. You are responsible for acquiring any notes, handouts, assignments, and other material missed as the result of an absence - make sure that you check the schedule page for new assignments and materials from class, complete any missed readings, and come to office hours if you have any questions or need help with any aspect of the material. This should be done promptly to avoid falling behind. In addition, every effort should be made to hand in assignments on time, even if you are absent from class that day. If a last-minute emergency prevents you from handing in completed work on time, the assignment will be accepted late without penalty only if arrangements are made as soon as possible to get the assignment handed in. If you need more time to complete the assignment, then you need an extension (see below). A missed exam can only be made up afterwards if the absence is excused and not foreseeable (e.g. illness or other last-minute emergency). For planned absences, arrangements for rescheduling the exam must be made in advance.


Late Policy, Extensions, and Rescheduling Exams

There is a steady workload throughout the course, and foundational topics introduced earlier are used and built on later in the course. Both of these mean that it is important to stay on track - it is difficult to catch up if you get behind, and every effort should be made to hand in assignments on time. However, as with attendance, it is understood that there may sometimes be extenuating circumstances which make meeting every deadline difficult.

Late days: Three late days may be applied to labs and projects. These are available in whole-day increments, with the exception that something handed in by midnight on the due date is considered only a half day late. (For example, a lab due at 1:20pm on Friday is half a day late if turned in by midnight that night, one day late if turned in any time between 12:01am and midnight Saturday, two days late between 12:01am and midnight Sunday, etc.) College recesses aren't counted, so, for example, a lab due at 1:20pm on the Friday before fall break is only one day late if turned in any time between 12:01am Saturday and midnight Wednesday night. No reason is needed to utilize late days, but you must email me before the due date to say that you plan to use late day(s) and to indicate when you will hand in the assignment.

Extensions: If you have exhausted your late days and don't think you can get something handed in on time, see me as soon as possible to discuss a timeline for getting back on track. Extensions are expected to be rare and to accommodate specific situations (such as illness); if you are struggling with the material, seek help promptly at office hours so that you don't fall behind.

Rescheduling exams: If you will have an excused absence on the date of an exam, please see me as soon as possible (before the exam date!) to discuss options for rescheduling. A missed exam can only be made up after the fact if the absence is excused and not foreseeable (e.g. illness or other last-minute emergency). Arrangements for making up the exam must be made as soon as possible.

No work will be accepted after the end of the Registrar-scheduled final exam time slot except in the case of an incomplete. Late days may not be used to extend this deadline.


Academic Integrity and Collaboration

The HWS Principle of Academic Integrity, stated below, governs all of the work completed in this course. From the HWS Catalogue: (available online at http://www.hws.edu/catalogue/policies.aspx)

Principle of Academic Integrity

The faculty of Hobart and William Smith Colleges has oversight of the curriculum and the classroom experience, and insists that students undertake all academic exercises with the utmost honesty and integrity. This principle of academic integrity lies at the heart of our learning community and forms the foundation for everyone's academic efforts.

Starting with adherence to the principle of academic integrity, the individual student bears responsibility for his or her own education and must undertake all academic work with complete honesty and integrity. As well, each student must do his or her best to assure that this principle extends to all others in the community. Categories of academic work covered by the principle of academic integrity include, but are not limited to, the following:

  • Examinations: Giving or receiving assistance during an in-class or take-home examination, quiz, or any other academic exercise, except as specifically authorized by an individual course instructor, violates this principle.
  • Papers: The presentation or reproduction of ideas, words, or statements of another person as one's own, without due acknowledgment, is considered plagiarism and violates this principle.
  • Library Use: Failure to sign for materials taken from the library, destruction or theft of any library materials, and similar abuses of library privileges infringe upon the rights of other students to fair and equal access and violate this principle.
  • Reports and Laboratory Exercises: Giving or receiving unauthorized assistance and the fabrication of data or research results violate this principle.
  • Computer Use: Any deliberate attempt to prevent other users' access to computer services, deprive them of resources, or degrade system performance violates this principle. The use of programs or files of another computer user or the use of another person's account number or password without permission also violates this principle. Failure to attribute the source for any information or writing derived from any computer source (database, website, internet, etc.) and incorporated in any academic work submitted is also a violation.
  • Advising and Registration Forms: Forging an adviser's signature or altering any signed document will result in the student's de-registration. The student will not be allowed to re-register until the adviser has approved any changes. Any student suspected of forgery of any faculty or administrator signature may face disciplinary action by the student's dean or the Committee on Standards, a faculty, student, and administrative committee charged with enforcing the academic and behavioral expectations of the Colleges' community (for more information about the Committee on Standards, please review the Disciplinary Process section, Hearing Bodies of the Community Standards).

Academic dishonesty is determined in every case by the evidence presented and not by intent. Questions of intent and circumstances under which an infraction occurred may be considered in determining a sanction.


The following is an excerpt from a post by Alex Gourevitch, a professor at Brown University:

The point of writing assignments in college is not the product but the process. The process involves having to face a question, work out what you think, roll it over in your mind, make false starts, try again, and, after all that, develop your own thinking. If you take the process at all seriously then you should come out a little different at the end than at the beginning. And if it is a process you have to engage in repeatedly, over the course of college, then you graduate more than a little different than when you entered.

It is true that the writing process happens to issue in a product: the essay. And yes, you only go through the process because you have to produce the essay, and you feel pressure to produce a decent essay because you know that is what will be graded. But it's still not the product that is the point. It is the development of those capacities for understanding questions, considering possible answers, working with and through language for yourself. Those are abilities of general value in life, not just in a specialized academic setting. ... Which again, is why the particular product is not really the point, at least not in college.

What Prof. Gourevitch says about writing papers is equally applicable to programming - just substitute "program" for "essay". Many of the assignments in this course are about applying concepts in practice and learning to work with a particular library or application - success means understanding those concepts and gaining proficiency with those tools, not simply turning out programs or a particular end result, and academic integrity requires that what you hand in reflects your engagement with those tools.

So, what does that all mean for this course?

Copying part or all of someone else's solution is expressly prohibited and it is never acceptable to be in possession of someone else's program or solution before you have handed in your own. This includes both computer files and paper copies, and also solutions produced by generative AI (such as ChatGPT and Codex), "homework help" or "study aid" sites (such as Chegg and Course Hero), and sites where you post a homework problem or question and solicit answers from others. Decompiling or reverse-engineering someone else's code (including provided code) is also prohibited.

The course materials (including provided links or references to documentation and other materials) along with office hours should be your primary resources. However, unless it is otherwise prohibited (such as on exams), you can use other materials (such as reference books or websites) as technical references to learn about a particular topic and for examples, not solutions. An example illustrates a technical point or problem-solving strategy, applied to a different problem instance than the one you are trying to solve. An example can't be used as-is to solve your specific problem, but can be adapted to address some aspect of the problem. For example, an example demonstrating how to set up lights in OpenGL is OK to use when writing an OpenGL program involving lights (as long as your light setup is different from the example's). A solution gives a significant amount of the answer to your particular problem (or an extremely similar problem). Quantity is relevant here - something might seem like just an example because it doesn't solve the exact problem, but if a single source covers a lot of your task, it becomes more of a solution. Using someone else's code "as a guide" to completing your own is using it as a solution, not an example, even if you make some changes.

On some assignments you may discuss ideas with other students in the course as well as get help from the instructor. These assignments are for learning and practice, and it can be very productive to figure things out with your peers. However, these are still individual assignments and it is easy to overestimate how much you yourself understand when watching someone else do something. You must always make the first attempt on a task yourself and you may not work with other students to produce a solution unless it is a designated group assignment. It is best to limit your discussions with other students to ideas and concepts rather than specific code, and to locating and understanding examples rather than working on specific solutions. This can be a bit fuzzy if you need help applying an example to the specific situation or with debugging, since these situations necessarily involve working with a particular solution. However, always keep in mind that what you hand in must reflect your engagement with the material - if getting help applying an example or tracking down a bug is turning into someone else producing your solution, the line into unacceptable collaboration has been crossed. Come to office hours for help in those situations.

Specifically:

  • Exams measure your individual level of mastery of core concepts and fundamentals. They are to be completed solely by the student whose name is on the paper. Only resources allowed in the exam instructions may be used, and the only person you may discuss exams with is the instructor.

  • Labs are a chance to practice the material and gain understanding. You may discuss ideas with other students in the course, get help from the instructor, and use other materials (such as reference books or websites) as technical references as outlined above. However, anything you turn in for a grade must be your work - the idea is that you can get help with understanding ideas and examples, and to some degree with applying examples and debugging, but you may not work with others to construct a solution.

  • Projects fall in between exams and labs - they are opportunities to learn, but, particularly in the case of the midterm project, also a chance to demonstrate mastery. Office hours should be your primary resource if you want to discuss or need help with concepts and design, but you may discuss/get help from other students and may use other materials (such as reference books or websites) when it comes to technical content (i.e. working with particular libraries). Always keep in mind examples not solutions and that anything you turn in for a grade must be your work (or your group's work, in the case of group assignments).

In all cases, you must fully understand the help you receive. (You should be able to explain your solution to someone else.) You should never just be writing down code that someone else wrote or told you to write.

A first offense may result in a warning, depending on the nature of the infraction. A second offense (and more severe first offenses) will result in a 0 on the assignment or portion of the assignment. Additional offenses are grounds for failure in the course. In all cases, the situation may also be referred to the Committee on Standards.

Ignorance of the policy and desperation ("It was the night before it was due and there wasn't anyone else to ask!") are specifically not excuses for violating academic integrity policies. If you are having trouble with the course material, come to the instructor! It is never advantageous to "borrow" someone else's solution, and the time spent trying to disguise this "borrowing" is far better spent getting help.


Being Successful

There is a steady schedule of assignments and many aspects of the course material are cumulative - don't fall behind! Review each day's material soon after class, start on assignments early (it is better to spend some time each day than to set aside a large block of time the night before the assignment is due), ask questions, and take advantage of office hours if you are stuck on something or want to discuss ideas. Letting a point of confusion slide can quickly snowball and then it is very difficult to catch up.

Note taking on paper is encouraged as it avoids the distraction of electronic devices and the act of handwriting helps with retention of information. If you do use a laptop or other device to take notes, you are encouraged to turn off notifications and close other applications to reduce the temptation of those distractions. Either way, anything that appears on the projector screen - slides or code - will be posted on the schedule page soon after class, so you don't need to copy down all of that material in your notes. I recommend that you (only) make note of key ideas and examples during class and then rewrite your notes, filling in other details and relevant information, soon after class. This allows you to pay more attention during class, increases your engagement with the material, and helps you identify what you need to ask questions about.

Getting help:

  • The primary resources for this course are the textbook, course website, materials provided in class, and office hours. Start with these! (If you can't make the scheduled drop-in office hours, email me to arrange another time.)

  • For more general help, such as with writing, study skills, or time management, you are encouraged to check out the Center for Teaching and Learning (CTL):

    At Hobart and William Smith Colleges, we encourage you to learn collaboratively and to seek the resources that will enable you to succeed. The Center for Teaching and Learning (CTL) is one of those resources: CTL programs and staff help you engage with your learning, accomplish the tasks before you, enhance your thinking and skills, and empower you to do your best. Resources at CTL are many: Teaching Fellows provide content support in 13 departments, Study Mentors help you manage your time and responsibilities, Writing Fellows help you think well on paper, and professional staff help you assess academic needs.

    I encourage you to explore these and other CTL resources designed to encourage your very best work. You can talk with me about these resources, visit the CTL office on the 2nd floor of the library to discuss options with the staff, or visit the CTL website.

    Study Mentors: The CTL resource especially valuable to students either just starting college OR adjusting to the demands of their choice of major is the Study Mentor program. Study Mentors engage directly with each student in the process of adjusting to new academic demands: they help you find the time you need for both your academic and co-curricular activities, and can help you find strategies to accomplish the tasks in front of you and enhance your reading and study time. Study Mentors may be especially important for those of you who are involved in many activities, work on or off campus, are studying for Teaching Certification, graduate school exams, or prepping for fellowships, or who have one or more unusually demanding courses on your schedule. To meet with a Study Mentor, make an appointment via StudyHub on the CTL website. You can also contact Ingrid Keenan, x3832, keenan@hws.edu, or drop in at the CTL office on the 2nd floor of the library.

  • There are a number of resources on campus if you are struggling with mental health or other issues. Contact the Counseling Center, or reach out to me, your dean, or anyone else you feel comfortable talking to.


Office of Disability Services

It is the policy and practice of Hobart and William Smith Colleges to create inclusive learning environments. If you are a student with a disability and there are aspects of the instruction or design of this course that present barriers to you, please begin the process of registering with Disability Services by completing the Intake Form on Accommodate (click here).

Students are always welcome to contact the Disability Services team: Shanelle France, Associate Director of CTL for Disability Services and Thom Mascia, Disability Services Accommodation Manager are the main contact staff for Disability Services.
Email: CTL@hws.edu
Phone: 315-781-3351

Additional information can be found on the Disability Services webpage.