The assignments in CS161 are designed to:
Each assignment centers around solving some problem. However, the solution itself has minimal value. Your instructor does not need 20+ copies of the program. You will almost certainly never use the program you write after you finish it. The value of the assignment comes from the work you put in to solve the problem: Learning to break a problem down into manageable pieces, write code to implement those ideas, and verify that your code is working.
The journey you go on to complete an assignment is the destination. Your instructor wants to see that journey, not just where you end up. As part of every CS161 assignment, you are required to submit a log of your progress on the project, generated using git.
If you are using either a codespace or have installed the recommended software and project templates on your computer, this work history will be generated automatically.
This video demonstrates how it works and how to view the work history. It demonstrates on a Windows computer. If you are using a codespace, everything will look very similar, you just won't be able to see the directory with the .git folder in it.
If you choose to use other software to write your code, it will be up to you to manually record your work history.
Remember to double check that the little book or mirror icon is present in the lower part of the VSCode window before you start working on your assignment. If it is not, you are not recording your work history!
Code without a clear work history is worth 0 points. Work with an incomplete or suspicious work history will not receive credit unless you come into office hours for a code interview.
If you switch between multiple computers (laptop and desktop, home and
school) while doing your assignment, you will need to make sure to copy
your work history from one machine to the other as you swap between them.
To do this, copy the entire project folder including the .git
folder
inside it.
If you are willing to do significant extra initial setup, you could use GitHub to set up a private repository and use it to sync your code. See the Chemeketa CS github guide for details.