Subject
27 entries
Computer Science
Bookmarks
Book List for Streetfighting Computer Scientists
Nick Black's curated reading list for developing deep, confrontational CS competence — covering C/C++/Rust, algorithms (Knuth, CLRS), systems (Stevens, Kerrisk), architecture, and theory. Explicitly excludes ML, quantum, and infosec.
Advent of Distributed Systems
Advent of Distributed Systems is a coding challenge series in the style of Advent of Code but focused on distributed systems problems — consensus, replication, fault tolerance, and network partitions. Hands-on learning for distributed concepts that are hard to study from papers alone.
Advanced Algorithms and Data Structures
Marcello La Rocca's Manning textbook on advanced algorithms and data structures, organized around practical problems like caching, nearest-neighbor search, clustering, and graph planarity. A useful reference for engineers who have outgrown intro-level algorithms and need principled solutions to real design challenges.
CRDTs: Conflict-free Replicated Data Types
crdt.tech is the canonical reference hub for Conflict-free Replicated Data Types — the data structures that enable real-time collaborative editing without central coordination. The math guarantees eventual consistency even when network partitions split collaborators.
My Recurse Center Syllabus
Ashley Blewer's self-directed syllabus from her Recurse Center batch — a structured plan for a self-directed coding retreat covering audio/video formats, networking, compilers, and systems programming. A useful template for independent deep-learning programs.
What's a Linked List, Anyway? (BaseCS)
The first part of Vaidehi Joshi's BaseCS series on linked lists — a beginner-friendly explanation of singly and doubly linked lists with illustrations. Part of a comprehensive CS fundamentals series written for self-taught developers.
The Complete FAANG Preparation Repository
A comprehensive GitHub repository for FAANG interview preparation — DSA problems, technical subject theory (OS, DBMS, networking, OOP), and curated question sets. One of the large open-source interview prep aggregators.
Indexing 1,600,000,000 Keys with Automata and Rust
Andrew Gallant's deep technical post on using finite state transducers to index 1.6 billion keys in a compact data structure — the basis for ripgrep and the fst crate. A masterclass in how the right data structure unlocks orders-of-magnitude improvements.
MIT 6.033: Computer System Engineering
MIT 6.033 Computer System Engineering covers the design of large, complex software systems — reliability, fault tolerance, operating systems, networking, and distributed systems. One of MIT's most comprehensive systems courses, available free via OpenCourseWare.
List of All Content — Grokit Computer Science Review
Grokit's computer science review list — a curated index of CS fundamentals topics for interview preparation and self-study. Covers algorithms, data structures, systems, and theory with links to resources for each topic.
Advanced Data Structures in Python
Pypix overview of advanced data structures in Python beyond the built-in list/dict/set — covering heaps, tries, segment trees, and other structures that Python's standard library either implements partially or not at all.
Sorting Algorithms Are Mesmerizing When Visualized
Gizmodo's coverage of a visualization showing 15 different sorting algorithms in motion — the classic side-by-side comparison of bubble sort, quicksort, merge sort, and others that makes their behavioral differences viscerally apparent. A perennial teaching tool.
Big-O Notation Explained by a Self-Taught Programmer
A self-taught programmer's accessible guide to Big-O notation — explaining time and space complexity from first principles without assuming a CS degree. A good on-ramp for practitioners who need to reason about algorithm performance.
What Every Computer Science Major Should Know
Matt Might's canonical essay on what a CS graduate should know across breadth and depth — from formal theory to systems to software engineering practice. A widely-shared framework for thinking about CS education and self-directed learning gaps.
Jeff Erickson's Algorithms Course Materials
Jeff Erickson's algorithms course materials from UIUC — lecture notes covering data structures, graph algorithms, dynamic programming, and computational geometry. Freely available and widely regarded as among the clearest algorithm teaching materials available online.
Delightful Puzzles
Gurmeet Manku's curated collection of mathematical and logic puzzles, many with elegant solutions that reveal deeper structure. A classic reference for interview preparation and recreational mathematics.
Aho/Ullman Foundations of Computer Science
The classic undergraduate CS foundations textbook by Alfred Aho and Jeffrey Ullman, freely available from Stanford. Covers data structures, algorithms, automata, and the mathematical foundations underpinning computer science as a discipline.
The True Power of Regular Expressions
Nikita Popov's deep dive into what regular expressions can theoretically do — connecting regex to finite automata and formal language theory. Goes beyond syntax tutorials to explain why backtracking regex engines can be exponentially slow, and how to avoid it.
What Does O(log n) Mean Exactly?
A Stack Overflow answer explaining O(log n) complexity with a highly upvoted intuitive explanation using binary search. The 'halving' intuition — each step eliminates half the remaining problem space — is the cleanest way to build the mental model.
Math ∩ Programming Primers
Jeremy Kun's Math ∩ Programming blog primers page — a growing collection of self-contained posts bridging undergraduate mathematics (linear algebra, group theory, topology, probability) and programming. The best resource for programmers who want mathematical depth without a full course sequence.
The 7 Books of a Highly Effective Programmer — Fogus
Fogus's 2009 list of seven books for making a highly effective programmer — a curated reading list weighted toward PL theory, Lisp, and computation fundamentals. Influential enough that it circulated on Hacker News for years after posting.
Algorithms — Dasgupta, Papadimitriou, Vazirani
The free PDF of 'Algorithms' by Dasgupta, Papadimitriou, and Vazirani — Berkeley's undergraduate algorithms textbook. Unusual for a CS textbook in being readable, mathematically rigorous, and freely available from the authors.
Software Development Final Exam Answers: Part 1
Colin Percival grades a software development final exam and finds most developers can recall what data structures do but not why they're useful in specific contexts — the gap between memorization and understanding. Average score: 15.2/25.
A Crash Course in Computer Science: Reading List
A curated crash course in computer science reading list from 2012 — the canonical texts someone with practical programming experience would read to get the theoretical foundations they missed. SICP, CLRS, Dragon Book, and peers.
Best Paper Awards Across CS Conferences
Jeff Huang's maintained list of best paper awards across 30+ top CS conferences (AAAI, ACL, CHI, SIGCOMM, etc.) — a curated entry point into landmark research across computer science sub-disciplines.
MIT 6.046: Introduction to Algorithms — Demaine Lecture 2
Erik Demaine's second lecture from MIT 6.046 (Introduction to Algorithms, Fall 2005) on videolectures.net. Demaine is one of the most celebrated algorithm teachers at MIT, and 6.046 covers divide-and-conquer, dynamic programming, and fundamental complexity results.
A Set of Top Computer Science Blogs (2012)
A curated list of top computer science blogs from 2012, covering theory, systems, programming languages, and applied CS. A snapshot of where the serious technical discussion was happening before Twitter/X fragmented the discourse.
