Colorado State University Logo | CS 163/4: Java Programming (CS 1) Colorado State University Logo | CS 163/4: Java Programming (CS 1)
CS 163/4: Java Programming (CS 1)
Computer Science


The following policies all relate to grades, grading and late dates. Please view canvas for your actual grades in the course.

Grade Assignment

The assignment of letter grades will be made as follows:

Letter Grade Points
A ≥ 90%
B ≥ 80%
C ≥ 70%
D ≥ 60%
F < 60%

In general, we will not assign lower grades than shown. We reserve the right to change the grading cut lines.

Point Distribution

Activity Weight
Reading Assignments 15%
Labs 22%
Knowledge Checks & In-class 10%
Practicals / Homework 13%
Exams 40%

Grade complaints will be considered only for two weeks immediately following when the assignment grade appears on Canvas!

Assignment Categories

Reading Assignments

Reading assignments are to be done in zyBooks, and are meant to be done before the associated lecture. Additionally, for the next assignment to open in the module (labs, practicals, quizzes, exams), you must first complete the associated reading. The readings often start out longer at the start of the semester, but decrease in length when we return to topics. We will drop the two lowest reading assignment grades, but due to submission requirements, all readings need to be submitted at least once to progress in content.

To complete a reading, it suggested you use the link in Canvas every time you login as compared to going directly to zyBooks. Due dates for the assignments are in Canvas, and are the night before the associated lecture.

Accommodation Window / Resubmissions
You may resubmit assignments until the unit exam. Due to how technology interacts, the official “cutoff” date is in zyBooks which will allow you to submit anything done before that date to canvas at a later time. Please note, it is still recommended that you complete most of the reading by the due date in canvas!

For accommodations, the resubmission window takes into account most accommodations, as it will allow anywhere from 3 days to 3 weeks of extra time. While the expected time is the due date in Canvas, we understand that everyone can occasionally need accommodations, so having this resubmission window helps show competency at your own rate.


Labs are a major component in learning coding content, designed with variation and interweaving of topics in mind. We will drop the two lowest lab grades. They are meant to be done after the lectures, so the structure is reading -> lecture + knowledge checks + labs. Most labs are worth 10 points, but a few are worth more than 10 points. These are critical labs to the final project, and may not be dropped.

Accommodation Window / Resubmissions
You may resubmit labs up to 5 times until the unit exam. Due to how technology interacts, the official “cutoff” date is in zyBooks which will allow you to submit anything done before that date to canvas at a later time. Please note, it is still recommended that you complete most of the reading by the due date in canvas!

Also, remember you can run in development mode as many times as you want, you are just limited your times to submit for grading. Your submission count can be found in zyBooks after clicking the submit mode tab.

Knowledge Checks & In-class

Knowledge Checks and in-class activities supplement the lecture, by interweaving recall and instruction with the lecture content. In-class is only available in-class, and not able to be made up. Knowledge checks are available on canvas, required to progress content and may be redone as many times as possible until finals week. During a standard semester, we will have a max number of participation points for this category (not possible to go over 100%). This will allow you to make up missed in class days with knowledge checks.

Accommodation Window / Resubmissions
In class activities cannot be made-up. However, with knowledge checks it is possible to make up missed activities. Knowledge checks may be resubmitted as many times until end of the semester.

Study Suggestion
You should go back to older knowledge checks each week, and interweave your study habits. For example, during week four, pick a knowledge check from 1, 2, and 3 to redo. This will help solidify content, and help with retention of information.


Your practical assignments are what would traditionally be called homework assignments outside of your labs, even though we start the practical in lab. We call them practicals, because they are setup to mimic real world jobs/applications. As with most real world situations, you would be working with code others generated, and the practicals require you to interact with a large code base, working on specific tasks assigned to you by your employer. You will have five practicals throughout the semester. The first four practicals have three parts to them. They are as follows:

  • Code Tracing Quiz
    The code tracing quiz is in Canvas, and is one the first things you should work on. It helps you figure out the code you are working with, and what you have to work on. It is worth 50 points.
  • Coding
    The coding section is hard, and meant to take nearly the full two weeks! You need to start right away, and work through it in sections. Testing frequently is essential, as writing the entire code base at once is a recipe for disaster. It is 100 points of your assignment.
  • Reflection
    The reflection is essentially a free 50 points for completing it. Research shows reflecting upon projects afterwards helps you retain memory and improve upon future projects. With that said, we read every reflection, so you have to put in a real reflection, or you risk 0 points.

These practicals are some of the hardest things you will do in this class. They are meant to be hard, but are only 13% of your grade. You can also easily get half the points, and successful completion of the practicals often separate A-grades from B-grades.

The last practical is a project that lasts the entirety of Unit 4. You will be asked to return to one of the practical assignments, and code a new version from scratch. The new version will rely heavily on inheritance, and focuses on good coding design and practice. You will also be implementing additional features. It will take time, and will be a major challenge / component of the practicals. You will earn 100 points for the code and 25 points for the reflection. There is no code tracing section, as you are writing the entire thing from the ground up following a UML diagram.

Accommodation Window / Resubmissions
You may submit for grading the code section for practicals up to 5 times. Due to the building nature of practicals, you will only have three days for an accommodation window. Further extensions would cause a cascading affect causing you to fall behind in the course beyond repair.


Exams are broken into three components: practice exams, coding quizzes, and the exam itself. The practice exam is opened up at th beginning of the unit, and it is suggested you take it every week until the exam. They have enough content that every time you take it, it will be different.

At the end of the unit, after all readings are submitted (at least once), and the practice exam is submitted (at least once), the exam will open.

The Coding Quiz will link to a zybooks lab. You have one submission attempt (submit for grading), but you may use all available resources except other people. We will be running the plagiarism checking software on the coding quiz/exam, so make sure it is your own work.

After the Coding quiz is submitted, the exam is open. You may take it at any point, and it will require proctoring software. This means you need a webcam and compatible computer. Information about the specific proctoring software for the semester will be found in Canvas. The exam must be submitted before the end of the unit, by Thursday or Friday is the recommended time.

Exam item points vary throughout the semester, the scale is as follows:

Exam Item Points
Exam 1 Practice Exam 20
Exam 1 Coding Quiz 5
Exam 1 Exam 75
Exam 2 Practice Exam 10
Exam 2 Coding Quiz 5
Exam 2 Exam 85
Exam 3 Practice Exam 5
Exam 3 Coding Quiz 10
Exam 3 Exam 85
Final Exam Practice Exam 5
Final Exam Coding Quiz 10
Final Exam Exam 100

Accommodation Window / Resubmissions
Practice exams can be resubmitted at any point in the semester, and as such, you should strive to get full points on them. It is also recommended that you go back to older practice exams before each exam, as programming is always cumulative. We will always take your highest score for the practice exams.

For exam and coding quiz accommodations, we will need accommodation letters, and to arrange accommodations before the exam or quiz.

Extra Credit

There are a number of extra credit assignments. The most notable are coding assignments based on the content of each unit. The extra credit won’t be applied to your grade until after all assignments are in for all students, and after any class curves are applied.

The goal of the extra credit is to provide an opportunity for students to show competency in programming skill. It will be applied to the labs category, and if a lab due date is missed, it is recommended students complete th extra credit assignments.

Additionally, completing extra credit helps provide additional practice, as learning to program takes practice.

While there are also a number of extra credit opportunities, the most that will be applied to your grade is 100 points. For reference, an unit’s worth of labs is about 100 points.

Topic Mastery

As way to track mastery of topics, we reserve the option to add additional assignments based on your performance on previous assignments. The goal of these assignments is to encourage mastery of topics. Grading for the additional assignments will be factored into the total for the category, thus increasing your overall grade for that area, and reducing the impact of previous performance.

Course Workload Expectations

You are expected to work every night on this due to daily assignment due dates. This is to encourage good study habits, and the importance of repetition. As it is a 4 credit course with a lab, you should expect to spend 12-16 hours a week for a standard semester (or 24-32 hrs weekly for an 8 week) completing content in this course. However, this varies greatly based on the path you take when solving problems.

Computer Science Department

279 Computer Science Building
1100 Centre Avenue
Fort Collins, CO 80523
Phone: (970) 491-5792
Fax: (970) 491-2466

CS 163/4: Java Programming (CS 1)

Computer Programming in Java: Topics include variables, assignment, expressions, operators, booleans, conditionals, characters and strings, control loops, arrays, objects and classes, file input/output, interfaces, recursion, inheritance, and sorting.