Hacker Courses The online courses Redditors keep recommending, ranked from 12,717 public comments in 20 communities.
i

Best CS Fundamentals & Systems courses

The 49 CS Fundamentals & Systems courses Redditors recommend to each other on Reddit, ranked by how many people recommended each one, how strongly, in how many separate threads and over how many years (2,679 recommendations). 38 of them are free. How ranking works.

#1Classic

CS50: Introduction to Computer Science

Harvard University · beginner · free

Commenters repeatedly call it an excellent, high-production-value intro that builds a strong foundation, with David Malan's lecturing singled out as a major strength.

2,011 recommenders · 2,277 threads · 2008–2023CS Fundamentals & Systems
#10Classic

The Elements of Computing Systems (Nand2Tetris)

nand2tetris.org · intermediate · free

Commenters call it a fantastic, practical way to understand how computers work from first principles, with one saying it is probably the best course they have taken.

154 recommenders · 173 threads · 2013–2023CS Fundamentals & Systems
#11Classic

CS101 Introduction to Computer Science

Coursera · beginner · free

Most commenters name Udacity's CS101 as the best free intro to CS for beginners, so this Coursera entry is mainly a pointer to a similar course; only one comment directly recommends the Coursera version.

153 recommenders · 171 threads · 2012–2022CS Fundamentals & Systems
#22Classic

6.0001 Introduction to Computer Science and Programming in Python

MIT OCW · beginner · free

Commenters recommend it as a solid Python-based introduction to programming and algorithms, though one commenter prefers Harvard's CS50 as a starting point.

86 recommenders · 91 threads · 2011–2023CS Fundamentals & Systems
#39Evergreen

CS106A Programming Methodology

Stanford University · beginner · free

Commenters call it a fun, well-structured introduction to programming and computer science, with a lecturer who is easy to learn from and assignments that give quick, rewarding results.

34 recommenders · 40 threads · 2009–2023CS Fundamentals & Systems
#48Evergreen

6.001x Introduction to Computer Science and Programming Using Python

edX (MITx) · beginner · free

Commenters bring it up mainly as a rigorous beginner alternative to CS50, described as a course that hits learners with a year of data structures and algorithms and is less "real world" in focus.

33 recommenders · 35 threads · 2013–2023CS Fundamentals & Systems
#56Evergreen

Introduction to Computer Science and Programming in Python

edX · beginner · free

Commenters say they never tire of recommending it as a starting point for learning computer science with Python.

25 recommenders · 26 threads · 2012–2023CS Fundamentals & Systems
#95Rising

The Missing Semester of Your CS Education

MIT CSAIL · beginner · free

Commenters call it a godsend and highly recommend it regardless of level, for filling the gap of practical tooling that classes don't teach.

19 recommenders · 21 threads · 2020–2023CS Fundamentals & Systems
#114Evergreen

6.828 Operating System Engineering

MIT OpenCourseWare · advanced · free

Commenters call it one of the best OS courses and say the labs are very hard and very rewarding, with the xv6 codebase praised as small enough to understand fully.

12 recommenders · 12 threads · 2007–2021CS Fundamentals & Systems
#124

Crash Course Computer Science

YouTube · beginner · free

Commenters point to it as a well-made, watchable high-level introduction to CS history and core concepts, suitable for teens and homeschoolers.

15 recommenders · 16 threads · 2018–2023CS Fundamentals & Systems
#128

CS 61C Great Ideas in Computer Architecture

UC Berkeley · beginner · free

Commenters call it a transformative foundation for understanding how computers actually work, and recommend it especially for learning C and C++ and machine-level behavior.

10 recommenders · 11 threads · 2016–2023CS Fundamentals & Systems
#164

The Elements of Computing Systems (Nand2Tetris) Part II

Coursera · intermediate · freemium

Commenters who completed both parts describe enjoying the course, though one notes the teachyourselfcs.com writers only recommend the first part, so fit depends on the reader's approach.

9 recommenders · 9 threads · 2018–2023CS Fundamentals & Systems
#169Evergreen

6.004 Computation Structures

MIT OpenCourseWare · intermediate · free

Commenters call it an excellent, clear walk through abstraction layers from 1s and 0s up to a CPU, and say it shaped their careers in systems work.

9 recommenders · 9 threads · 2009–2021CS Fundamentals & Systems
#197

From Nand to Tetris (Build a Modern Computer from First Principles)

Coursera · intermediate · free

Commenters praise it for making you build a working computer from logic gates and then program it in assembly, which they say teaches architecture far better than reading about it.

7 recommenders · 7 threads · 2015–2022CS Fundamentals & Systems
#233Rising

Code in Place

Stanford University · beginner · free

One commenter describes the experience as rewarding, especially for volunteers who lead small sections as TAs.

6 recommenders · 6 threads · 2020–2023CS Fundamentals & Systems
#234

Introduction to Linux

edX · beginner · free

Commenters say it fills in Linux background that self-taught learners often miss, and that it is free despite the Linux Foundation's paid training normally costing thousands.

7 recommenders · 7 threads · 2015–2022CS Fundamentals & Systems
#273

15-213 Introduction to Computer Systems

Carnegie Mellon University · intermediate · free

Commenters call it one of the best-taught courses they've taken, praise its labs and online lecture presentation, and recommend it as a foundation in systems programming and x86 assembly.

5 recommenders · 5 threads · 2015–2023CS Fundamentals & Systems
#348

Computer Architecture

Coursera · intermediate

One commenter recommends it as a sound way to learn how CPU pieces fit together, and suggests pairing it with hands-on VHDL or Verilog work.

4 recommenders · 4 threads · 2015–2020CS Fundamentals & Systems
#375

The Hardware/Software Interface

Coursera · advanced · free

Commenters call it their favorite online course and praise its assignments, and one notes it is a great companion to the CS:APP book.

3 recommenders · 4 threads · 2014–2016CS Fundamentals & Systems
#376

Build a Computer

Coursera · beginner · free

Commenters call it a gentle, very hands-on introduction to how computers work from first principles, and say the layered approach is valuable even for software people.

3 recommenders · 3 threads · 2019–2023CS Fundamentals & Systems
#383

Introduction to Computer Science

edX · beginner · freemium

One commenter says it was recommended to them as a free option for learning CS theory, with a paid tier for academic credit.

4 recommenders · 4 threads · 2014–2021CS Fundamentals & Systems
#412

CS50 (Introduction to Computer Science)

YouTube · beginner · free

Commenters call it an entertaining and friendly introduction to computer science, with one saying the lectures are a breath of fresh air compared to other tutorials.

3 recommenders · 3 threads · 2016–2019CS Fundamentals & Systems
#417

Programming Paradigms

Stanford University · intermediate · free

Commenters call it an incredible course that greatly improved their programming insight and helped them grasp pointers, with Jerry Cain praised for explaining ideas clearly.

3 recommenders · 3 threads · 2010–2018CS Fundamentals & Systems
#419

Learn the Command Line

Codecademy · beginner · freemium

Commenters suggest it as a fun, interactive way to learn the command line before picking up git, Linux, and deployment tools.

4 recommenders · 4 threads · 2016–2018CS Fundamentals & Systems
#421

Software Debugging

Udacity · mixed · free

Commenters call it excellent and say it goes beyond debugger commands to the underlying methods for finding bugs and automating debugging.

3 recommenders · 7 threads · 2014–2016CS Fundamentals & Systems
#422

CS107 Computer Organization & Systems

Stanford University · intermediate · free

Commenters point to it as a solid way to learn C and the memory-level details that higher-level languages hide, with one saying it is a good alternative to skipping C in a CS degree.

3 recommenders · 3 threads · 2013–2017CS Fundamentals & Systems
#427

Embedded Systems - Shape the World

edX · beginner · freemium

Commenters call it an excellent, high-quality hands-on introduction to embedded programming that works on real hardware.

3 recommenders · 3 threads · 2015–2020CS Fundamentals & Systems
#429

Introduction to Computer Science

MIT OpenCourseWare · beginner · free

One commenter calls it very cool and easy to follow, and says it should cover gaps left by a missed undergraduate education.

3 recommenders · 3 threads · 2021–2023CS Fundamentals & Systems
#457

MIT Introduction to Computer Science and Programming

MIT OpenCourseWare · beginner · free

Commenters call the lectures awesome and describe the course as free and challenging, and one suggests keeping it alongside a Python course because it covers different types of programming languages.

3 recommenders · 3 threads · 2012–2019CS Fundamentals & Systems
#460

15-122 Principles of Imperative Computation

Carnegie Mellon University · beginner · free

Commenters call it mind-blowing for teaching them how to reason about their programs, and praise the course notes as excellent.

3 recommenders · 3 threads · 2015–2023CS Fundamentals & Systems
#466

Linux Mastery

Udemy · beginner · paid

Commenters call it a very good Linux course with an enthusiastic, knowledgeable tutor, and say it is a one-time purchase compared with monthly subscriptions.

2 recommenders · 2 threads · 2019CS Fundamentals & Systems
#485

Harvard CS50x 2021

Harvard (edX) · beginner · free

Commenters call it a solid source of formal CS knowledge for beginners, with one saying to start with its first nine lectures before choosing a specialty.

3 recommenders · 3 threads · 2017–2022CS Fundamentals & Systems
#505

CS101 Introduction to Computer Science

Stanford University · beginner · free

Commenters call it a gentle first taste of programming that focuses on concepts rather than memorizing code, and say it is highly recommended even after another intro course.

3 recommenders · 3 threads · 2012–2021CS Fundamentals & Systems
#525

Introduction to Programming and Computer Science

freeCodeCamp · beginner · free

Commenters call it a beginner-friendly crash course in programming fundamentals, and one says even the first hour alone introduces the concepts well.

3 recommenders · 3 threads · 2022–2023CS Fundamentals & Systems
#533

CS101 Introduction to Computer Science

Udacity · beginner · free

Commenters call it a great, project-oriented introduction that focuses on actual coding and problem solving rather than just reading.

2 recommenders · 2 threads · 2012–2014CS Fundamentals & Systems
#553

Programming Methodologies

Stanford University · beginner · free

Commenters point to it as a free, full video course for learning programming concepts and object-oriented design, one that one commenter says is thorough enough to compare with a university's fundamentals sequence.

3 recommenders · 3 threads · 2014–2016CS Fundamentals & Systems
#565

6.824 Distributed Systems

MIT OpenCourseWare · advanced · free

Commenters call it an excellent, hands-on introduction to distributed systems, valuable because the labs force you to implement and debug real designs.

2 recommenders · 2 threads · 2020–2023CS Fundamentals & Systems
#620

Computer Networks

Coursera · beginner · free

Commenters call it an excellent, well-rounded networking course and say it is good even as an introductory class.

2 recommenders · 2 threads · 2013CS Fundamentals & Systems
#707

6.S096 Assembly Language

MIT OpenCourseWare · beginner · free

Commenters point to it as a starting place for understanding how programs map down to what the processor actually does, with one calling MIT OpenCourseWare's assembly lectures great and saying to start there.

2 recommenders · 2 threads · 2016–2022CS Fundamentals & Systems
#726

6.002x Circuits and Electronics

edX · beginner · free

Commenters call it one of the best online courses they've taken, praising the lectures, the interactive exercises, and how well it explains how electronics and computers work.

2 recommenders · 2 threads · 2019–2021CS Fundamentals & Systems
#733

CCNA

Udemy · beginner · paid

Commenters say they passed the CCNA with it and suggest taking the free networking courses on Udemy as a starting point before learning a programming language.

2 recommenders · 2 threads · 2019–2020CS Fundamentals & Systems
#755

Programming Foundations: Fundamentals

Lynda.com · beginner · freemium

Commenters call it a good introductory and reference course that helped them grasp the basic building blocks of programming.

2 recommenders · 2 threads · 2016–2020CS Fundamentals & Systems
#756

Computer Science 101

Coursera · beginner · free

Commenters call it perfectly suited to people new to programming and recommend trying it before harder beginner courses like Udacity's CS101.

2 recommenders · 2 threads · 2013–2014CS Fundamentals & Systems
#782

Kafka course

Udemy · beginner · paid

Commenters recommend it as a quick, practical way to get up to speed on Kafka for a new job, with one commenter saying they took both linked courses and that together they cover the core user-side material.

2 recommenders · 2 threads · 2022–2023CS Fundamentals & Systems
#876

Linux Command Line Basics

Udacity · beginner · free

Commenters call it a quick, free way to get comfortable with the Linux terminal in only a few hours, and suggest pairing it with The Linux Command Line book.

2 recommenders · 2 threads · 2016–2018CS Fundamentals & Systems
#886

Intro to Programming

Lynda.com · beginner · paid

Commenters recommend it as an accessible starting point for absolute beginners, praising instructor Simon Allardice's clear explanations.

2 recommenders · 2 threads · 2015–2016CS Fundamentals & Systems
#887

Build a Web Browser

Udacity · intermediate · free

Commenters suggest it as a fun, hands-on next step for people who want to build something substantial after learning Python.

2 recommenders · 2 threads · 2013–2016CS Fundamentals & Systems
#889

Computer Architecture

MIT OpenCourseWare · intermediate · free

Commenters point to it as a free route into how computers work at the processor level, with one noting their own school course built a processor and an assembler.

2 recommenders · 2 threads · 2015–2016CS Fundamentals & Systems
#915

CS10 The Beauty and Joy of Computing

UC Berkeley · beginner

Commenters describe it as a good intro to thinking like a programmer and a sensible step before the CS61 series.

2 recommenders · 2 threads · 2021CS Fundamentals & Systems

Other topics

Machine Learning & AI (153)Algorithms & Data Structures (76)Mathematics (60)Programming Languages (172)Web & Mobile Development (306)Databases & Data Engineering (17)Security & Cryptography (2)Science & Engineering (7)Productivity & Personal Development (4)Marketing & Growth (23)Business, Finance & Economics (45)Design & Creative (2)Humanities & Social Science (2)General Learning (16)

Keyboard

In the course grid
←↑→↓
Move between courses
Home End
Start / end of row (with Ctrl: first / last)
PgUp PgDn
Jump several rows
Enter
Open course
S
Save / unsave course
1–5
Best, Trending, Hidden gems, Evergreen, Saved
[ ]
Previous / next topic
On a course page
← →
Previous / next course in your list
S
Save / unsave
O
Open the course website
Esc
Back to the grid
Everywhere
/
Search
T
Light / dark theme
?
This help