Frequently Needed Information

Meeting Times

Lecture 1Kelly Rivers (krivers)MWF 2:30-3:20pmDH 2315
Recitation AJonan (jseeley) and Tara (tarap)R 9:30-10:20amGHC 5208
Recitation BDiaj (dtoussai) and Emily (eding)R 10:30-11:20amGHC 5208
Recitation CEnock (emaburi) and Tina (cchou1)R 11:30-12:20pmGHC 5208
Recitation DAndrea (arestrad) and Connor (cclancy)R 12:30-1:20pmGHC 5208
Recitation ELauren (leheller) and Mahima (mshanwar)R 1:30-2:20pmGHC 5208
Recitation FNeeraj (neerajsa) and Simran (skhunger)R 2:30-3:20pmGHC 5208
Recitation GDaniel (seungwom) and Iris (ilu1)R 3:30-4:20pmGHC 5208
Recitation HClaudia (cosorio) and Harshini (hmalli)R 4:30-5:20pmGHC 5208
Lecture 2Stephanie Rosenthal (srosenth)MWF 3:30-4:20pmDH 2315
Recitation IClaire (ccheongu) and Jeff (jiaxix1)R 9:30-10:20amGHC 5210
Recitation JBrittney (bsidwell) and William (wxl)R 10:30-11:20amGHC 5210
Recitation KAlyssa (akbrandt) and Vaheeshta (vmehrsha)R 11:30-12:20pmGHC 5210
Recitation LRachel (rachelt1) and Tate (tmauzy)R 12:30-1:20pmGHC 5210
Recitation MPam (phyang) and Trevor (tarussel)R 1:30-2:20pmGHC 5210
Recitation NRhea (rkudtar1)R 2:30-3:20pmGHC 5210
Recitation OElyana (erhurst) and Phil (xiangheh)R 3:30-4:20pmGHC 5210
Recitation PAmanda (lianglij) and Rishabh (rishabhc)R 4:30-5:20pmGHC 5210

Office Hours

Piazza is monitored by TAs every day. This is a good place to ask short questions, and to review general questions asked by other students.

TA Hours take place in the Gates 5th Floor Teaching Commons and clusters on weekdays, and in Gates 4303 on weekends. These are a good place to get help with the course material or homework assignments. When you have a question, sign up on the OH Queue and a TA will come find you to help.

Instructor Hours take place in Gates 4109 for Prof. Kelly and Gates 6019 for Prof. Stephanie. This is a good place to ask questions directly of the instructor, or to get general course material help. Meetings with the instructors are also available by appointment.

TA Hours5-8pmNone6-8pm6-8pm5-7pm12-5pm2-7pm
Instructor Hours9-10:30am (Stephanie)1-2pm (Kelly)1-2pm (Kelly)2:30-4pm (Stephanie)1-2pm (Kelly)NoneNone


General Policies

Learning Objectives

By the end of this course, students should be able to:

Assignment Format and Grading

Students will complete six homework assignments over the course of the semester. Each homework assignment will take 2-3 weeks to complete and will consist of a written portion and a programming portion. Students are required to complete a check-in demonstrating their completion of a portion of the assignment in the weeks before the assignments are due. In addition to homework assignments, students will also be graded on participation, and will take two midterms and a final exam.

Final Grades will be computed as follows:
Midsemester and Final grades will be assigned using a standard scale:


In general, due to the scale of the class, we cannot give individual extensions on assignments or assessments. However, there are a few exceptions. Please note that extensions must be requested before the assignment/assessment deadline.
Additionally: if a religious day you observe conflicts with an assignment date/test, or you have previously-scheduled travel that conflicts with a test or other previously scheduled travel, let the course instructors know before the add deadline; we may be able to provide extensions or move assignment dates in some cases.

Late Policy and Grace Days

In an ideal world, we would be able to support varying submission schedules so that all students could work at their own pace. Unfortunately, given the scale of the course, this is impossible. We need you to submit assignments on time so that we can promptly give feedback to all students, to support the learning process.

However, we understand that life can sometimes get in the way. Therefore, we provide 3 grace days for homework assignments. These can be used to submit homeworks up to 24 hours late with no penalty. You may only use one grace day per homework. We strongly urge you not to use these grace days immediately; try to save them for unforeseen events. Note that grace days may not be used on check-ins.

Once you run out of grace days, a late penalty of 20% will be applied for every hour that you submit late. In practice, this means that any assignment submitted after 5pm on Mondays will automatically get a 0. Submit your work on time, even if it isn't complete!

No late/make-up exams will be administered, except in the cases covered under the Extensions policy. Approved missed exams will be taken in the following week.

Collaboration and Academic Integrity


Students are encouraged to collaborate when learning the material and working on assignments. Here are a list of examples on how to collaborate well within this class.

Academic Integrity in Assignments

We encourage students to collaborate on assignments, as collaboration leads to good learning. However, there are certain restrictions on how much collaboration is allowed, to ensure that all students understand the material they submit on homework assignments and exams.

In general, all collaborators must contribute intellectually and understand the material they produce, and each student must write up their own assignment submission individually. The following actions are considered academic integrity offenses on the homework assignment:

Academic Integrity in Exams

Exams must be taken individually and with no access to external materials. It will be considered an academic integrity offense if a student:


Academic Integrity Violations result in a penalty on the first offense, and failing the course on the second offense. Penalties depend on the severity of the violation and can include:
Penalties may also be accompanied by a letter to the Dean of Student Affairs, again at the instructors' discretion. This can lead to university-level penalties, such as being suspended or expelled.

Plagiarism Detection

Programs are naturally structured, which makes them much easier to compare than hand-written work, and easier to compare than typed essays. We run an automated plagiarism detection system on all assignments to detect copied code. We will notice if you copy code. Don't do it.

Grace Period

Your first year of college is a time when you do a lot of learning. Sometimes, you might make bad decisions or mistakes. The most important thing for you to do is to learn from your mistakes, to constantly grow and become a better person.

Sometimes, students panic and copy code right before the deadline, then regret what they did afterwards. Therefore, you may rescind any homework submission up to 24 hours after the grace-day deadline with no questions asked. Simply email the course instructors and ask us to delete the submission in question, and we will do so. Deleted submissions will not be considered during plagiarism detection, though of course they will also not be graded. However, it will always be better to get a 0 (or partial credit) on an assignment than to get a cheating violation!

Required Materials

Required Textbooks


Required Software

Every required software package we use is available for free on the web. This includes:

Optional Textbooks and Online Resources

Other Policies




We strongly encourage all students to attend class. Of course, you should also be engaging with the material and focusing on learning!

During some classes we will hold interactive activities that require the use of a laptop or smartphone. Participation will be measured based on whether a student has engaged in a majority of these activities. Don't worry if you have to miss a few lectures or recitations- as long as you attend most classes, you'll be fine.

If you do not have a laptop, tablet, or internet-accessible phone, please contact the course instructors so that you can continue to participate in activities and also get participation points. If you are missing your laptop/phone on a specific lecture day, or if the form does not load for you, you may approach the instructor personally at the end of class to be marked as attending.

Formatting Errors

Make sure that your submitted assignments do not have any formatting errors! Written assignments must be submitted in a universally readable format, and code assignments must not have any syntax errors. We will take off 5% of the problem's points for every line of code we must edit to make your code run. Please submit your code at least one time before the deadline to ensure that our autograder can run it.

Regrade Requests

We occasionally make mistakes while grading (we're only human!). If you find a mistake which you would like us to correct, please submit a regrade request on Gradescope within one week of the time when the contested grade was released. Note- regrade requests will result in the entire problem being regraded, not just the incorrectly graded part.


We gladly accommodate students with special needs (as approved by the Office of Disability Resources (ODR), as explained here). If you are eligible for accommodations, please submit the appropriate form to the instructors in the first two weeks of the semester. If you need to acquire the form, contact Catherine Getchell, Director of Disability Resources.

Extra time: students who receive extra time on assessments will need to request proctoring from the ODR for each exam. The course instructors will send you a list of examination days at the beginning of the semester so that you can request proctoring in bulk. Extra-time assessments must take place on the same day as the in-class assessment.

To use extended-time, you must attend the ODR-proctored exam and not the normal-duration exam. You do have the option of attending the normal-duration exam, but then you will have to complete it in the assigned time (without extended-time).


If you are on the waitlist, don't panic! Many waitlisted students get into the course eventually. Attend lecture and recitation, submit the assignments, and stay involved. If you are still not enrolled at the beginning of the third week, contact the course instructors and they will try to help you find a section with open seats.


We have found that students who audit 15-110 do not tend to succeed, as they generally cannot dedicate the needed time to the course. Therefore, auditing will only be allowed in exceptional circumstances, and must be approved by the course instructors first.
If you wish to take 15-110 but don't want or need a full letter grade for it, you may take the course as Pass/Fail instead. This is a great option for graduate students who want to learn how to program but don't want to risk their GPAs! (Note: you may not take the course Pass/Fail if you plan to use 15-110 as a prereq).

Health and Wellness

Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress. All of us benefit from support during times of struggle. If you or anyone you know experiences any academic stress, difficult life events, or feelings of anxiety or depression, we strongly encourage you to seek support. Contact the Counseling and Psychological Services (CaPS) office at 412-268-2922 and visit their website at http://www.cmu.edu/counseling for more information.

If you or someone you know is in danger of self-harm, please call someone immediately, day or night:
CaPS: 412-268-2922
Re:solve Crisis Network: 888-796-8226
CMU Police: On-Campus 412-268-2323, Off-Campus 911