+
Elementary Algebra & Calculus
+
+ ✨ Paul's Online Math Notes free
+
+ Paul Dawkins
+
+ In terms of pure reach, these might be the most popular math text in the age of the internet... their SEO is, surprisingly, well-matched by their quality of writing. I have fond memories of these being the go-to guide in high school calculus, and they've served me well in a few of my university courses, too.
+
+
+ CLP Calculus free
+
+ University of British Columbia
+
+ These are put together by professors at the University of British Columbia for specifically the University of British Columbia's combined engineering-mathematics calculus classes. They're pretty standard, pretty good calculus textbooks with lots of practice problems.
+
+
+ OpenStax Mathematics free
+
+ Rice University
+
+
+ Calculus canonical dense
+
+ Michael Spivak
+
+ This is a rigorous treatment of calculus, suitable to a first year university course.
+
+
Introductory Proof
+
+ Book of Proof free
+
+ Richard Hammack
+
+
+ How to Prove It: A Structured Approach
+
+ Daniel J. Velleman
+
+
+ Mathematical Proofs: A Transition to Advanced Mathematics
+
+ Gary Chartrand, Albert D. Polimeni, Ping Zhang
+
+
+ PLP: An introduction to mathematical proof
+
+ University of British Columbia
+
+
Linear Algebra
+
+ Interactive Linear Algebra (UBC version) free
+
+ Georgia Tech
+
+ This textbook is rather fancy. It gives an excellent visual intuition for linear algebra by using interactive web animations to show transformations in 2D and 3D spaces. However, it does not cover terribly much: making no attempt to be rigorous or cover that not directly useful for engineering.
+
+
+ Finite-Dimensional Vector Spaces
+
+ Paul R. Halmos
+
+
+ Linear Algebra Done Right free
+
+ Sheldon Axler
+
+
+ Linear Algebra Done Wrong free
+
+ Sergei Treil
+
+
+ Linear Algebra
+
+ Kenneth Hoffman & Ray Kunze
+
+I do
not recommend Strang's linear algebra... out of spite, mostly
+
Abstract Algebra
+
+ 📖 Abstract Algebra
+
+ David S. Dummit & Richard M. Foote
+
+ This is as close to a canonical text for undergraduate algebra as it gets.
+
+
+ 📖 Algebra: Chapter 0
+
+ Paolo Aluffi
+
+ A category-theoretic approach to algebra. Possibly best fit for a second course.
+
+
+ Undergraduate Algebra
+
+ Serge Lang
+
+
+ Algebra dense
+
+ Serge Lang
+
+ This is a reference work and not suitable for a course in algebra on its own, in the reviewer's opinion. It presents clear propositions and proofs with few examples.
+
+
+ Algebra dense
+
+ Michael Artin
+
+ Abstract algebra with a distinct focus on how it relates to matrices. I have only briefly glanced at this text. It is perhaps notable that Lang (above) was Artin's student, and wrote his work with Artin's in mind.
+
+
+ An Introduction to the Theory of Groups
+
+ Joseph J. Rotman
+
+
Real Analysis
+
+ Analysis I
+
+ Terence Tao
+
+
+ Analysis II
+
+ Terence Tao
+
+
+ Principles of Mathematical Analysis canonical
+
+ Walter Rudin
+
+
Complex Analysis
+
+ Complex Analysis canonical dense
+
+ Lars Ahlfors
+
+
Measure Theory
+
+ Real Analysis: Modern Techniques and Their Applications
+
+ Gerald B. Folland
+
+
+ Real & Complex Analysis dense
+
+ Walter Rudin
+
+
+ An Introduction to Measure Theory free
+
+ Terence Tao
+
+
Number Theory
+
+ An Introduction to the Theory of Numbers canonical
+
+ G. H. Hardy & Edward M. Wright
+
+
+ An Introduction to the Theory of Numbers canonical
+
+ Ivan Niven, Herbert S. Zuckerman, Hugh L. Montgomery
+
+
Elliptic Curves
+
+ Rational Points on Elliptic Curves
+
+ Joseph H. Silverman & John T. Tate
+
+
+ The Arithmetic of Elliptic Curves
+
+ Joseph H. Silverman
+
+
+ Advanced Topics in the Arithmetic of Elliptic Curves
+
+ Joseph H. Silverman
+
+
Graph Theory
+
+ A Walk Through Combinatorics
+
+ Miklos Bona
+
+
+ Graph Theory canonical
+
+ Reinhard Diestel
+
+
Probability
+
+ No recommendations
+
+
Topology
+
+ Topology canonical
+
+ James R. Munkres
+
+
+ Algebraic Topology free
+
+ Allen Hatcher
+
+
Algebraic Geometry
+
+ Algebraic Geometry dense
+
+ Robin Hartshorne
+
+
Topos Theory
+
+ Sketches of an Elephant canonical dense
+
+ Peter Johnstone
+
+
+ Topoi: The Categorial Analysis of Logic free
+
+ Robert Goldblatt
+
+
+ Sheaves in Geometry and Logic
+
+ Saunders Mac Lane & Ieke Moerdijk
+
+
Category Theory
+
+ 📖 Basic Category Theory free
+
+ Tom Leinster
+
+
+ 📖 Category Theory
+
+ Steve Awodey
+
+
+ Categories for the Working Mathematician canonical
+
+ Saunders Mac Lane
+
+
+ Category Theory for Programmers free
+
+ Bartosz Milewski
+
+
Type Theory
+
+ ✨ Homotopy Type Theory free canonical
+
+ The Institute for Advanced Study
+
+
+
Introduction
+
+ 📕 How to Design Programs (HtDP) free canonical
+
+ Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
+
+ For those with no prior experience. An edX course is available.
+
+
+ Structure and Interpretation of Computer Programs (SICP, The Wizard Book) free
+
+ Harold Abelson, Gerard Jay Sussman, Julie Sussman
+
+ For those with some prior experience. A public course website is available.
+
+
+ Automate the Boring Stuff with Python free
+
+ Al Sweigart
+
+ For those who want to learn how to write scripts.
+
+
Compilers
+
+ 📖 Compilers: Principles, Techniques, and Tools (The Dragon Book) canonical
+
+ Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman
+
+
+ Programming Languages: Application and Interpretation (Second Edition) free
+
+ Shriram Krishnamurthi
+
+
Type Systems
+
+ ✨ Types and Programming Languages canonical
+
+ Benjamin C. Pierce
+
+
+ Advanced Topics in Types and Programming Languages
+
+ Benjamin C. Pierce
+
+
Formal Methods
+
+ Software Foundations (browser versions) free canonical
+
+ Assorted Authors
+
+
Networking
+
+ The TCP/IP Guide free
+
+ Charles M. Kozierok
+
+
+ Beej's Guide to Network Programming free
+
+ Beej
+
+
Algorithms
+
+ The Algorithm Design Manual, 3rd edition
+
+ Steven Skiena
+
+ A very modern text on algorithm design. It's comprehensive and charmingly written.
+
+
+ The Art of Computer Programming canonical
+
+ Donald Knuth
+
+
+ Introduction to Automata Theory, Languages, and Computation (The Cinderella Book)
+
+ John Hopcroft & Jeffrey Ullman
+
+
Operating Systems
+
+ Operating Systems Concepts (The Dinosaur Book)
+
+ Avi Silberschatz & James Peterson
+
+
Electronics
+
+ The Art of Electronics canonical
+
+ Paul Horowitz & Winfield Hill
+
+
Cryptography
+
+ 📖 Cryptopals Challenges free
+
+ NCC Group
+
+
+ Cryptohack Challenges free
+
+ hyperreality & jack
+
+
+ Introduction to Modern Cryptography canonical
+
+ Jonathan Katz & Yehuda Lindell
+
+
Software Engineering
+
+ Web Browser Engineering free
+
+ Pavel Panchekha & Chris Harrelson
+
+
+ Crafting Interpreters free
+
+ Robert Nystrom
+
+
Rust
+
+ 📕 The Rust Programming Language free canonical
+
+ Steve Klabnik & Carol Nichols
+
+
+ Rust for Rustaceans
+
+ Jon Gjenset
+
+
+ The Rustonomicon free
+
+ Aria Desires
+
+
+ Rust Atomics & Locks free
+
+ Mara Bos
+
+
Lean
+
+ 📖 Theorem Proving in Lean 4 free
+
+ Jeremy Avigad, Leonardo de Moura, Soonho Kong, Sebastian Ullrich
+
+
+ 📖 Functional Programming in Lean free
+
+ David Thrane Christiansen
+
+
Agda
+
+ 📖 Programming Language Foundations in Agda free
+
+ Philip Wadler, Wen Kokke, Jeremy G. Siek
+
+
HTMX
+
+ 📖 Hypermedia Systems free
+
+ Carson Gross, Adam Stepinski, Deniz AkÅŸimÅŸek
+
+
+
Semantics & Pragmatics
+
+ Analyzing Meaning free
+
+ Paul R. Kroeger
+
+
+ ✨ Invitation to Formal Semantics free canonical
+
+ Elizabeth Coppock & Lucas Champollion
+
+
+ Semantics in Generative Grammar canonical
+
+ Irene Heim & Angelika Kratzer
+
+
+ Intensional Semantics
+
+ Kai von Fintel & Irene Heim
+
+ The 2011 edition is standard. A newer edition is available on GitHub.
+
+
Syntax & Morphology
+
+ 📕 An Introduction to Syntactic Analysis and Theory
+
+ Dominique Sportiche, Hilda Koopman, Edward Stabler
+
+
+ Syntax: A Generative Introduction
+
+ Andrew Carnie
+
+ I do not recommend this book. It gets many small and large things wrong.
+
+
Computational Linguistics
+
+ Speech and Language Processing, Third Edition free canonical
+
+ Daniel Jurafsky & James H. Martin
+
+
Phonetics & Phonology
+
+ No recommendations
+
+