Course Logistics and Policies

We rebuilt CS145 as a brand-new data systems course for the agent era. Prior iterations focused on the web and cloud eras.

A four-column grid comparing banks and retail in the 1970s to 1980s, the web from 1995 to 2010, the cloud era from 2004 onwards, and AI agents from 2025 onwards. Four rows compare the products of each era, who is on the other end of the query, the hard question each era had to answer, and what the industry invested in during it, escalating from hundreds of clerks to millions reading to billions writing at human pace to machines at machine pace.

Figure 1. Each era shifted the party issuing the query. CS145 targets the agent era.

A 2026 interview or research project asks different systems questions than a 2020 one. This course is built around the ones being asked now.

CS145 is twenty questions about modern data systems. Each pairs a production requirement with a system mechanism. They are listed in full, with the level of the stack each one is answered at, on the Modules page.

The rest of this page is how the class runs. For who built it and how the site is put together, see About.

A 60-second guided walk through the site. Highlights every nav tab and the docs / slides toggle.

Before You Start

Three panels. Python and Colab, marked required with an ink strip: read Python, run a notebook, open a Colab and execute a cell. Then CS 161 Algorithms, giving sort, hash and complexity, and CS 111 Systems, giving filesystems, the memory hierarchy and scheduling, both marked as helping rather than required.

Figure 2. The course leans on the concepts from CS161 and CS111 more than the coursework. Use PSET 0 to check where you stand.

How It Works

Every week runs the same three steps, in this order: you follow the lectures, you practice in section, and you read on your own time. Week 7 has a single lecture. The page used in lecture is the page you read afterward, at the same URL.

Two blocks in one picture. The top block is one week in three lanes, read top to bottom in the order you do them: LECTURES holds the Tuesday and Thursday lectures, PRACTICE holds one section band spanning Wednesday to Friday marked one of three running the Colab walkthrough, and READING, tagged own time, holds two smaller cards: the lecture page in Notes with its three to five minute video, and the week's reading list of required pages plus a case study. A dotted rail down the left carries each lane into the next. Between the blocks, a line says section and the reading are your prep for the PSET, which is the same material on your own, graded. The bottom block is the quarter: eleven week columns with the module each covers, M1 SQL through M5 Distributed, a break at week ten and industry lessons at week eleven, then two rows of real deadlines. Six PSETs, M0 Sep 25, M1 Oct 5, M2 Oct 12, M3 Oct 19, M4 Nov 9 and M5 Dec 4, each landing after the module it covers. Three project milestones: Project 1 Oct 16, the Project 2 proposal Oct 30, and Project 2 Nov 20.

Figure 3. Lectures are Tuesday and Thursday. Practice is section: the same Colab walkthrough runs Wednesday, Thursday and Friday across three slots, and you attend one. Reading is the lecture page in Notes with its three to five minute video, plus the week's reading list: the required pages and a case study, in ten of the eleven weeks.

Underneath is that same week across all eleven, with every real deadline on it. A PSET follows its module, not the week you are in, so the PSET row sits one week right of the module it covers.

Two ways to use the course

Following lectures. Open Schedule, open that module on Content, read each page in Notes, take the module quiz, do the matching PSET. Modules are a sequence; each one builds on the last.

Reviewing for an exam or interview. Open Prep For, pick a bundle, and it links straight to the pages you need. Use Video mode for a fast pass, Search for forgotten terms, and re-read the case studies. Modules are a knowledge graph; jump anywhere, in any order.

How Grading Works

CS145 offers two paths to your grade. The course uses the higher score.

  • Path 1: keep up with the class. Answer nano-quizzes in lecture and section each week, and do the PSets. The final counts 35%.

  • Path 2: bet on the final. The course moves the nano-quiz weight into the final automatically. The final counts 50%.

A hundred-point scale. The first fifty points are fixed for everyone: Project 1 worth ten, PSets worth fifteen, Project 2 worth twenty-five. From the fifty-point mark the bar splits: Path 1 accrues fifteen points from nano quizzes and puts thirty-five on the final, Path 2 is a final worth fifty, and a brace marks that you are given whichever scores higher.

Figure 4. Everyone earns 50 fixed points: Project 1 for 10, PSets for 15, Project 2 for 25. The remaining 50 points come from either Path 1 or Path 2, and the course uses the higher score. Path 1 accrues 15 points from nano quizzes across the term and puts 35 on the final. Path 2 assigns all 50 to the final. Nano quizzes run live on Poll Everywhere, one in every lecture and one in every section.

Nano quizzes run live on Poll Everywhere, one in every lecture and one in every section: about 18 lecture quizzes at 0.5 points each and 10 section quizzes at 0.75 points each. You answer them on your phone during class, so they only count if you are there. The 15-point cap means extra quizzes absorb missed ones. There are no makeups, in lecture or in section, and you do not need them: if missed quizzes leave you short on Path 1, Path 2 scores higher and you are given it automatically.

Grade = Projects + PSets + max(Final @ 35% + Quizzes @ 15%, Final @ 50%)

Grade scale

  • ≥ 97: A+, ≥ 93: A, ≥ 90: A−

  • ≥ 87: B+, ≥ 83: B, ≥ 80: B−

  • ≥ 77: C+, ≥ 73: C, ≥ 70: C−

  • ≥ 60: D, < 60: F

P/NP: need at least a C− (≥ 70) to pass.

Units

4 units is the default. The material and pacing match 4 units. You may enroll for 3. The course expectations stay the same.

Final Exam

Exam conflict policy: no rescheduling of the final exam.

  • OAE accommodations: same day, extended hours, alternate location

  • Verify conflicts before enrolling in CS145

  • For illness or emergencies on exam day, see the "When life gets in the way" section below

When life gets in the way

A large class needs built-in slack. Path 2, the PSet structure, and CA sessions cover occasional illness or a rough week.

For emergencies beyond routine misses, involve your undergraduate advisor or physician and forward their note through Gradescope. The staff uses their note for decisions and avoids personal medical details.

Incompletes from a missed final resolve the next time CS145 runs (usually once a year). See Stanford's Incomplete policy and talk to your undergrad advisor.

Frequently Asked Questions

Q: Are lectures and sections optional?

Yes. If you miss class, Path 2 applies automatically. No form and no penalty. If you attend, live nano quizzes can lower the final's weight from 50% to 35%. You are responsible for the material either way. It carries into your PSets, your projects, and every assessment.

Q: Why nano quizzes?

Nano quizzes are short, live check-ins on that week's material to encourage students to keep pace with the material. Grading Path 2 automatically covers you if you miss more of them.

Q: I'm a CGOE student or can't get to campus. Can I still take the course?

Absolutely. Every lecture page and its three-to-five-minute video are here on this site. Every lecture will be on Canvas. At least one of the section walkthroughs will be posted as a video on Ed. All PSets and projects are submitted online. Path 2 applies automatically, with the final worth 50%.

Q: Do I have to choose a path?

No. At the end of the course, we calculate both totals and you get the higher one. Nano quizzes can only improve your Path 1 score.

Q: I missed a lecture. How do I catch up?

Open the Schedule and find the pages listed for that day. Each page includes a short video. For section, use the posted Colab walkthroughs and run the notebook when convenient. Path 2 automatically accounts for the missed quiz points.

Accessibility

Students with OAE needs are a valued part of Stanford. If you already have an Academic Accommodation Letter, upload it to Gradescope at the earliest opportunity so we can partner with you and OAE to identify any barriers to access in this course.

OAE accommodations apply to the final exam (extended time, alternate location, alternate timing) and to deadline accommodations on PSets and projects.

AI Policy: Learn Like You'll Work

Two panels. On the projects, every AI tool is allowed and credited, and the grade is on verifying the answer, fixing the semantics, cutting the cost and defending the design. On the paper test there is no AI, since it stands in for a whiteboard interview and measures systems thinking you carry yourself.

Figure 5. The model drafting your first query is assumed. What gets graded is the four things you do after it answers, and the paper test checks that you can do them without it.

Ship with AI; own the result. The model automates the typing. You build your muscle for projects beyond the class. Use your favorite LLMs (GPT, Claude, Gemini), try different prompts, and compare approaches.

What you need to own, to do the four things above:

  • Query semantics, what the SQL does

  • Performance debugging, why queries are slow

  • Index strategies, when they help or hurt

  • Join algorithms, which one fits your data

  • System tradeoffs, memory vs. disk, latency vs. throughput