Resources
Everything worth your time
CS50 is the backbone; the books and courses below are the second explanation when the first one does not click. Each week page links the parts that matter that week.
Primary source CS50x 2026 · Harvard University Lectures, notes, slides, source code, problem sets. You are enrolled on edX; the YouTube playlist is public. cs50.harvard.edu ↗ Archive Introduction to Computer Science YMT113, 2025–2026 course site (Notion) Last year's lectures, slides, C lab assignments and exams. notion ↗
Guides
Books
- CS50x 2026: Introduction to Computer Science ↗ David J. Malan, Harvard University Our primary source. Lecture videos, notes, slides, source code and problem sets, all free. You are enrolled on edX.
- The C Programming Language, 2nd ed. Brian W. Kernighan, Dennis M. Ritchie The classic, written by the language's creators. Short and precise; chapters 1–6 cover everything we use.
- Computer Science: An Overview, 13th ed. J. Glenn Brookshear, Dennis Brylow Broad, readable survey of the whole field. Good background for weeks 1, 2, 13 and 14.
- Code: The Hidden Language of Computer Hardware and Software, 2nd ed. Charles Petzold How bits, gates and circuits become a computer. The best book to read alongside weeks 1–2 and 6.
- Beej's Guide to C Programming ↗ Brian “Beej” Hall Free online. Friendly and complete; great as a second explanation of pointers.
- Modern C, 3rd ed. ↗ Jens Gustedt Free online. For the curious who want the current standard, not the 1980s dialect.
Other great courses
- CS50x 2026 on edX ↗ Harvard University You are enrolled. Watch the lecture before each Monday; the week page tells you which one.
- CS101 Introduction to Computing Principles ↗ Stanford University Short readable chapters on hardware, images, networks and software. We use it in weeks 6, 13 and 14.
- Missing Semester of Your CS Education ↗ MIT The shell, Git, editors and debugging: the tools professionals use every day.
- CS50's Introduction to Cybersecurity ↗ Harvard University Free. Passwords, hashing, encryption and threats, explained for everyone. Week 13 reading.
- CS50's Introduction to Programming with Python ↗ Harvard University Free. If you want more Python after week 9.
Tools
- GitHub Codespaces ↗ VS Code in the browser, opened straight from your lab repository with gcc, make and the tests ready. Our lab editor; free within your personal GitHub quota.
- Classroom 50 ↗ Where you accept labs and see your autograded scores. Built by the CS50 team.
- cs50.dev ↗ Harvard's free VS Code in the browser with the CS50 library preinstalled. Perfect for following the CS50 lectures and for practice; graded labs use Codespaces.
- CS50 Duck (cs50.ai) ↗ An AI teaching assistant that explains rather than solves. Ask it about error messages.
- Google Colab ↗ Runs our exploration notebooks (yes, even the C ones) with nothing installed.
- Scratch ↗ MIT's block-based language. Week 2 starts here.
- Python Tutor (C mode) ↗ Visualize memory, pointers and the stack step by step. Invaluable in weeks 6 and 7.
- Compiler Explorer ↗ Paste C, see the assembly your compiler produces. The wow moment of week 3, on demand.
- cppreference (C) ↗ The reference for every standard C function.
- CS50 Manual Pages ↗ Beginner-friendly documentation for C library functions.