Announcements
It's been a pleasure to teach this course and to get to know many of you through your insightful questions and visits at office hours. You're welcome to reach out to me over email if you'd like to chat, whether that's about life in general or whether that's about next steps in computer science. Best of luck going forward!
Final assessment grades have been released on Gradescope. You should expect an email from Gradescope shortly, but you can also view your grades by accessing the website here.
Here are the solutions for the assessment.
We thought this assessment was quite challenging, and we think that the median and mean show that. The assessment will not be curved by itself, but everyone's final grades will be curved once they're calculated.
If you'd like to submit a regrade request, please do so through Gradescope. Due to the tight turnaround for final grades, regrade requests will only be accepted until 8/22 at 11:59PM PT. Just like last time, please only submit a request after you've read through the solution, and only submit a request if you feel that the wrong criteria has been applied to your problem. If you have further questions about the assessment, please email Trip.
Congratulations on making it this far. This is a very rigorous, fast-paced course. Best of luck on the end of quarter assessment! You can do this.
Practice materials for the Final Assessment are now available! You can access them here. As a reminder, the assessment will take place over Gradescope and will happen from Friday 8/13 to Sunday 8/15. The assessment will be available from the very beginning of the first day to the very end of the last day in Pacific Time. You'll have 3 hours to take the assessment, but it was designed to take around 90 minutes.
Susan and I are so proud of the work that you've done this quarter. This is the final stretch – we're rooting for you!
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 11 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 Friday, 8/6 at 11:30am PDT. Zoom information, slides, and the recording for the session can be found on here.
Check out the assignment page here – happy coding!
The Mid-Quarter Diagnostic has been graded! Overall, we're really happy with how you all are doing in the class. Recall that CS106B is a challenging offering, even at the college level (it's essentially an semester course packed into 8 weeks!).
Here are the solutions to the diagnostic.
You can find your graded work on GradeScope. Please note that you may submit a regrade request if you think that we have mis-applied criteria to your submission by Monday 7/26 at 11:59pm PT. Before you do so, please make sure that you have looked at the solutions so that you understand where we were trying to deduct. Keep up the great work, everyone!
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 Tuesday, July 27 at 11:59pm PDT__. As a final note, Jin-Hee, Lauren, and Grant will be holding the A4 YEAH session on Wednesday, 7/21 at 11:30am PDT. Zoom information for the session can be found on the Ed forum. The session will also be recorded and posted on Ed.
Information about the Mid-Quarter Diangostic has been released! You can find the relevant info, as well as extra practice materials, on the diagnostic page. The diagnostic will be administered via Gradescope. You will need to make a Gradescope account using your Stanford provided email. If you do so, you'll see that you've already been added to a class called CS106B8. Please let Trip know if you have any difficulties accessing Gradescope ASAP.
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 15 at 11:59pm PDT. As a final note, Jin-Hee, Lauren, and Grant held the A3 YEAH session this past Thursday. Slides and a video recording can be found on Ed.
Check out the assignment page here – happy coding!
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!
Come join Jin-Hee and Grant at what is sure to be a captivating A2 YEAH session on Thursday, 7/1 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 Ed.
Check out the assignment page here!
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 2 of our incredible Section Leaders Jin-Hee and Grant will take place on Wednesday, June 23 right after lecture from 3-4pm PDT. Zoom information for the session can be found on the Zoom details page. The session will also be recorded and posted on Canvas.
The course staff will be hosting 2 QT creator help sessions for people who are having trouble installing the software. These sessions will be 6/22 from 7-9pm PT and 6/23 from 9-10am PT. You can sign up using the normal LaIR queue here. Feel free to email Trip if you can't make these times!
Thank you all for coming to an exciting first lecture! I just wanted to reiterate to you all that section signups close Tuesday (6/22) at 5pm PT. You can find the signup form on this website, and we'll inform you of your section times via email on Wednesday morning. If you miss this signup, you will need to find an available section via the same website starting Wednesday. If you are assigned a section that you absolutely cannot make, please email Trip for a swap. More info about sections can be found here.
We've got an exciting summer ahead of us and you're in for a real programming treat. Over the next eight weeks, we'll explore fundamental techniques in modeling and solving problems using a variety of programming techniques and evaluating their tradeoffs. By the time you're done with this class, you'll have a firm grasp of problem-solving techniques and will be ready to start applying your skills in areas that you genuinely care about. In the meantime, feel free to check out the course syllabus, calendar, and FAQs to learn more about what this class is all about. See you soon!
This is the website for CS106B (Programming Abstractions) in Summer 2021. Please note that this is the 8-week offering of the course. For the 10 week offering of the course through the Stanford Summer Quarter, please click here!
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 summer.
If you are looking for the Spring 2021 CS 106B course website, please click here