Skip to main content
WebsitebeginnerFree

Teach Yourself Computer Science

Unknown

Oz Nova and Myles Byrne's opinionated syllabus for self-taught engineers, naming one best book and video course for each of nine core subjects. Gives a defensible study order and rough hour budgets per topic.

Visit resource

More resources on Introduction to CS

CourseFree

CS61A: Structure and Interpretation of Computer Programs

Learn fundamental programming concepts with CS61A, an intro-level CS course from Pamela Fox et al. Explore structure & interpretation of programs!

CourseFree

Introduction to Computer Science and Programming Using Python (MITx 6.00.1x)

Self-paced introduction to programming and computational thinking in Python: branching, iteration, functions, recursion, objects, testing and debugging, and algorithmic complexity with simple search and sort. Video lectures and auto-graded exercises and problem sets teach learners to write small programs that solve problems.

WebsiteFree

NandGame

A browser puzzle that starts with a single NAND gate and has you compose latches, adders, an ALU, memory, and finally a working CPU with its own assembler and instruction set.

PodcastFree

Base.cs

Beginner-friendly computer science lessons based on Vaidehi Joshi's base.cs blog series, produced by CodeNewbie.

BookPaid

Code: The Hidden Language

Builds a working computer from the ground up, starting with flashlights and Morse code and progressing through relays, logic gates, and memory. Readers finish understanding how binary, circuits, and machine instructions actually produce computation.

BookPaid

Computer Science Distilled

A short survey of the ideas a working programmer uses: logic, combinatorics, complexity analysis, common algorithms and data structures, plus a look at computability. Readers gain vocabulary for reasoning about efficiency and problem structure.

See all Introduction to CS resources β†’