The following list goes beyond the essential/required reading that is part of this degree. The essential reading for each module, if available, can be found by visiting the relevant page in this repository from the list of modules (opens on GitHub).
Table of contents
- Table of contents
- Awesome Lists
- Computer Science
- Data Science
- Free Open Textbooks
- Interviews
- Learning
- Mathematics
- Programming
- UX/UI Design
Awesome Lists
- Free Programming Books (GitHub awesome list) - “[…] administered by the Free Ebook Foundation, a not-for-profit organization devoted to promoting the creation, distribution, archiving and sustainability of free ebooks.”
- Awesome Programming Books - “A curated list of awesome programming books.”
Computer Science
- How To Think Like A Computer Scientist With Python 3, by Elkner, Wentworth, Downey, and Myers - “An introduction to numerous useful features of a modern programming language and to basic object oriented programming, using Python 3 as the vehicle of choice”
- Structure and Interpretation of Computer Programs, by Harold Abelson, Gerald Jay Sussman and Julie Sussman (2nd edition) - “An excellent computer science text used in introductory courses at MIT. So called because of the wizard on the jacket. One of the bibles of the LISP/Scheme world. Also, less commonly, known as the Purple Book.”
Algorithms
- Algorithms to Live by: The Computer Science of Human Decisions - “[…] show how algorithms developed for computers also untangle very human questions. They explain how to have better hunches and when to leave things to chance, how to deal with overwhelming choices and how best to connect with others. From finding a spouse to finding a parking spot, from organizing one’s inbox to peering into the future, Algorithms to Live By transforms the wisdom of computer science into strategies for human living.”
- Grokking Algorithms: An illustrated guide for programmers and other curious people - “Grokking Algorithms is a fully illustrated, friendly guide that teaches you how to apply common algorithms to the practical problems you face every day as a programmer. You’ll start with sorting and searching and, as you build up your skills in thinking algorithmically, you’ll tackle more complex concerns such as data compression and artificial intelligence. Each carefully presented example includes helpful diagrams and fully annotated code samples in Python.”
- Hello World: Being Human in the Age of Algorithms - “Hello World is indispensable preparation for the moral quandaries of a world run by code, and with the unfailingly entertaining Hannah Fry as our guide, we’ll be discussing these issues long after the last page is turned.” (from Goodreads)
- Problem Solving 101: A Simple Book for Smart People - “Watanabe uses sample scenarios to illustrate his techniques, which include logic trees and matrixes. A rock band figures out how to drive up concert attendance. An aspiring animator budgets for a new computer purchase. Students decide which high school they will attend. Illustrated with diagrams and quirky drawings, the book is simple enough for a middleschooler to understand but sophisticated enough for business leaders to apply to their most challenging problems.” (from Goodreads)
Data Science
- How To Think Like A Data Scientist - “An introduction to data science in the form of an interactive online book.”
Free Open Textbooks
- Electronic References - Colin S. Gordon - “[…] a loosely-categorized collection of links to CS textbooks in a variety of areas that are freely available online.”
- Open Textbook Library - “Make a difference in your students’ lives with free, openly-licensed textbooks.”
- OpenStax - “Peer-reviewed. Openly licensed. 100% free.”
Interviews
- Cracking the Coding Interview, by Gayle Laakmann McDowell.
Learning
- Make It Stick: The Science of Successful Learning - “To most of us, learning something “the hard way” implies wasted time and effort. Good teaching, we believe, should be creatively tailored to the different learning styles of students and should use strategies that make learning easier. Make It Stick turns fashionable ideas like these on their head. Drawing on recent discoveries in cognitive psychology and other disciplines, the authors offer concrete techniques for becoming more productive learners.”
- Ultralearning: Master Hard Skills, Outsmart the Competition, and Accelerate Your Career - “Learn a new talent, stay relevant, reinvent yourself, and adapt to whatever the workplace throws your way. Ultralearning offers nine principles to master hard skills quickly. This is the essential guide to future-proof your career and maximize your competitive advantage through self-education.”
Mathematics
- Mathematics for Machine Learning - “We wrote a book on Mathematics for Machine Learning that motivates people to learn mathematical concepts. The book is not intended to cover advanced machine learning techniques because there are already plenty of books doing this. Instead, we aim to provide the necessary mathematical skills to read those other books.”
- Nix The Tricks, by Tina Cardone and the online math community known as the MTBoS - “This book is filled with alternatives to the shortcuts so prevalent in mathematics education and explains exactly why the tricks are so bad for understanding math.”
- The Beauty of Mathematics in Computer Science - “[…] explains the mathematical fundamentals of information technology products and services we use every day, from Google Web Search to GPS Navigation, and from speech recognition to CDMA mobile services.”
Calculus
- Calculus 1 - “Calculus is designed for the typical two- or three-semester general calculus course, incorporating innovative features to enhance student learning. The book guides students through the core concepts of calculus and helps them understand how those concepts apply to their lives and the world around them. Due to the comprehensive nature of the material, we are offering the book in three volumes for flexibility and efficiency. Volume 1 covers functions, limits, derivatives, and integration.”
- Calculus 2 - “Calculus is designed for the typical two- or three-semester general calculus course, incorporating innovative features to enhance student learning. The book guides students through the core concepts of calculus and helps them understand how those concepts apply to their lives and the world around them. Due to the comprehensive nature of the material, we are offering the book in three volumes for flexibility and efficiency. Volume 2 covers integration, differential equations, sequences and series, and parametric equations and polar coordinates.”
- Calculus 3 - “Calculus is designed for the typical two- or three-semester general calculus course, incorporating innovative features to enhance student learning. The book guides students through the core concepts of calculus and helps them understand how those concepts apply to their lives and the world around them. Due to the comprehensive nature of the material, we are offering the book in three volumes for flexibility and efficiency. Volume 3 covers parametric equations and polar coordinates, vectors, functions of several variables, multiple integration, and second-order differential equations.”
- Calculus Made Easy, by Silvanus Thompson - “Being a very-simplest introduction to those beautiful methods which are generally called by the terrifying names of the Differentia.”
Discrete Mathematics
- Discrete Mathematics - An Open Introduction, by Oscar Levin - “Discrete Mathematics: An Open Introduction is a free, open source textbook appropriate for a first or second year undergraduate course for math majors, especially those who will go on to teach.”
- How to Solve It - A New Aspect of Mathematical Method, by G. Polya (PDF file)
Linear Algebra
- Linear Algebra Done Right, by Sheldon Axler - “The text focuses on the central goal of linear algebra: understanding the structure of linear operators on finite-dimensional vector spaces.”
Number Theory and Algebra
- A Computational Introduction to Number Theory and Algebra, by Victor Shoup - ” My goal in writing this bookwas to provide an introduction to number theory and algebra, with an emphasis on algorithms and applications, that would be accessible to a broad audience. In particular, I wanted to write a book that would be appropriate for typical students in computer science or mathematics who have some amount of general mathematical experience, but without presuming too much specific mathematical knowledge.”
Statistics
- Introductory Business Statistics - “Introductory Business Statistics is designed to meet the scope and sequence requirements of the one-semester statistics course for business, economics, and related majors. Core statistical concepts and skills have been augmented with practical business examples, scenarios, and exercises. The result is a meaningful understanding of the discipline, which will serve students in their business careers and real-world experiences.”
Programming
- Programming Notes for Professionals books - Wide range of relevant topics (algorithms, C++, CSS, Git, HTML5, JavaScript, LaTeX, Linux, Python, SQL, etc.). “Books are updated weekly.”
Assembly
- Assembly Language for x86 Processors, Global Edition - “Assembly Language for x86 Processors, 7e is suitable for undergraduate courses in assembly language programming and introductory courses in computer systems and computer architecture. Proficiency in one other programming language, preferably Java, C, or C++, is recommended.”
Games
- Game Engine Black Books - “It is a very deep insight on how id software developed the game engine that run Wolfenstein 3D and it is complete with code fragments with very detailed descriptions, down to the VGA programming and the assembly code that draws the screen during the game. Mindblowing!” (from David Della Rossa, student in this degree)
UX/UI Design
- Actionable Gamification - “Gamification Pioneer Yu-kai Chou takes readers on a journey to learn his sixteen years of obsessive research in creating the Octalysis Framework, and how to apply the framework to create engaging and successful experiences in their product, workplace, marketing, and personal lives.” (from Amazon)