CS 47B
Author: Josh Hug


Broad Outline #

CS 47B is a self-paced course where you will complete a subset of the CS 61B curriculum. Students may be either Standard or Project-Only. Assignments are released at the same time as the 61B content schedule.

Project-Only CS 47B #

Project-Only students are assumed to have pretty solid familiarity with all of the core data structures and algorithms from the course, and thus only need to complete labs and projects that have to do with tools, testing, and software engineering.

  • Lab 1 (Setting up your computer / IntelliJ)
  • Lab 2 (Debugging)
  • Lab 3 (Testing)
  • Homework 1 (Being a Good Classmate)
  • Project 2 (Ngordnet)
  • Project 3 (Designing a large system from scratch - Build Your Own World)

If any of this work seems tedious or redundant with what you learned at your previous institution, please reach out and let Josh know. I don’t want to waste your time.

Standard CS 47B #

Standard students are assumed to have a decent understanding of most of the material from the course, but are also required to do some additional work to reinforce the fundamentals:

  • Lab 1 (Setting up your computer / IntelliJ)
  • Lab 2 (Debugging)
  • Lab 3 (Testing)
  • Lab 7 (BSTMap)
  • Lab 8 (HashMap)
  • Homework 1 (Being a Good Classmate)
  • Homework 3 (Theory-based homework)
  • Homework 4 (Theory-based homework)
  • Project 2 (Ngordnet)
  • Project 3 (Designing a large system from scratch - Build Your Own World)

If any of this work seems tedious or redundant with what you learned at your previous institution, please reach out and let Josh know. I don’t want to waste your time.

Grades #

Your score will be based entirely on your performance on these homeworks, labs, and projects. There will be no exams. Optional assignments and 61B assignments not listed above are not graded, but you might find them cool.

CS 47B is not graded on a curve, and grade bins are released below. Points for each assignment will follow 61B:

  • Labs: 256 points each
  • Homeworks: 768 points each
  • Project 2 and 3: 6400 points each

For project only CS 47B students, there are 14366 total points. The grade bins are:

A+ A A- B+ B C
14112 12784 11202 9366 7784 4874

For standard only CS 47B students, there are 16384 total points. The grade bins are:

A+ A A- B+ B C
16132 14838 13292 11500 9954 7110

Deadlines and Extensions #

The 47B deadline and extensions policy will align with the self-paced nature of the course.

The deadlines for each assignment will follow the due dates set by 61B. These deadlines can be found on the main page of this website. Changes to these deadlines will be communicated by email.

There is no partial credit for submitting late work. However, we have an extensions policy to allow for some leniency and flexibility. You may receive credit for work submitted after the deadline by applying for extension requests in Beacon’s Extensions tab.

Extensions up to 1 week will be granted automatically. If you want to request an extension over 1 week, you must meet synchronously with the 47B TA to check in and schedule a modified set of deadlines before your request is approved. Emails scheduling this meeting will be sent out when your extension request is made.

All assignments must be submitted by the end of the semester, May 12 (5/12). Additionally, Project 3 has a hard deadline of May 5 (5/5) (updated on 4/13) due to scheduling project presentations. Checkoffs for Project 3 can either be completed during 61B sections or alternate times during RRR week/finals week.

Resources #

As a CS 47B student, you are not required or expected to attend any CS 61B course meetings. However, you are welcome and encouraged to come to any CS 61B events to help you succeed in the course, including lectures, labs, office hours, and discussion sections.

There is one exception: To get credit for Project 3, you will have to do a checkoff with a TA during week 15.

Collaboration #

All work for CS 47B will be solo except for projects, which you will do as a group of two. You’re allowed to talk to others, but your work should be your own. See Policies on Collaboration and Academic Misconduct.

For Projects 2 and 3, you will be paired with another 47B student. Project pairing forms will be shared closer to each project’s release date.

Communication #

Most communication, including announcements and updates, for 47B will be through the 61B course email, cs61b (at) berkeley.edu.

Additionally, the TA in charge of CS 47B is Allen Gu. His contact info can be found on the course staff page. Please also include the 61B course email!

The course also has a “47B” topic on 61B’s Ed forum. If you have questions about the course, feel free to ask them there! Making public posts also allows other 47B students to view and answer them.

Getting Help #

If you need help with labs, homeworks, or projects, please come to lab or office hours. The schedule is located at the bottom of the website’s main page. All sections are open to 47B students!

Getting Started #

  1. Review the 47B course page and the 61B course policies (“General Background Information”, “Resources”, “Collaboration and Academic Misconduct” sections).
  2. Check your email for a bCourses invitation to 61B. This will give you access to our course forum Ed and Gradescope. Reach out if you run into issues or have not received an invite.
  3. Start setting up your computer with the instructions in Lab 1. By the end of this lab, you should have your Github repository, Beacon account, and development environment.
  4. Fill out the CS 47B introductory survey. Feel free to skip any questions you don’t want to answer.
  5. Get started on coursework. Everything is linked from the course website. All CS 47B students should start with Lab 1 “Setting Up Your Computer” and work your way down the labs column until you’ve completed Lab 3. HWs and projects will be released later in the semester.
Last built: 2023-10-26 18:40 UTC