Curated resources for mathematics, physics, computer science enthusiasts. See Goodreads shelf, filesystem tree, tips and some related sites.
| Resource | Author(s) | Links |
|---|---|---|
| Learning How to Learn: How to Succeed in School Without Spending All Your Time Studying | Alistair McConville, Barbara Oakley, Terrence Sejnowski | |
| How to Study Math | Paul Dawkins | site |
| How to Solve It | George Pólya | |
| Art of Doing Science and Engineering: Learning to Learn | Richard Hamming, Bret Victor |
| Category | Resource | Author(s) | Links |
|---|---|---|---|
| Foundations | Project Mathematics | Tom M. Apostol | |
| Gateways to Mathematics | Herbert I. Gross | site | |
| The Joy Of X: A Guided Tour of Math, from One to Infinity | Steven Strogatz | ||
| Letters to a Young Mathematician | Ian Stewart | ||
| Introduction to Mathematical Thinking | Keith Devlin | ||
| How to Think Like a Mathematician: A Companion to Undergraduate Mathematics | Kevin Houston | ||
| Precalculus | Israel Gelfand | book video | |
| Elements of Mathematics: From Euclid to Gödel | John Stillwell | ||
| Mathematics and its History | John Stillwell | ||
| Calculus | Calculus Made Easy | Martin Gardner, Silvanus P. Thompson | |
| Calculus: An Intuitive and Physical Approach | Morris Kline | ||
| Infinite Powers: How Calculus Reveals the Secrets of the Universe | Steven Strogatz | ||
| Calculus with Analytic Geometry | George F. Simmons | video | |
| Calculus | Michael Spivak | ||
| Linear Algebra | Linear Algebra: Step by Step | Kuldeep Singh | |
| Linear Algebra Done Right | Sheldon Axler | ||
| Linear Algebra Problem Book | Paul Halmos | ||
| Finite-Dimensional Vector Spaces | Paul Halmos | ||
| Discrete Math & Probability | Discrete Mathematics and Its Applications | Kenneth H. Rosen | video |
| Introduction to Probability | Joseph K. Blitzstein, Jessica Hwang | video | |
| Principles and Techniques in Combinatorics | Chen Chuan-Chong, Koh Khee-Meng | ||
| Concrete Mathematics | Ronald Graham, Donald Knuth, Oren Patashnik | ||
| Proofs | Book of Proof | Richard Hammack | |
| Proofs from THE BOOK | Martin Aigner, Günter M. Ziegler | ||
| Problem Solving | Mathematical Circles: Russian Experience | Dmitri Fomin, Sergey Genkin, Ilia Itenberg | |
| The Art and Craft of Problem Solving | Paul Zeitz | ||
| General | The Princeton Companion to Mathematics | Timothy Gowers | |
| The Princeton Companion to Applied Mathematics | Nicholas J. Higham | ||
| Mathematics: Its Content, Methods and Meaning | Andrey N. Kolmogorov | ||
| What Is Mathematics? An Elementary Approach to Ideas and Methods | Richard Courant | ||
| Vector Calculus, Linear Algebra, and Differential Forms: A Unified Approach | Barbara Burke Hubbard, John H. Hubbard | ||
| An Infinitely Large Napkin | Evan Chen | book | |
| History | Mathematical Thought from Ancient to Modern Times | Morris Kline | |
| The Story of Proof: Logic and the History of Mathematics | John Stillwell | ||
| Non-Euclidean Geometry: A Critical and Historical Study of Its Development | Roberto Bonala |
| Category | Resource | Author(s) | Links |
|---|---|---|---|
| Foundations | Why Is It So? | Julius Sumner Miller | YouTube |
| Demonstrations in Physics | Julius Sumner Miller | YouTube | |
| The Mechanical Universe | David Goodstein | YouTube | |
| Conceptual Physics | Paul G. Hewitt | site | |
| Hewitt Drew It | Paul G. Hewitt | site | |
| Understanding Physics | Isaac Asimov | ||
| For the Love of Physics: From the End of the Rainbow to the Edge of Time - A Journey Through the Wonders of Physics | Walter Lewin | ||
| Teach Yourself Physics | Jakob Schwichtenberg | ||
| Advanced | Theoretical Minimum | Leonard Susskind | site |
| The Feynman Lectures on Physics | Richard Feynman, Robert B. Leighton, Matthew Sands | ||
| Course of Theoretical Physics | Evgeny Lifshitz, Lev Landau, Lev Pitaevskii, Vladimir Berestetskii | ||
| The Road to Reality: A Complete Guide to the Laws of the Universe | Roger Penrose |
| Category | Resource | Author(s) | Links |
|---|---|---|---|
| Foundations | Code: The Hidden Language of Computer Hardware and Software | Charles Petzold | |
| Computer Science: An Interdisciplinary Approach | Robert Sedgewick, Kevin Wayne | ||
| Elements of Modern Computer Systems | Noam Nisan, Shimon Schocken | ||
| Structure and Interpretation of Computer Programs | Harold Abelson, Gerald Jay Sussman | video | |
| Algorithms & Data Structures | Algorithms and Data Structures | Niklaus Wirth | |
| Introduction to Algorithms | Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein | video | |
| Theoretical CS | Introduction to Theoretical Computer Science | Boaz Barak | |
| Introduction to the Theory of Computation | Michael Sipser | video | |
| Computation: Finite and Infinite Machines | Marvin Minsky | ||
| Feynman Lectures on Computation | Richard P. Feynman | ||
| Information Theory | Information Theory: A Tutorial Introduction | James Stone | |
| Information Theory, Inference, and Learning Algorithms | David J.C. MacKay | ||
| Programming Languages & Compilers | Programming Language Pragmatics | Michael L. Scott | video |
| Compilers: Principles, Techniques, and Tools | Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman | video | |
| Systems Programming & Architecture | Computer Systems: A Programmer’s Perspective | Randal E. Bryant, David R. O’Hallaron | video |
| Operating Systems: Three Easy Pieces | Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau | video | |
| Computer Networks: A Systems Approach | Bruce S. David, Larry L. Peterson | video | |
| Project Oberon | Niklaus Wirth | ||
| Plan 9 | Bell Labs | ||
| Database | Database System Concepts | Henry F. Korth, Abraham Silberschatz S. Sudarshan | video |
| Distributed Systems & Scalability | Designing Data-Intensive Applications | Martin Kleppmann | |
| Distributed Systems | Maarten Van Steen, Andrew S. Tanenbaum | ||
| AI & ML | Artificial Intelligence: A Guide for Thinking Humans | Melanie Mitchell | |
| Artificial Intelligence: A Modern Approach | Peter Norvig, Stuart Russell | ||
| Deep Learning | Yoshua Bengio, Aaron Courville, Ian Goodfellow | ||
| Software Engineering & Career | Systematic Programming: An Introduction | Niklaus Wirth | |
| The Practice of Programming | Brian W. Kernighan, Rob Pike | ||
| The Pragmatic Programmer | Andrew Hunt, David Thomas | ||
| Programming Pearls | Jon Bentley | ||
| The PhD Grind | Philip Guo |
- "Mathematics reveals its secrets only to those who approach it with pure love, for its own beauty." — Archimedes
- "Mathematics is not about numbers, equations, computations, or algorithms: it is about understanding." — William Paul Thurston
- "What is mathematics? It is only a systematic effort of solving puzzles posed by nature." — Shakuntala Devi
- "The best way to learn anything is to discover it by yourself." — George Pólya
- "The only way to learn mathematics is to do mathematics." — Paul Halmos
- "If I had an hour to solve a problem I'd spend 55 minutes thinking about the problem and 5 minutes thinking about solutions." ― Albert Einstein
- "If you can't solve a problem, then there is an easier problem you can solve: find it." — George Pólya
- "A great discovery solves a great problem but there is a grain of discovery in the solution of any problem." — George Pólya
- "It is better to solve one problem five different ways, than to solve five problems one way." — George Pólya
- "The best way to learn is to teach." — Frank Oppenheimer
- "If I have seen further than others, it is by standing on the shoulders of giants." — Isaac Newton
- "An equation for me has no meaning, unless it expresses a thought of God." — Srinivasa Ramanujan
- Max Planck was told by his professor to not go into Physics because "almost everything is already discovered". Planck said he didn't want to discover anything, just learn the fundamentals. He went on to originate quantum theory and win a Nobel Prize.
- Much before he set sail for England, Ramanujan was considered a ‘genius’ by many of his friends and acquaintances. One evening a friend told Ramanujan so. Shocked probably at this statement from his friend, Ramanujan showed him his elbow. The friend was surprised at how black and coarse Ramanujan’s elbow appeared to be. Ramanujan replied that the elbow was black and coarse to make him a ‘genius’. Ramanujan used to work on his mathematics, day and night, on his black slate. To erase his slate, the search for a proper cloth appeared to be a hindrance to his work. So, he just used his elbow to erase his work and make room for new. If he has so much work to do, and has so little time, then why does he not use paper? The reason was he required about four reams of paper every month. At that time, it was struggle for his family to even feed all their members, how could they afford that much paper? This was in 1912. This incident is not only an episode to illustrate the trials and tribulations of Ramanujan’s life, but also a reminder of what it really takes to make someone a ‘genius’.
Read the works of Alan Kay, Brian Kernighan, Donald Knuth, Edward Dijkstra, Niklaus Wirth, Tony Hoare etc.
If you find this resource useful, consider supporting Internet Archive.
All content is provided for educational purposes only. If you have any concerns about copyright infringement, please get in touch with me at nishant dot varma at gmail dot com.