Your Todo List
Teaching Team

Announcements
Welcome to CS106A - cs106a.stanford.edu - this page currently shows the Autumn quarter information, but it will switch to Winter by the first day of class, so this is the right url. Needed zoom links and whatnot will, of course, be published on this page when the time comes. While we are working on updating the site, check out some FAQs for the course during Winter Quarter. If you have additional questions, please reach out to the Head TA, Juliette Woodrow, at jwoodrow@stanford.edu.
Frequently Asked Questions
This is the last class of the quarter. Come and say goodbye. It has been such a pleasure teaching you all! There is no class on Friday.
This week is the very last week of CS106A. There is no final exam -- your final piece of work is to submit Assignment 7. On Monday in lecture we will talk about life beyond CS106A and on Wednesday we will wrap up the class! There is no lecture on Friday. This week is also your last section, so make sure to go and say goodbye to your section leader.
Diagnostic 2 grades have been released. You can find your grade here. Statistics for the exam, additional resources on interepreting your grade, and strategies to solidify anything you missed on the diagnositc can be found in this handout.
In Assignment 7, build a search engine using the concepts you have learned throughout CS106A. This is your last assignment!

Today in class, we discussed the retraction policy for CS 106A, which allows you to retract any work you've submitted if you feel it crossed the line of academic integrity. Please take the time to read through our handout detailing the policy.
The diagnostic is scheduled to take place on (November 2nd) at 1:00 p.m. It will be administered digitally; instructions to set up BlueBook, our digital assessment platform, are posted here.
Click the button below to access your diagnostic. Once it is time for you to start the exam, you will click this link which will provide you with the file to download as well as an exam code for you to use to load the exam on BlueBook. All students can use this link, even if you have arranged for an alternate duration, time, or platform for the diagnostic. You must be enrolled in the class to access the diagnostic.
Starting at 1pm PT please only post questions privately on Ed. If you have a question about the problem statement or about logistics during the diagnostic you may post privately on Ed. Please refrain from posting anything about the diagnostic on Ed until we release solutions next week.
Unless you have arranged with Juliette for an alternate sitting, you must begin the exam after 1:00pm and must submit at 2:00pm, with a short grace period during which you can submit.
If you run into any issues with BlueBook during the exam, check out this handout.
We've posted material about the diagnostic on this handout. Solutions will be posted on Wednesday. Pro tip for studying CS Exams: We strongly encourage you to attempt all problems before looking at the solutions!
A few of our awesome section leaders are going to host a review session from 10:30am-12noon PT on Saturday, October 31st. We will also post a recorded review session sometime Saturday evening. Here is the Zoom link for the live review session.
We just released Assignment 6. Build a data visualization program to explore ratemyprofessor.com reviews. The warmup is harder than problems you will see on the diagnostic, but will be great practice. We expect students will start the main part of this assignment post diagnistic.

One of the joys of programming is the ability to make something totally of your own creation. In CS106A this quarter we are hosting a Contest where you can program anything you like using the concepts and tools we learn in class. See the contest handout for more details.
Two of our wonderful section leaders, have produced a review video for assignment 5 that explains the assignment, some of the common pitfalls as well as strategies for working through it. We've posted the slides on the Assignment 5 page and the video on the course canvas page.
We just released Assignment 5. Build a word guessing game from scratch. Practice strings, file reading and dictionaries.

We just released Assignment 4. Use 2D grids and build your first animations!

We are always trying to improve CS106A. You have been in the course for almost 5 weeks and we want to hear your feedback. Please take some time to fill out the mid quarter evaluation to let us know how it is going and how it can be improved! You can click here to fill it out.
Diagnostic grades have been released. You can find your grade here. Statistics for the exam, additional resources on interepreting your grade, and strategies to solidify anything you missed on the diagnositc can be found in this handout.
Juliette and some section leaders will be hosting two zoom sessions to go over some of the problems on the diagnositc and help answer any lingering questions. Both sessions will be recorded. You can find information about these sessions in the handout above.
The diagnostic is scheduled to take place on (October 7th) at 1:00 p.m. It will be administered digitally; instructions to set up BlueBook, our digital assessment platform, are posted here.
Click the button below to access your diagnostic. Once it is time for you to start the exam, you will click this link which will provide you with the file to download as well as an exam code for you to use to load the exam on BlueBook. All students can use this link, even if you have arranged for an alternate duration, time, or platform for the diagnostic. You must be enrolled in the class to access the diagnostic.
Starting at 1pm PT please only post questions privately on Ed. If you have a question about the problem statement or about logistics during the diagnostic you may post privately on Ed. Please refrain from posting anything about the diagnostic on Ed until we release solutions next week.
Unless you have arranged with Juliette for an alternate sitting, you must begin the exam after 1:00pm and must submit at 2:00pm, with a short grace period during which you can submit.
If you run into any issues with BlueBook during the exam, check out this handout.
Assignment 3 YEAH Hours: Swayam, one of our wonderful section leaders, has produced a review video for assignment 3 that explains the assignment, some of the common pitfalls as well as strategies for working through it. We've posted the slides on the Assignment 3 page and the video on the course canvas page.
We've posted material about the diagnostic on this handout. We updated the handout on Sunday (Oct 4th) with solutions to the practice diagnostic. Pro tip for studying CS Exams: We strongly encourage you to attempt all problems before looking at the solutions!
We would like to invite you to apply for the Stanford CS undergraduate mentoring program! The program matches undergraduates who are curious about computer science with graduate student mentors, with the goal of increasing the representation of women and underrepresented minorities in CS research. This flyer describes this program in more detail.
If you are not currently involved in undergraduate research, but are interested in participating in CS research as an undergraduate in the future, or are interested in a career in this field, this can be a great way to learn more!
You may apply by filling out the form at this link. The deadline for filling out the application is October 1, 2020.
The faculty advisors for this program are: Zakir Durumeric, Chelsea Finn, Subhasish Mitra, Dorsa Sadigh and Mary Wootters. Please contact any of them directly if you have any questions!
Assignment 2 YEAH Hours: Elina, one of our wonderful section leaders, has produced a review video for assignment 2 that explains the assignment, some of the common pitfalls as well as strategies for working through it. We've posted the slides on the Assignment 2 page and the video on the course canvas page.
We've been asked to share this message on behalf of the Center for Teaching and Learning:
Want to meet with an experienced peer to discuss course concepts, think through a problem set, or prepare for an upcoming exam? CTL offers appointment tutoring for CS 106A, in addition to tutoring for a number of other courses. For more information and to schedule an appointment, visit our tutoring appointments and drop-in schedule page. We also have a variety of remote learning opportunities and academic coaching available to assist with all of your learning needs!
A research study is being run this quarter on how to improve CS106A by Rose Pozos, a graduate student in the Stanford School of Education interested in CS education. Taking part in the study is optional and will have no impact on your grade, but it will potentially improve the class for future students. You can find out more about the study in the brief video titled “Invitation to CS106A research study” now available on the CS106A Canvas page of class videos. You will also receive an email with more information about the study in the next few days.
Section assignments have been made. Students who filled out the section signup on time should have received an email with details of their section.
If your section time no longer works for you or you were unable to sign up for a section in time, visit this website or click 'Section Management' in the Section dropdown to join a section. This page will also have a link to a list of all the section times for students wishing to make up a section and auditors.
Note that section participation is required for all enrolled students in CS 106A.
Black in CS is hosting Black LaIR this quarter! Here is some more information!
Help with: CS106A and CS106B Every: Tuesday, Thursday (5-8pm PT), Saturday (12-3pm PT) Link (CS106A): Zoom details Organized As: conceptual sessions Tues, 1:1 help Thurs/Sat Social media/contact: @stanfordblackincs, aolawale@stanford.edu
The LaIR opens 5pm PDT tonight! Check out the Zoom details page for the necessary links.
Section Signups are open! You can sign up for section by going to this page, logging in, and clicking the form. Section signups are due on Sunday at 5pm PDT and are not first come first serve.
We just released Assignment 1. It's due on Sept 25th at 1:00pm PDT. Write your very first programs with Karel. Wahoo! Though Karel is a fun, simple robot, some of the questions can take a lot of time. If you finish early we encourage you to go above and beyond with "extensions"

We just posted the PyCharm installation handout. We will be using PyCharm for our assignments, so you will need to follow these steps before you are able to work on Assignment 1.
CS100A, also known as CS106A ACE, is a 1-unit supplementary section designed to build a stronger foundation in computer science. Students participating in ACE will attend an additional weekly section and participate in exam review sessions and individual tutoring. Section will take place Thursdays 4-6pm PT on Zoom, with options for asynchronous participation for those outside the United States.
ACE is one of the School of Engineering’s Equity and Inclusion Initiatives. We especially want to provide an opportunity for students who come from educationally disadvantaged backgrounds or for anyone who feels they might need additional support in order to succeed. We limit enrollment to enable small classes that allow students to have one-on-one interactions with the TA.
If you are interested in joining the ACE section, please apply at this link (due 9/18). All who apply by 9/16 will be welcome to attend section the first week and will receive a Zoom link for section via email during Week 1. If you have any questions about ACE, feel free to reach out Sonja Johnson-Yu (CS106A ACE TA) at sonjyu@stanford.edu.
What is CS106A?
2020091400We put together some handouts to help you understand where we are going to go in CS 106A and how we plan to get there.
The General Information handout has details on course logistics. Read this to get a sense for what CS 106A is going to entail. The Course Placement handout has details on deciding between CS 106A and CS 106B. The Honor Code handout has details on how the Honor Code applies in the context of the work you'll be doing in CS 106A.
The Course Schedule page shows you the topics that we are going to cover
in CS106A. We will also post materials from lecture on the schedule page.
The Office Hours page has contact information for teaching team and the office
hour calendar. Office hours will start in week one.
Finally, the Course Communication handout has details on where to go when you need help in the class.
Welcome to CS106A! We're gearing up for a fun quarter beginning on Monday, April 6th. Enrolled students should read the Zoom info handout for details about how to get on the 1:00pm webinar on the first day of class.
Until then, reach out to Juliette, the Head TA, with any questions you have.
Resources
Assignments
Course Values
Covid-19 edition 🦠
Your Todo List
Teaching Team

Resources
Announcements
Welcome to CS106A - cs106a.stanford.edu - this page currently shows the Autumn quarter information, but it will switch to Winter by the first day of class, so this is the right url. Needed zoom links and whatnot will, of course, be published on this page when the time comes. While we are working on updating the site, check out some FAQs for the course during Winter Quarter. If you have additional questions, please reach out to the Head TA, Juliette Woodrow, at jwoodrow@stanford.edu.
Frequently Asked Questions
This is the last class of the quarter. Come and say goodbye. It has been such a pleasure teaching you all! There is no class on Friday.
This week is the very last week of CS106A. There is no final exam -- your final piece of work is to submit Assignment 7. On Monday in lecture we will talk about life beyond CS106A and on Wednesday we will wrap up the class! There is no lecture on Friday. This week is also your last section, so make sure to go and say goodbye to your section leader.
Diagnostic 2 grades have been released. You can find your grade here. Statistics for the exam, additional resources on interepreting your grade, and strategies to solidify anything you missed on the diagnositc can be found in this handout.
In Assignment 7, build a search engine using the concepts you have learned throughout CS106A. This is your last assignment!

Today in class, we discussed the retraction policy for CS 106A, which allows you to retract any work you've submitted if you feel it crossed the line of academic integrity. Please take the time to read through our handout detailing the policy.
The diagnostic is scheduled to take place on (November 2nd) at 1:00 p.m. It will be administered digitally; instructions to set up BlueBook, our digital assessment platform, are posted here.
Click the button below to access your diagnostic. Once it is time for you to start the exam, you will click this link which will provide you with the file to download as well as an exam code for you to use to load the exam on BlueBook. All students can use this link, even if you have arranged for an alternate duration, time, or platform for the diagnostic. You must be enrolled in the class to access the diagnostic.
Starting at 1pm PT please only post questions privately on Ed. If you have a question about the problem statement or about logistics during the diagnostic you may post privately on Ed. Please refrain from posting anything about the diagnostic on Ed until we release solutions next week.
Unless you have arranged with Juliette for an alternate sitting, you must begin the exam after 1:00pm and must submit at 2:00pm, with a short grace period during which you can submit.
If you run into any issues with BlueBook during the exam, check out this handout.
We've posted material about the diagnostic on this handout. Solutions will be posted on Wednesday. Pro tip for studying CS Exams: We strongly encourage you to attempt all problems before looking at the solutions!
A few of our awesome section leaders are going to host a review session from 10:30am-12noon PT on Saturday, October 31st. We will also post a recorded review session sometime Saturday evening. Here is the Zoom link for the live review session.
We just released Assignment 6. Build a data visualization program to explore ratemyprofessor.com reviews. The warmup is harder than problems you will see on the diagnostic, but will be great practice. We expect students will start the main part of this assignment post diagnistic.

One of the joys of programming is the ability to make something totally of your own creation. In CS106A this quarter we are hosting a Contest where you can program anything you like using the concepts and tools we learn in class. See the contest handout for more details.
Two of our wonderful section leaders, have produced a review video for assignment 5 that explains the assignment, some of the common pitfalls as well as strategies for working through it. We've posted the slides on the Assignment 5 page and the video on the course canvas page.
We just released Assignment 5. Build a word guessing game from scratch. Practice strings, file reading and dictionaries.

We just released Assignment 4. Use 2D grids and build your first animations!

We are always trying to improve CS106A. You have been in the course for almost 5 weeks and we want to hear your feedback. Please take some time to fill out the mid quarter evaluation to let us know how it is going and how it can be improved! You can click here to fill it out.
Diagnostic grades have been released. You can find your grade here. Statistics for the exam, additional resources on interepreting your grade, and strategies to solidify anything you missed on the diagnositc can be found in this handout.
Juliette and some section leaders will be hosting two zoom sessions to go over some of the problems on the diagnositc and help answer any lingering questions. Both sessions will be recorded. You can find information about these sessions in the handout above.
The diagnostic is scheduled to take place on (October 7th) at 1:00 p.m. It will be administered digitally; instructions to set up BlueBook, our digital assessment platform, are posted here.
Click the button below to access your diagnostic. Once it is time for you to start the exam, you will click this link which will provide you with the file to download as well as an exam code for you to use to load the exam on BlueBook. All students can use this link, even if you have arranged for an alternate duration, time, or platform for the diagnostic. You must be enrolled in the class to access the diagnostic.
Starting at 1pm PT please only post questions privately on Ed. If you have a question about the problem statement or about logistics during the diagnostic you may post privately on Ed. Please refrain from posting anything about the diagnostic on Ed until we release solutions next week.
Unless you have arranged with Juliette for an alternate sitting, you must begin the exam after 1:00pm and must submit at 2:00pm, with a short grace period during which you can submit.
If you run into any issues with BlueBook during the exam, check out this handout.
Assignment 3 YEAH Hours: Swayam, one of our wonderful section leaders, has produced a review video for assignment 3 that explains the assignment, some of the common pitfalls as well as strategies for working through it. We've posted the slides on the Assignment 3 page and the video on the course canvas page.
We've posted material about the diagnostic on this handout. We updated the handout on Sunday (Oct 4th) with solutions to the practice diagnostic. Pro tip for studying CS Exams: We strongly encourage you to attempt all problems before looking at the solutions!
We would like to invite you to apply for the Stanford CS undergraduate mentoring program! The program matches undergraduates who are curious about computer science with graduate student mentors, with the goal of increasing the representation of women and underrepresented minorities in CS research. This flyer describes this program in more detail.
If you are not currently involved in undergraduate research, but are interested in participating in CS research as an undergraduate in the future, or are interested in a career in this field, this can be a great way to learn more!
You may apply by filling out the form at this link. The deadline for filling out the application is October 1, 2020.
The faculty advisors for this program are: Zakir Durumeric, Chelsea Finn, Subhasish Mitra, Dorsa Sadigh and Mary Wootters. Please contact any of them directly if you have any questions!
Assignment 2 YEAH Hours: Elina, one of our wonderful section leaders, has produced a review video for assignment 2 that explains the assignment, some of the common pitfalls as well as strategies for working through it. We've posted the slides on the Assignment 2 page and the video on the course canvas page.
We've been asked to share this message on behalf of the Center for Teaching and Learning:
Want to meet with an experienced peer to discuss course concepts, think through a problem set, or prepare for an upcoming exam? CTL offers appointment tutoring for CS 106A, in addition to tutoring for a number of other courses. For more information and to schedule an appointment, visit our tutoring appointments and drop-in schedule page. We also have a variety of remote learning opportunities and academic coaching available to assist with all of your learning needs!
A research study is being run this quarter on how to improve CS106A by Rose Pozos, a graduate student in the Stanford School of Education interested in CS education. Taking part in the study is optional and will have no impact on your grade, but it will potentially improve the class for future students. You can find out more about the study in the brief video titled “Invitation to CS106A research study” now available on the CS106A Canvas page of class videos. You will also receive an email with more information about the study in the next few days.
Section assignments have been made. Students who filled out the section signup on time should have received an email with details of their section.
If your section time no longer works for you or you were unable to sign up for a section in time, visit this website or click 'Section Management' in the Section dropdown to join a section. This page will also have a link to a list of all the section times for students wishing to make up a section and auditors.
Note that section participation is required for all enrolled students in CS 106A.
Black in CS is hosting Black LaIR this quarter! Here is some more information!
Help with: CS106A and CS106B Every: Tuesday, Thursday (5-8pm PT), Saturday (12-3pm PT) Link (CS106A): Zoom details Organized As: conceptual sessions Tues, 1:1 help Thurs/Sat Social media/contact: @stanfordblackincs, aolawale@stanford.edu
The LaIR opens 5pm PDT tonight! Check out the Zoom details page for the necessary links.
Section Signups are open! You can sign up for section by going to this page, logging in, and clicking the form. Section signups are due on Sunday at 5pm PDT and are not first come first serve.
We just released Assignment 1. It's due on Sept 25th at 1:00pm PDT. Write your very first programs with Karel. Wahoo! Though Karel is a fun, simple robot, some of the questions can take a lot of time. If you finish early we encourage you to go above and beyond with "extensions"

We just posted the PyCharm installation handout. We will be using PyCharm for our assignments, so you will need to follow these steps before you are able to work on Assignment 1.
CS100A, also known as CS106A ACE, is a 1-unit supplementary section designed to build a stronger foundation in computer science. Students participating in ACE will attend an additional weekly section and participate in exam review sessions and individual tutoring. Section will take place Thursdays 4-6pm PT on Zoom, with options for asynchronous participation for those outside the United States.
ACE is one of the School of Engineering’s Equity and Inclusion Initiatives. We especially want to provide an opportunity for students who come from educationally disadvantaged backgrounds or for anyone who feels they might need additional support in order to succeed. We limit enrollment to enable small classes that allow students to have one-on-one interactions with the TA.
If you are interested in joining the ACE section, please apply at this link (due 9/18). All who apply by 9/16 will be welcome to attend section the first week and will receive a Zoom link for section via email during Week 1. If you have any questions about ACE, feel free to reach out Sonja Johnson-Yu (CS106A ACE TA) at sonjyu@stanford.edu.
What is CS106A?
2020091400We put together some handouts to help you understand where we are going to go in CS 106A and how we plan to get there.
The General Information handout has details on course logistics. Read this to get a sense for what CS 106A is going to entail. The Course Placement handout has details on deciding between CS 106A and CS 106B. The Honor Code handout has details on how the Honor Code applies in the context of the work you'll be doing in CS 106A.
The Course Schedule page shows you the topics that we are going to cover
in CS106A. We will also post materials from lecture on the schedule page.
The Office Hours page has contact information for teaching team and the office
hour calendar. Office hours will start in week one.
Finally, the Course Communication handout has details on where to go when you need help in the class.
Welcome to CS106A! We're gearing up for a fun quarter beginning on Monday, April 6th. Enrolled students should read the Zoom info handout for details about how to get on the 1:00pm webinar on the first day of class.
Until then, reach out to Juliette, the Head TA, with any questions you have.
Course Values
Covid-19 edition 🦠