Announcements


Assignment 6 Released
yesterday by Nick

Assignment 6 has now been released! This is the final assignment of the quarter and will be your opportunity to cap off a fast-paced quarter of learning by applying everything you've learned so far to implement one of the most powerful and prevalent real-world algorithms out there. This assignment will help you practice your tree manipulation skills, give you one last chance to flex your recursive muscles, and give you the experience of actually implementing the specifications of a well-known and widely-used algorithm. All in all, we hope you enjoy the assignment!

As for logistics, the assignment will be due on Wednesday, August 12 at 11:59pm PDT. Please note that this is a hard deadline. There will be no grace period for submission and we cannot accept any assignment submissions after the Wednesday night deadline. For these reasons, make sure to get started early! As a final note, we will be holding the A6 YEAH session tomorrow (Thursday, 8/6) at 7pm PDT. Zoom information for the session can be found on the Zoom details page. The session will also be recorded and posted on Canvas.

Check out the assignment page here – happy coding!

Trip's Wednesday Morning OHs Cancelled
2 days ago by Nick

Due to an extended power outage, Trip's office hours that were scheduled for tomorrow morning from 7-9am PDT have been cancelled. We don't have plans to reschedule them at this time, but if they do get rescheduled to later in the week, we will send out another announcement with further details.

Lecture Schedule Update
1 week and 1 day ago by Nick

As mentioned in class today, we've shuffled around the lecture schedule for the coming week in order to be able to dedicate some class time to final project preparation during lecture tomorrow (Thursday). You can find the updated schedule here.

We will be dedicating all of tomorrow's scheduled lecture time to a final project collaboration/ discussion session. Lecture tomorrow is optional and will not be recorded since we won't be covering any new content. However, if you're able to make it, we recommend coming to chat with Kylie and me about your final project idea if you haven't done so yet. We'll also have topic-specific breakout rooms to allow you to meet and collaborate with other students working on similar project topics as well. We hope to see you there!

Assignment 5 Released
1 week and 2 days ago by Nick

Assignment 5 has now been released! In this assignment, you will get lots of practice with pointers, linked data structures, and real-world sorting algorithms. After completing this assignment, we hope that you will gain an appreciation for the benefits of applying linked data structures to solving interesting problems!

As for logistics, the assignment will be due on Tuesday, August 4 at 11:59pm PDT. As a final note, Trip will be holding the A5 YEAH session on Wednesday, 7/29 at 6pm PDT. Zoom information for the session can be found on the Zoom details page. The session will also be recorded and posted on Canvas.

Check out the assignment page here – happy coding!

Diagnostic Scores Released
1 week and 3 days ago by Kylie

Diagnostic grades have been released on Gradescope. You should have received a message to your Stanford email address that will allow you to log in and see the feedback and rubric. We've also posted the solutions and criteria breakdown. Overall, we were very happy to see the class's performance on the diagnostic, so congratulations on a job well done!

If you think we have made an error in grading (and these do sometimes happen!), you can use Gradescope to submit a regrade request by Thursday, July 30 at 11:59pm PDT. We will only consider cases where you think the criteria have been misapplied to your diagnostic, not if you think the rubric itself is unfair. You should include a description of what you think the grading error was – please make sure to read through the entire rubric carefully before submitting! Submissions that we receive regrade requests for will be completely regraded so it is occasionally possible to receive fewer points than the original grade.

Assignment 4 Released
4 weeks ago by Nick

Assignment 4 has now been released! In this assignment, you will get the opportunity to design and implement your very own data structure class, while getting lots of great practice with dynamic memory allocation, arrays, and heaps along the way. The assignment also includes some small application components to show you the power of the data structure that you have implemented yourself, complete with some awesome interactive demos! We hope that you all find the assignment to be interesting and enriching.

As for logistics, the assignment will be due on Monday, July 27 at 11:59pm PDT. As a final note, Trip will be holding the A4 YEAH session on Tuesday, 7/21 at 6pm PDT. Zoom information for the session can be found on the Zoom details page. The session will also be recorded and posted on Canvas.

Check out the assignment page here – happy coding!

Final Project Guidelines Released
2 weeks and 3 days ago by Nick

The guidelines for the CS106B Final Project have now been released! The project will be a multi-week endeavor where you will spend time developing your very own section/exam problem and writing up a report on your new problem. Then, at the very end of the quarter, you will take on the role of a section leader and present/teach the problem in a 1-on-1 session with your SL. We're really excited about this new form of assessment, and we hope that you find it to be a valuable learning experience. For more information, detailed guidelines, and a timeline of due dates, please visit the Final Project page!

Mid-Quarter Diagnostic Review Session
3 weeks and 1 day ago by Trip

Trip will be holding a review session for the mid-quarter diagnostic this Thursday, 7/16 from 7-8:30PM PDT. It will primarily be material review and problem-solving, but there will be time for questions as well. The meeting will be recorded, and the zoom link can be found on the zoom details page. As a reminder, only non-minors may attend the session live.

Mid-Quarter Diagnostic Logistics
3 weeks and 4 days ago by Kylie

Full guidelines and a practice diagnostic file have been released on the mid-quarter diagnostic page! We've provided a sample diagnostic that closely matches the format of the actual assessment, and while we've also provided the problem and solutions on the course website, we recommend attempting the practice diagnostic on BlueBook to get practice using the software before the the weekend. Reviewing lecture material and working through additional section problems are also great ways to prepare!

Before the assessment is released on Friday, you should make sure to

  • download BlueBook,
  • attempt the practice diagnostic,
  • and try to submit the practice file once you've completed it.

Since we currently do not have a way for you to access your answers after submission, make sure to save your responses somewhere before submitting so you can check your work. If you run into any issues when submitting, please contact Kylie or Nick ASAP so we can make sure to resolve any access issues.

Happy studying!

Assignment 3 Released
4 weeks ago by Nick

Assignment 3 has now been released! In this assignment, you'll put your recursive problem-solving skills to the test by implementing a number of different recursive problems, covering both fundamental recursion and backtracking recursion. This assignment is a significant undertaking and recursive problem-solving often takes time to wrap your head around, so please make sure to read the handout as soon as possible and start coding early!

As for logistics, the assignment will be due on Thursday, July 16 at 11:59pm PDT. Please note the continuation of the use of PDT for the assignment deadline time, which we started using on the last assignment. As a final note, Trip will be holding the A3 YEAH session on Friday, 7/10 at 6pm PDT. Zoom information for the session can be found on the Zoom details page. The session will also be recorded and posted on Canvas.

Check out the assignment page here – happy coding!

Assignment 2 Released
1 month and 6 days ago by Kylie

Assignment 2 has now been released! In this assignment, you'll put your collection ADTs knowledge to use building programs around solving mazes and creating a search engine. This assignment is significantly more complex than the first one, so please make sure to read it over as soon as possible and start early!

After feedback from several students, we've decided to change the assignment deadlines to 11:59pm PDT instead of your local timezone. While we don't encourage you to stay up until 3 a.m. or later to finish your work, we hope that this makes it easier for folks who may be in timezones around the world who may be watching lectures and getting assignments a calendar day later. As always, thank you for your input!

Lastly, Trip will be holding the A2 YEAH session on Thursday, 7/2 at 7pm PDT. Zoom information for the session can be found on the Zoom details page. The session will also be recorded and posted on Canvas.

Check out the assignment page here!

Assignment 1 Released
1 month and 2 weeks ago by Nick

Assignment 1 has now been released! In this assignment, you will get practice with C++ fundamentals, including functions, control flow, decomposition, strings, as well as good testing and debugging practices. Check out the assignment page for more info!

We will be hosting a YEAH (Your Early Assignment Help) session for each assignment this quarter. These sessions will give a detailed walkthrough of the assignment, complete with tips and tricks about how to get started and develop a successful approach to completing the assignment. The A1 YEAH session be hosted by Trip will take place on Wednesday, April 24 from 6:00 to 7:00pm PDT. Zoom information for the session can be found on the Zoom details page. The session will also be recorded and posted on Canvas. Please note that minors are not allowed to attend the session live, but are welcome to watch the recorded session afterwards.

A reminder about minors vs. non-minors
1 month and 2 weeks ago by Kylie

As I mentioned during lecture, the current remote learning situation means that we unfortunately are not able to get all of our staff LiveScanned (fingerprinted) in the state of California. As a result, only a subset of course staff are able to work with minors (students under the age of 18). Please see the lecture 1 slides for a full list of those staff. Most important to note is the following:

  • LaIR (office hours) will be split into separate queues and times for adults vs. minors. Please check the full schedule here to see which times you can attend.
  • Kylie and Nick are cleared to work with minors, but Trip, who is based in New York, is not. Any office hours or help sessions run by Trip are for adults only.
  • When you get assigned to a section, if you are under 18, you should cross-check your section leader to make sure they're on the list of folks approved to work with minors. We are taking this into account when forming sections, but please let us know if we've made a mistake!
Welcome to CS106B!
1 month and 2 weeks ago by Nick and Kylie

Earlier today, we sent out an email announcement to everyone in the class, welcoming them to CS106B. If you did not receive this email but were expecting to, please confirm your enrollment status on Axess. We have replicated a summary of some of the action items of the email announcement here. Please make sure to work through this list of to-do items before the first day of class:

  • Black Lives Matter in CS106B. The course teaching staff is committed to cultivating an equitable and socially-conscious learning environment this summer. Please take the time to read our full statement of solidarity and familiarize yourself with the variety of resources presented there.
  • Read the course syllabus.
  • Join the CS106B Ed Discussion Forum. This is where we’ll post weekly announcements and important updates for the course. Additionally, you will be able to use this forum to ask questions and have discussions with course staff and your fellow students.
  • Read the guide linked in this form and fill out the associated questions so we can find out what you’re interested in reviewing about core programming concepts in C++.
  • Get started on Assignment 0! Due on Wednesday, June 24, this assignment will help us get to know you and will introduce you to some of the tools we’ll be using in the course.
  • Discussion sections are an important part of CS106B, and section sign-ups will open on Sunday. You’ll be able to rank section time preferences on the CS198 website from Sunday at 5pm until Tuesday at 5pm. Section assignments will be made and announced by Wednesday morning, so keep an eye out for an email from the CS198 coordinators then.
  • Our first class will be on Monday, June 22 from 11:30am-12:20pm. Go to Canvas to find the Zoom info.
  • Keep an eye on the course website (where you are at right now), our central hub for lectures, assignments, and other resources.

Computer science is a tool that allows us to make constructive and powerful contributions to the world, and we hope to help unlock those opportunities for you through this course. Please don’t hesitate to reach out to us if you have any questions. We're looking forward to meeting you all in lecture on Monday!

CS106B Summer 2020
1 month and 3 weeks ago by Nick

This is the website for CS106B (Programming Abstractions) in Summer 2020.

We're looking forward to a great quarter of online learning with you all!

This website will be under construction until the first day of class, so please pardon our dust! In the meantime, if you're interested in learning more about the course this quarter, check out the course syllabus and hop on over to the Frequently Asked Questions for answers to questions you may have about CS106B this spring.

Last quarter's website
1 month and 3 weeks ago by Julie, Chris, and Nick

If you are looking for the Spring 2020 CS 106B course website, please click here