All the work you hand in must be your own.
You may not use any materials or work with students from previous semesters of CS111. Submitting work based on a previous semester's solution is an honor code violation -- for both the person who submits the code and the person who supplies the code.
You should be able to explain the operation of all code you submit.
When you work with a partner on an assignment, you may submit the same code file, and you must list all the people that you consulted when developing your code. All partner work must be a true collaboration where partners actively work together on all parts of the task. It is not acceptable for partners to split up the task and work independently.
Similarly, if you consult materials outside of CS111, you must cite any sources that contribute to your solution. You can do so by adding a comment near the relevant piece of code or at the top of the program file. If you use a construct that has not been taught in class, you must explain where you learned it.
All quizzes and exams are open notes (notes must be paper; no access to devices is allowed). Students may not access any type of digital resource during quizzes and exams.
Late homeworks are not accepted; extensions are not granted (see more below under "Late homeworks are not accepted".
We will interpret a violation of any of the policies stated above as a violation of the Honor Code, and will bring any such violation to the attention of the Honor Code Council.
The use of AI-powered tools for learning and completing any type of coursework in CS111 is explicitly prohibited.
In other words, all code you submit in this class must be entirely composed by you.
If we detect what we think is AI-generated code in one of your submissions, we may, at any point in the semester, have a conversation with you about your code, and/or file an Honor Code charge against you.
Here are some of the AI-powered tools currently available:
Generative AI tools - these are tools such as ChatGPT, Claude, Gemini, DALL-E2. They are capable of generating text or images on demand.
AI-assistants embedded in IDEs - an IDE is an Integrated Development Environment that is used for programming, e.g. Thonny or Colab.
Search Engines - Most search engine queries may result in AI-based answers. We recognize that asking search engines questions is an important part of your learning, but when these searches produce code solutions or fragments, you are not allowed to use these directly in your solutions.
This course is mandatory credit/non-credit (CR/NON).
Your course grade will be based on the following four components:
Homeworks (n=10; drop lowest 2)
Quizzes (n=10; drop lowest 2)
Midterms and Final exam (2 midterms + 1 final)
Attendance/Participation
In order to earn credit (CR) for this class, the four criteria below must be met:
Your exam average (two midterms and the fixed final) must be ≥ 65.
Your quiz average (after dropping lowest 2) must be ≥ 70.
Your homeworks [check-minus, check, check-plus] (after dropping lowest 2) should all be check or check-plus, with an allowance for one or two check-minuses. Note that there are 10 homework assignments, and each homework has two tasks, so there are a total of 20 tasks this semester. Since a homework contains two tasks, we will drop the lowest four tasks from the set of 20 tasks. It is possible to, say, drop the lowest four tasks from four different homeworks.
Engagement and Expectations: Success in this course relies heavily on your active engagement. Active participation means showing up consistently, respecting community norms, sharing your voice in class discussions, and staying on top of lab tasks, quizzes, and homework assignments.
If you meet all of the above criteria, you will earn credit for this class. If there is some criterion that you do not meet, you will not earn credit for this class.
The CS111 instructor team will give a recommendation of whether a CS111 student is prepared to take CS230 Data Structures immediately after CS111, or if the student would benefit from taking another CS class prior to enrolling in CS230.
In order to get a positive recommendation to take CS230 immediately after CS111, all of the following criteria must be met:
Your exam average (2 midterms and a final) must be ≥ 80.
Your quiz average (after dropping lowest 2) must be ≥ 85.
Your homeworks [check-minus, check, check-plus] (after dropping lowest 2) should all be check, and at least two should be check-plus. Note that there are 10 homework assignments, and each homework has two tasks, so there are a total of 20 tasks this semester. Since a homework contains two tasks, we will drop the lowest four tasks from the set of 20 tasks. It is possible to, say, drop the lowest four tasks from four different homeworks.
Engagement and Expectations: Success in this course relies heavily on your active engagement. Active participation means showing up consistently, respecting community norms, sharing your voice in class discussions, and staying on top of lab tasks, quizzes, and homework assignments.
If all the above criteria are not met, the CS111 student will not be recommended to take CS230 directly after CS111. Instead, you must take another 200-level CS course, such as CS204, CS220, or CS221, if you wish to make progress in CS.
All homework assignments are due on the date and time listed in the schedule. Deadlines are final. Late submissions are not accepted, and extensions are not granted.
We understand that sometimes unexpected things come up that may prevent you from submitting your homework on time. That is why our grading policy (above) explains that we automatically drop the two lowest homework grades (this corresponds to four separate tasks) at the end of the semester, and we also drop the two lowest quiz grades at the end of the semester. A word of caution: if you are not able to submit a homework assignment on time, we strongly encourage you to complete the work on your own because this class builds upon itself.