Checklist
CS50 study checklist A weekly CS50 checklist to absorb lectures, ship problem sets, and pass check50 without last-minute scrambles.
Built for CS50 · Intro CS learners working through weekly problem sets.
Progress 0 of 13 tasks complete
Copy remaining Prep the week Digest the lecture and define the problem set scope.
Summarize the lecture and shorts Write 5 to 7 bullet takeaways and note any new syntax or concept the next pset will rely on. ~30 min Read the problem set spec twice List required outputs, edge cases, and the exact check50 and style50 requirements before writing any code. ~25 min Sketch the approach on paper Pseudocode the core logic and data flow first so you debug ideas before you debug syntax. ~20 min Reserve two focus blocks Calendar two coding sessions before the deadline so you never compress the whole pset into one night. ~10 min
Build and debug Ship the smallest working version, then grow it.
Implement the smallest working version Get one input producing one correct output before adding features; momentum beats a perfect blank page. ~90 min Test inputs, outputs, and edge cases Run your own tests plus the boundary cases the spec hints at, like empty input and maximum values. ~45 min Debug with debug50 and printf Reproduce the bug consistently first, then trace variable state step by step instead of guessing. ~45 min
Refine and submit Pass the graders and meet rubric and style rules.
Run check50 and style50 Run both from a clean terminal and fix every failing case and formatting warning before submitting. ~20 min Review correctness, design, and style CS50 grades on all three; tidy naming and structure, not just a passing check50. ~25 min Submit and log lessons Submit via the expected command and note one bug pattern to avoid next week. ~10 min
Reinforce and review Lock in concepts so later psets build on them.
Re-explain the pset's core concept Describe the algorithm or data structure you used out loud; if you can teach it, you understand it. ~20 min Refactor one rough section Clean up the messiest function for readability now, while the logic is still fresh in your head. ~25 min Preview the next lecture's topic Skim ahead so next week's prep starts from familiarity, not cold. ~15 min
Common mistakes Starting to code before reading the spec carefully enough to know the edge cases. Debugging by guessing instead of reproducing the bug consistently first. Optimizing for check50 alone and ignoring the design and style portions of the grade. Waiting until the last day, so a single blocker eats the whole deadline. Skipping the lecture shorts that introduce the exact concept the pset needs. Pro tips Ship a tiny working version early, then iterate toward the full spec. Keep an error log of recurring bug patterns like off-by-one and uninitialized pointers. Use debug50 to step through state rather than scattering printf statements blindly. Pseudocode on paper before typing so you separate logic errors from syntax errors. Pair or attend office hours once a week to break stubborn blockers fast. FAQ How should I start the CS50 study checklist? Start with the first phase, then run one timed Study Spaces sprint before adding more tasks. The goal is execution, not a perfect plan.
What should I do if I fall behind? Copy the remaining tasks, pick the highest-score or highest-deadline item, and restart with one focused block.
How often should I review progress? Review after each sprint and once at the end of the week so the next session starts with a clear first task.
Use it now
Turn this page into a live sprint Start the matching room for CS50, then use the sprint plan as the first task and recap script.
CS50 study checklist
Focus target: CS50
Block 1 (25 min): closed-book recall or one timed practice set.
Break (5 min): mark confusing items without opening a new task.
Block 2 (25 min): correct misses and write the next first step.
Done: one score/error note plus one queued task for tomorrow.