Skip to content

Computer Science ​

A broad field hub for learning computing through university courses, books, references, lectures, practice and projects.

Start with a balanced set ​

  • CS50x — Harvard University · course · free — broad introduction to computer science and programming.
  • MIT OpenCourseWare — MIT · university archive · free — large collection of university course material.
  • The Missing Semester — MIT · practical course · free — shell, editors, debugging, command-line tools and developer workflows.
  • Crafting Interpreters — Robert Nystrom · open book/course project — build a programming language to understand interpreters.
  • Exercism — independent · practice · free — exercises and mentoring across many languages.

Courses ​

Universities & institutions ​

  • Harvard CS50 — Harvard University — computer science, programming and related CS courses.
  • MIT OpenCourseWare — MIT — lecture notes, assignments, exams and course material.
  • OpenLearn — The Open University — free courses across computing and many other subjects.
  • Saylor Academy — Saylor Academy — open, self-paced courses.

Independent & project-based ​

  • The Odin Project — nonprofit curriculum — project-based web development and programming.
  • Full Stack Open — University of Helsinki — modern full-stack development.
  • freeCodeCamp — freeCodeCamp — interactive programming and web-development practice.

Books & textbooks ​

Websites & references ​

YouTube & lectures ​

Tools & practice ​

Useful collections ​

Pairing ideas ​

Broad foundation

CS50x → MIT OpenCourseWare → The Missing Semester → Exercism.

Use CS50x for the broad foundation, MIT for depth, Missing Semester for working habits, and Exercism for repetition.

Learn by building

Nand2Tetris → Crafting Interpreters → Project Euler.

A build-heavy route through hardware, language implementation and algorithmic problem solving.

Already programming; deepen fundamentals

Open Data Structures → SICP → MIT OpenCourseWare.

Use the books as the persistent references and add full university courses where a subject needs lectures and assignments.

A curated public index of useful learning material. External resources belong to their respective owners.