Edit me

Your grade in this course will be based on the following assignments.

All assignments are turned in using Canvas and all grades will only be recorded in Canvas.

Quizzes

Quizzes are completed entirely within Canvas and are expected to be completed on your own. There is generally not a time limit, but I expect that you should be able to finish a quiz in about 30 minutes. You are welcome to use your notes, the textbooks, the class website or any other sources, but you should complete the quiz on your own.

Assignment Points Due date
Quiz 1 20 2022-09-02
Quiz 2 20 2022-09-09
Quiz 3 20 2022-10-05
Quiz 4 20 2022-11-02
Quiz 5 20 2022-11-30
Quiz 6 20 2022-12-07
Total quizzes 120  

Problem sets

Problem sets are linked from Canvas, but generally use github for the content of the answers. You will submit a link to the repository containing your code. Problem sets are usually group assignments. It is expected that all members of the group will work together to create the answers. You may break up the work, or collaborate, but all should understand and agree with the answers being submitted. Problem sets can take a few hours to complete. You are welcome to use your notes, the textbooks, the class website or any other sources.

By working together in a group, my hope is that different members will think of different solutions. There are almost always different solutions. Any functional solution is fine.

Assignment Points Due date
Problem set 1 20 2022-09-16
Problem set 2 20 2022-10-03
Problem set 3 20 2022-10-17
Problem set 4 20 2022-11-04
Problem set 5 20 2022-11-21
Total Problem Sets 100  

Projects

There are two projects for the course. These are not necessarily any harder or more involved than a problem set, but may take a bit more time as you generally need to come up with an idea (guidelines will be provided) and write the code. Projects will also be group assignments. Again, I am more than happy to help at any stage of the project.

Assignment Points Due date
Project 1 40 2022-11-04
Project 2 40 2022-12-07
Total Projects 80  

Participation

One assignment will be creating your GitHub account (5 points).

As part of the assignments using github (most problems sets and the projects), I will look for commits from each member of the group. These will serve as part of the participation grade. (10 points–this will be entered in as 10 points after the first assignment. As long as you have commits on each assignment it will stay there. If you do not participate in an assignment, I will deduct points. The grade will not be final until project 2 has been graded.)

As part of two of the problem sets, we will have a code review exercise where you will review and comment on another student’s code. Your participation in these will make up the other part of the participation grade. (15 points–after the 1st code review, I will enter this as 15 points. As long as you participate in the second code review it will stay there. If you do not participate in a code review, I will deduct points.)

Course total points

Category Total points
Quizzes 120 points
Problem sets 100 points
Projects 80 points
Participation 30 points
Total 330 points