Problem Set and Quiz Guide
This page gives a high-level overview of the administrative details and logistics of CS111 problem sets and quizzes, including how your work is submitted and evaluated.
Typical weekly schedule
During a typical CS111 week, the problem set code submission and time spent form will both be due at 11:59pm EST on Thursday and the quiz will be due Wednesday at 11:59PM EST. Occasionally, holidays and weather may create deviations from our typical schedule.
Below is a summary of a typical week in CS111 this term. It includes the typical due dates for assignments and quizzes. The sample schedule below is from the week where problem sets are due:
- Weekly quiz on Wednesday completed anytime (in Gradescope) during that day (due by 11:59PM) and usually available on Tuesdays.
- Opportunity to retake quizzes from the previous two weeks (also due Wednesday)
- Problem sets due on Thursday at 11:59PM
- You can take an automatic 24-hour extension for any problem set by clicking on the "Take extension" button in the Ocean submission page.
- Opportunity to resubmit problem sets by Sunday to correct any mistakes up to 95%.
See the details below for more specifics about the problem sets and quizzes.
In CS111, we believe in both “growth mindset” and “mastery grading”. Growth mindset is the belief that individual attributes like talent can grow and develop through hard work, good strategies and constructive feedback. A fixed mindset is the belief that human attributes such as intelligence are stable. A growth mindset focuses on the incremental progress we all make as we learn new material.
Mastery grading is the teaching philosophy that articulates clear learning goals. Grading is based on the ability to master those goals. In CS111, we want to give students every opportunity to master the learning goals we set out for the course. Both quizzes and problem sets will have second or even third chance opportunities to complete learning goals. We want students to have the ability to continue to improve their knowledge of the material and to look at quizzes and problem sets as less of a judgement of their intellectual capacity and more as an opportunity to show the skills they have mastered.
For more information on both of these philosophies, please look at an article by Oscar Fernandez from Wellesley's math department.
Glossary of Terms
In the remainder of this document, we refer to several of the tools when describing the policies for both the quizzes and problem sets. Here is a list of those tools:
- Cyberduck: used to connect to your CS account so you can download problem set code and lab code.
- Thonny: used to write and test Python code. You will use Thonny to complete problem set materials.
- Gradescope: online platform where you will take quizzes.
- Piazza: online forum used for course announcements, finding problem set partners, and posting student questions.
- Jupyter notebooks: an interactive tool to work with python code that is used in lectures.
Problem Set Guide
Downloading Starter Code
Problem sets usually have starter code provided in a folder (for example,
ps01). Students will download this code folder from the
folder in their
cs111 folders in their personal accounts on the cs
server. The first lab will cover how to access this code.
Problem Set Overview
There are 7 problem sets in CS111. Problem sets will be due on Thursday at 11:59PM of each week typically and will come out the week before. Problem sets consist of a mixture of individual and partner tasks. Please read the policy on working with a partner.
Problem set scores will be available via the Ocean submission server shortly after the problem set is due. We will check whether your code works correctly, is properly commented, and is submitted to the server on time.
Each task within a problem set will come with a rubric that explains in detail how we will grade that task. The rubric has core goals and extra goals. The core goals are the concepts and tasks that we feel are most pivotal to your understanding of the problem set material. Extra goals are the concepts and tasks that provide additional learning and challenges beyond the basic material.
You can receive one of five scores on each task of each problem set:
- 100% indicates successful completion of all core and extra goals
- 95% indicates successful completion of all core goals and possibly some extra goals
- 85% indicates successful completion of nearly all core goals
- 75% indicates successful completion of at least half the core goals, but not all of them
- 0% indicates successful completion of less than half the core goals
After submitting your problem set on Thursday and having feedback available on Friday morning, you will have the opportunity to review your work and resubmit any tasks from the problem set for up to 95% credit (i.e., successful completion of all core goals) by Sunday at 11:59PM. You cannot earn 100% if you resubmit your problem set, so the extra goals are not relevant after the initial deadline. However, you may resubmit multiple times during the revision period and view feedback on them immediately until you are satisfied with your resubmission.
If a student knows they will miss the Thursday deadline, the student can take a 24-hour extension by requesting an extension (through the submission page) before the deadline. See the Extension Policy below. Alternatively, the student can still submit by the Sunday deadline for credit up to 95%.
An Individual problem means that you work on your own on this task, but may ask the CS111 staff for help. You may also talk to your classmates about the problem, as long as you never communicate in Python code with your classmates.
Partner problems may be worked on individually, but are designed to be tackled by two people, and you will find that working together closely with a partner should be quite productive. We have some guidelines for partner work: you are not allowed to simply split the problem into two parts and each do part of the problem (neither of you would understand the entire problem in that case).
In a partner problem, each two-person team will create one or more solution files together for a task. Each team member will submit their own electronic copy of the solution files, and every member of a team should submit identical files. Each member will be given the grade for the file they submit. (If the files aren't the same, the team members may receive different grades; it is your responsibility to communicate with your partner and make sure you each have a copy of the most up-to-date code to submit.)
Although you can work with the same partner on multiple tasks throughout the semester, we strongly encourage you to seek different partners for different tasks so that you get a better sense for the range of collaboration styles, and so you do not become too dependent on a particular partner.
All work by a team must be a true collaboration in which members actively work together on all parts of the task. It is not acceptable for team members to split up the Task and work on parts independently. All programming should be done with both team members working at the same computer console. Both team members must share the responsibility of "driving" (typing at the keyboard), swapping every so often. The only work that you may do alone is debugging code that you have written together and talking with the instructors and drop-in tutors (we understand that you may not both be able to attend drop-in hours at the same time, but when you attend drop-in hours and get help individually, it is your responsibility to explain what you learned to your partner and make sure they understand it).
Note that during the pandemic, these requirements have been relaxed, since the need for social distancing means that even if partners could work at the same computer, they should not. Instead of working together at one computer, we suggest the following alternative collaboration methods (pick one that works well for you):
- Remote pair programming. Using Zoom, it is possible for one member of a meeting to take control of the other's computer (the option to request remote control appears when someone is sharing their screen). You can therefore program together on one computer remotely. Remote control offers the advantage of easily supporting the driver/navigator model that is essential to pair programming because both partners can edit the code directly. One partner should open up a Canopy window with the particular task and then allow access to the remote partner to control that window. You can, of course, use screen sharing and discuss each task if you are uncomfortable with the remote control model. However, make sure that each partner has an opportunity to write code. This will likely require copy/pasting code back and forth or sharing/emailing python files, which is why we recommend the remote control model.
- Independent work + verification. To ensure that each member of a team actually understands the full solution to a problem, if remote pair programming is not feasible (perhaps connections aren't good enough) you may work independently on a problem, and when you each have an attempt (they need not be working perfectly), you can come together to compare your code and discuss the differences between your attempts. This method of working together is more work than pair programming, but still offers some advantages over individual work, like the ability to discuss your solution in depth at the code level with another student and the opportunity to do debugging together.
For more information, see our Pair Programming page.
Submission of Psets
Submission of assignments in CS111 is almost entirely electronic. There are rarely paper submissions.
Students will go to https://cs.wellesley.edu/ocean/ to submit completed assignments, request extensions, and submit revisions.
As a backup, you may upload your code to the CS server using the same program used to download the starter code.
Have Questions on a Pset?
The CS111 staff expects that you will have questions on each pset. You can see our whole team on the Instructors page, and see when we are available for help on the Drop-in Schedule page. We have a super talented crew of tutors who hold evening drop-in hours (sometimes we refer to this as "help room"). And you can always post a question to the course Piazza group.
As far as possible, assuming your question does not reveal your solution, post your questions to the piazza group rather than privately e-mailing the instructors: this is more productive because your classmates probably have the same question too!
On the other hand, if your question does contain part of your solution, you must not post it to the group. Do not post code to the group.
We also encourage you to talk to your classmates (in a human language, not code) about psets. Sometimes bouncing your ideas off the person next to you can be really helpful and illuminating!
There is no midterm exam in CS111. The midterm is instead replaced by 6 weekly quizzes that take 30 minutes to complete. Quizzes typically take place on Wednesday of each week. At the start of the day, students will have access to take the quiz on Gradescope, an online platform where you can find graded work for CS111. During that day, students will need to find 30-45 minutes (depending on the quiz length) to sit down and take the quiz by the end of the day at 11:59PM. All quizzes are closed note, closed Thonny, and closed internet (except for the tab opened to Gradescope where you will take the quiz).
Quizzes are individual work and students should not use Thonny, Anaconda, or any other resources during the taking of the quiz. Doing so is a violation of the Honor Code.
Quizzes will be graded and released to students by Friday evening of that week.
Each quiz will assess a series of learning goals to test students’ comprehension. Each question is designed to target one or more learning goal. Each quiz question will be labeled with the learning goal tested. Upon receiving feedback, we strongly suggest that students examine their performance on each learning goal so they have a complete understanding of what they know and what they need to improve on.
Students can retake any quiz up to two times to improve their score on any learning goal. Students do not need to complete the entire quiz. Students only need to complete the questions with the learning goals that they would like to improve. Students will have 30-45 minutes (depending upon the original quiz length) to complete any portion of the retake quiz.
Quiz retakes are typically due on Wednesday at 11:59PM. The first retake quiz will be due one week after the original quiz date and the second retake will be due two weeks after the original quiz. Grades for the retake quiz will be released Thursday evening, two days after taking the quiz. There is no grade penalty or grade limit for retakes.
To illustrate, suppose that Wyeth Wellesley takes Quiz 1 on Wednesday of the second week of classes. They find that they want to improve their quiz score. By the following Wednesday, they can retake Quiz 1. If they still wants to improve on retake 1, they can complete retake 2 by the next Wednesday.
We recognize that this is a most unusual academic year due to the ongoing pandemic of COVID-19. We understand that you or your friends or family members may contract the virus during your time here at Wellesley. We strongly encourage you to speak with any of the faculty for CS111 for any reason - whether COVID-related or not - that might inhibit you from successfully completing your coursework. We are empathetic to the many hardships that students will face as we learn together during this crisis. Do not hesitate to reach out!
Extension Policy for Problem Sets
Problem sets are typically due on Thursday with revisions due by Sunday. Students can take an automatic 24-hour extension for the Thursday due date and receive feedback for their work by Saturday morning in time to complete any revisions by Sunday. In order to receive the extension, you must request it via the Ocean submission server before the deadline Thursday night. If you feel that you need more than an extra 24 hours, please contact one of the CS111 faculty members directly.
Extension Policy for Quizzes
Quizzes and retakes always take place on or before Wednesday. There are no extensions for quizzes as we expect most students to be able to find the necessary time during some portion of that day. If you cannot complete the quiz on Wednesday, please contact one of the CS111 faculty members directly. Note that we do allow quiz retakes without a grade penalty or grade limit.