Course Information for 6.100A/B in Fall 2025

You are not logged in.

Please Log In for full access to the web site.
Note that this link will take you to an external site (https://shimmer.mit.edu) to authenticate, and then you will be redirected back to this page.

1) Overview and contact

6.100B is a 6-unit subjects offered over the entire semester. Together with 6.100A, these classes give a broad introduction to the role that computation can play in solving problems. Familiarity with this way of thinking is increasingly important in many disciplines. While later subjects (such as 6.101[6.009]) go into more detail and rigor, our goal is simply to build your confidence in writing programs.

The staff email list is 6.100b-staff@mit.edu Please use this list instead of emailing us individually.

All course material and assignment submission is on this website, not Canvas. We use Canvas only for sending email announcements. Be sure you've set up the Canvas notifications to receive these announcements.

2) Class sessions

6.100B is taught through a combination of lectures, optional recitations, and extensive office hours. Times and rooms are listed on the course homepage. Lectures are held every other week. On weeks when there are no lectures, studenst are expected to work on the problem set.

Lectures

Led by course instructors, these are the primary vehicle of introducing course material, so attendance is expected. We do not offer recordings or live Zooms. Some lectures will hold microquizzes in class, and are mandatory attendance.

There are associated textbook readings with each lecture, supplementing with more detail. The textbook is Guttag, John. Introduction to Computation and Programming Using Python, Third Edition, With Application to Computational Modeling and Understanding Data, MIT Press. It is available both as a hard copy and as an e-book, with code and errata online.

Recitations

These are optional sessions led by TAs to review and practice material covered in lecture. One recitation will be held during lecture time on weeks when students are working on the problem set. See calendar for dates.

Office hours

These are in-person sessions, staffed by TAs and LAs, for help with course material and problem sets. Office hours are also required for completing mandatory problem-set checkoffs (see below). It is inefficient to debug code and offer help remotely, so there is no Zoom option.

When you arrive at office hours, add yourself to the Help Queue, which is accessible under Help in the menu bar. You must be logged in via your MIT Kerberos account to access the queue. If you are having trouble, speak with the TA-in-charge in the room.

3) Assignments

These are the assignments you will submit to our website for grading. In all cases, only the final submission (before the deadline) counts. The pages for these assignments are linked to from the course calendar and the menu bar.

Finger exercises

These small problems confirm understanding of specific concepts in preparation for the problem sets. The exercises are released at the end of each lecture and due as noted on the calendar.

Problem sets

We provide template files for you to fill in and run some tests locally. When finished, you will upload your file(s) to the problem set page, and the autograder runs a larger set of tests. Always re-download the files you upload, and check they are your latest work.

Each problem set has two grade components:

  • Autograder score: Automatically determined based on test cases you pass, worth 60% of the problem set grade.

  • Checkoff score: Based on code style and how well you can explain your code to a staff member. The course's Style Guide is available under About in the menu bar. Style is worth 10% and explanation is worth 30%.

Checkoffs must be completed in office hours, during which a TA or LA will interview you about your code. The interview typically takes less than 15 minutes.

  • Checkoffs start the day after the problem set is due, and the window for completing a checkoff is usually one week after that. See the calendar for exact deadlines.

  • Show up at office hours well before the deadline. We cannot guarantee checkoffs if you come towards the end and others are in the queue in front of you.

  • After you complete a checkoff, you may not re-submit the problem set or redo the checkoff.

Microquizzes

We will have four microquizzes and no final exam, with the last microquiz being worth twice as much as the other ones. Quizzes are held in class, typically during the last 30 minutes of specific lectures. These lectures are noted on the calendar.

You are responsible for bringing a charged laptop with a working Wi-Fi connection to access the quiz page. We do not grant quiz time extensions due to computer issues. We recommend you bring your IS&T-issued loaner iPad as a backup method of accessing the quiz page.

During quizzes, we may take photos of the room to help verify attendance. These photos will not be shared with anyone outside of course staff.

4) Grading policy

Assignments are weighted according to these percentages:

  • Finger exercises: 5%
  • Problem sets: 50%
  • Microquizzes: 45%
    • Microquiz 4 is worth twice as much as each of the other quizzes.

If your lowest score is on Microquizzes 1 through 3, we will drop it. If it is on Microquiz 4, we will count it only as much as the other quizzes.

Letter grade determination

Your total numeric score is not the only determination of your letter grade. You need to achieve at least 75%, 65%, 55%, or 45% on the average of your Microquiz scores to qualify for an A, B, C, or D, respectively (after the lowest drop has been taken into account).

You are then guaranteed certain letter grades if your total score meets the thresholds below (and you meet the quiz thresholds):

  • 90+: A
  • 80+: B
  • 70+: C
  • 60+: D
  • < 60: no guarantee of passing

For scores near and below the thresholds, we consider them on a case-by-case basis and seek input from TAs (not LAs).

If you are a first-year student, you need a C or above to receive credit for the course.

5) Collaboration policy

Finger exercises and problem sets

You may discuss solution approaches with others (including fellow students, TAs/LAs, students who have taken the course before), but you must think of and write your own code, and list your collaborators. In particular:

  • Your code should not share the same syntactic structure as others' code.
  • You may not look at, dictate, or otherwise share code with others.
  • When collaborating, keep the discussion at the level of strategy, and do not share details that could result in identical line-by-line structure.

Regarding online resources:

  • You are free to look up documentation or examples of using language features.
  • However, you may not copy or base your solution on any code you did not write yourself, with the exception of code presented in class. For example, you may not use any output from generative AI (GenAI) tools like ChatGPT, Copilot, Gemini, Claude, etc.
  • You may not post or submit your code online in any form, except to our course website. This includes putting your code in a GitHub repository that others can see, or submitting your code to ChatGPT for debugging.

A goal of this class is to develop your skill in writing code independently. For your learning, it is thus important that others not do that work for you, even in part.

Microquizzes and final exam

Quizzes are closed-book and in-person. You may not communicate with anyone about a quiz or exam until scores are released. During a quiz or exam:

  • You must remain only on the quiz/exam webpage, and you may not access the Internet in any other form.
  • You may not access any other tabs or extensions in your browser.
  • You may not access your IDE or any files or other programs on your computer.
  • The only additional resource you may have is a single sheet of notes, double-sided, and a single blank sheet for scratch work.

Consequences

Violations of our policy will result in a 0 on the assignment. If the violation is on a microquiz, the 0 is non-droppable – i.e., all quiz scores will count – AND you will drop one final letter grade. Instructors also have the discretion to submit a letter to file with the Office of Student Conduct.

Background on policy:

Our first concern is that students are learning. We assume everyone in the class shares that goal, and will behave in a manner consistent with it and their personal learning style. Much of the learning takes place through working on the problem sets, and it can be helpful to discuss ideas with others. However, you still need to take responsibility for what you put in your own brain.

Collaborative learning works best when the participants have roughly the same level of knowledge and skill, so that they can each contribute equally. When one student is consistently showing another how to do things, it is not a true collaboration. And when one student bases their solutions on others' completed work, little to no learning takes place.

If students choose to lean heavily on the work of others, they will be cheating themselves of learning. Moreover, while such students may end up with excellent grades on the problem sets, they will almost surely struggle with the quizzes, which does not reflect well when considering final letter grades.

6) Extension and makeup policy

Finger exercises and problem sets

We do not grant extensions for finger exercises.

For problem sets, we offer three late days in each half-term course. Each late day is a discrete, 24-hour extension. (You cannot use half a late day.) For example, submitting Problem Set 2 on a Tuesday at 11 pm when it was due Monday at 10 pm would use up two late days.

Late days are intended to alleviate temporary conditions, like heavy courseloads or mild illness. We urge you not to rely on late days and instead treat them as a backup for such situations. Your best strategy is to work on assignments early before they start to accumulate.

  • Late days only apply to problem set submission deadlines for the autograder. Checkoffs must be completed by their posted deadline, regardless of whether you used late days on the problem set.

The course website automatically applies late days to each submission, viewable on your Scores page in the top menu. Any work submitted beyond the three late days will not be accepted.

  • Because the website needs to accept potential late submissions up to three days after the deadline, any submission you upload during that window will use your late days. After you have made and checked your final submission, do not make further uploads.

Microquizzes

When you register for the course, you commit to being able to attend regular class. All of our quizzes and the final exam are during class time, so as a general rule, we do not offer makeup quizzes or excuse them. Class time takes precedence over other Institute activities like clubs or athletics. The first quiz you miss for any reason will thus become your dropped score.

  • If you absolutely cannot make it to a quiz due to a conflict with other Institute activities, we need to know well in advance. Our course schedule is published on the website by the first day of classes (for each half-term), and you have until the end of the second week to inform us of any such conflicts. We also need your club advisor, coach, or Student Support Services (S-cubed, S^3) to contact us to verify the situation. The first such quiz you miss will still be your dropped score, but we will consider your situation when assigning final letter grades.

  • If you become unexpectedly ill and cannot come to class, the same policy applies. The only difference is we expect to hear from S^3 when it happens rather than in advance. If you are ill, we want you to rest, and we will consider your performance on the remaining quizzes. It it thus in your best interest to not rely on doing better on future quizzes. It is also worth taking care of your health at all times!

If you miss a second quiz, or Microquiz 4, for one of the reasons above, have your advisor or S^3 contact us again, and we will work something out.

7) Getting help

It is normal to not grasp everything immediately the first time around. We are here to support you, but please ask for help early! We do not look favorably upon last-minute requests.

If you are concerned about your course performance or have a personal issue, you are welcome to request an individual meeting with an instructor. Email 6.100b-staff@mit.edu to schedule.

Help with course content

Your first resource is to come to office hours. TAs and LAs can help you debug code and answer questions, and instructor office hours can offer more in-depth discussion of concepts.

We also have a course Piazza, which is accessible under Help in the menu bar. Feel free to make public posts asking about course content or policy, and TAs or other students may help answer. However, more detailed questions are better handled in-person, so Piazza is not a substitute for office hours. To respect the collaboration policy, if your post includes your own code, you must make it a private post, and include your MIT Kerberos username (not ID number), so we can identify you on our course website.

Don't forget about the textbook readings! Spending time with the textbook lets you reflect on material from lecture and gain deeper understanding.

If you need more one-on-one time than the staff can provide, consider the following tutoring services:

  • HKN tutoring: HKN is the EECS student honor society. One of their services is to match Course 6 students to tutor for Course 6 classes. https://hkn-tutoring2.mit.edu/
  • Talented Scholars Resource Room (TSR^2): This is provided by MIT's Office of Minority Education. They offer pset nights, exam reviews, and one-on-one appointments that are led by advanced undergraduates or graduate students. https://ome.mit.edu/tsr2/

Finally, our webpage contains the following resources under Help in the menu bar:

  • A collection of Extra Coding Practice problems.
  • A list of Python resources on the Programming Resources page.
  • A supplemental MITx 6.0001/2 page with videos and practice exercises, accessible via your MIT Kerberos account.

Help with deadlines

Any extensions beyond our official policy need to be supported by S^3, and we make the final decision. Speak with an S^3 dean first, and CC them when emailing us at 6.100b-staff@mit.edu. We strive to be sensitive to individual situations while also being fair to all students.

If you registered late and we approved, we do not extend deadlines beyond the normal late days. We will make note of any missed assignments in that situation.

Accomodations

If you require test-taking accommodations, please coordinate with MIT's Disability & Access Services, and then contact 6.100b-staff@mit.edu early in the term.