BY SUBJECT
This list, organized by subject, is for books that cover a programming-related subject in a programming-language agnostic way.
Books that cover a specific programming language can be found in the BY PROGRAMMING LANGUAGE list.
Index
-
atariarchives.org atariarchives.org makes books, information, and software for Atari and other classic computers available on the Web.
- Bento
- Bitsavers.org
-
Code Catalog: A Collection of Code Examples from Prominent Open Source Projects (HTML)
- conceptf1.blogspot.com
- Free Smalltalk Books, collected by Stéphane Ducasse
- Free Tech Books
-
Goalkicker - Programming Notes for Professionals books
- IBM Redbooks
- InfoQ Minibooks
- InTech: Computer and Information Science
- JSBooks - directory of free javascript ebooks
- Learn X in Y minutes
- Learneroo Resources to Learn Programming
- Microsoft Guides to Software
- Microsoft Press: Free E-Books
- Microsoft Technologies 1, including books on Windows Azure, SharePoint, Visual Studio Guide, Windows phone development, ASP.net, Office365, etc. collection by Eric Ligman
- Microsoft Technologies 2, including books on Windows Azure, SharePoint, Visual Studio Guide, Windows phone development, ASP.net, etc. collection by Eric Ligman
-
Microsoft Technologies 3, DevOps for ASP.NET Core Developers - Cam Soper, Scott Addie, Colin Dembovsky (PDF)
- O’Reilly’s Open Books Project
- Papers we love
-
Programming - Wikibooks
- Red Gate Books
- Rip Tutorials
- Stef’s Free Online Smalltalk Books
- TechBeamers.com
- TechBooksForFree.com
- The Definitive C++ Book Guide and List
- Theassayer.org
- Tutorials Point
Algorithms & Data Structures
-
A Field Guide To Genetic Programming - Riccardo Poli, et al. (PDF)
-
Algorithm Design - Jon Kleinberg, Éva Tardos (PDF)
-
Algorithmic Graph Theory - David Joyner, Minh Van Nguyen, David Phillips (PDF)
-
Algorithms - Wikibooks
-
Algorithms, 4th Edition - Robert Sedgewick, Kevin Wayne
-
Algorithms and Automatic Computing Machines (1963) - B. A. Trakhtenbrot
-
Algorithms and Complexity - Herbert S. Wilf (PDF)
-
Algorithms Course Materials - Jeff Erickson
-
Algorithms Notes for Professionals - Compiled from StackOverflow Documentation (PDF)
-
Analysis and Design of Algorithms - Sandeep Sen, IIT Delhi
-
Animated Algorithm and Data Structure Visualization (Resource)
-
Annotated Algorithms in Python: Applications in Physics, Biology, and Finance - Massimo di Pierro
-
Binary Trees (PDF)
-
Data Structures - Aditya CSE (PDF)
-
Data Structures - Wikibooks
-
Data Structures - Prof. Subhashis Banerjee, IIT Delhi
-
Data Structures (Into Java) - Paul N. Hilfinger (PDF)
-
Data Structures and Algorithms: Annotated Reference with Examples - G. Barnett, L. Del Tongo (PDF)
-
Data Structures and Algorithms Tutorial - Tutorials Point (HTML, PDF)
-
Data Structures Succinctly Part 1, Syncfusion (PDF, Kindle) (email address requested, not required)
-
Data Structures Succinctly Part 2, Syncfusion (PDF, Kindle) (email address requested, not required)
-
Elementary Algorithms - Larry LIU Xinyu
-
Essential Algorithms - Krzysztof Kowalczyk and Stack Overflow Documentation project (HTML)
-
Foundations of Computer Science - Al Aho, Jeff Ullman
-
Geometry Algorithms - Dan Sunday
-
Lectures Notes on Algorithm Analysis and Computational Complexity (Fourth Edition) - Ian Parberry (use form at bottom of license)
-
LEDA: A Platform for Combinatorial and Geometric Computing - K. Mehlhorn, et al. (HTML)
-
Linked List Basics - Nick Parlante (PDF)
-
Linked List Problems - Nick Parlante (PDF)
-
Matters Computational: Ideas, Algorithms, Source Code (PDF)
-
Open Data Structures: An Introduction - Pat Morin
- Planning Algorithms
-
Problems on Algorithms (Second Edition) - Ian Parberry (use form at bottom of license)
-
Purely Functional Data Structures (1996) - Chris Okasaki (PDF) ( archived)
-
Sequential and parallel sorting algorithms (HTML)
-
Text Algorithms (PDF)
-
The Algorithm Design Manual - Steven S. Skiena (HTML)
-
The Design of Approximation Algorithms - David P. Williamson, David B. Shmoys (PDF)
-
The Great Tree List Recursion Problem - Nick Parlante (PDF)
-
The Kademlia Protocol Succinctly - Marc Clifton
-
Think Complexity - Allen B. Downey (2nd Edition) (PDF, HTML)
Artificial Intelligence
-
Artificial Intelligence for a Better Future: An Ecosystem Perspective on the Ethics of AI and Emerging Digital Technologies - Bernd Carsten Stahl (PDF)
-
Artificial Intelligence: Foundations of Computational Agents (2010), 1st Edition - David L. Poole, Alan K. Mackworth @ Cambridge University Press (HTML)
-
Artificial Intelligence: Foundations of Computational Agents (2017), 2nd Edition - David L. Poole, Alan K. Mackworth @ Cambridge University Press (HTML, Slides)
-
Getting Started with Artificial Intelligence , 2nd Edition - Tom Markiewicz, Josh Zheng (PDF)
-
Graph Representational Learning Book - William L. Hamilton (HTML, PDF)
-
Introduction to Autonomous Robots - Nikolaus Correll (PDF)
-
Machine Learning For Dummies®, IBM Limited Edition - Daniel Kirsch, Judith Hurwitz (PDF)
-
On the Path to AI: Law’s prophecies and the conceptual foundations of the machine learning age - Thomas D. Grant, Damon J. Wischik (PDF)
-
Probabilistic Programming & Bayesian Methods for Hackers - Cam Davidson-Pilon (HTML, Jupyter Notebook)
-
The History of Artificial Intelligence - Chris Smith, Brian McGuire, Ting Huang, Gary Yang (PDF)
-
The Quest for Artificial Intelligence: A History of Ideas and Achievements - Nils J. Nilsson (PDF)
Blockchain
-
Bitcoin and Cryptocurrency Technologies - Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller, Steven Goldfeder, Jeremy Clark (PDF)
-
Blockchain for Dummies, 2nd IBM Limited Edition - Manav Gupta (PDF)
-
chain.courses - James Gan, Rishub Kumar
-
Getting Started with Enterprise Blockchain: A Guide to Design and Development - Michael Bradley, David Gorman, Matt Lucas, Matthew Golby-Kirk (PDF)
-
Grokking Bitcoin - Kalle Rosenbaum (HTML)
-
IBM Blockchain: The Founder’s Handbook, Third Edition - Antonio Banda, Matthew Hamilton, Eileen Lowry, John Widdifield, et al. (PDF)
-
Learning Bitcoin from the Command Line - Christopher Allen, Shannon Appelcline, et al. (HTML)
-
Mastering Bitcoin - Unlocking digital currencies (2017), 2nd Edition - Andreas M. Antonopoulos (AsciiDoc)
-
Mastering Ethereum (2018), 1st Edition - Andreas M. Antonopoulos, Gavin Wood (AsciiDoc)
-
Mastering the Lightning Network - Andreas M. Antonopoulos, Olaoluwa Osuntokun, Rene Pickhardt (AsciiDoc)
-
Playtime with Hyperledger Composer - Shubham Chadokar (PDF)
Cellular Automata
Cloud Computing
-
AWS Well-Architected Framework (PDF, HTML)
-
Azure for Architects, Third Edition (PDF) (email address or account required)
-
Azure Functions Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
-
Building Serverless Applications with Google Cloud Run - Wietse Venema (PDF) (email address requested, not required)
-
Cloud Computing for Science and Engineering - Ian Foster, Dennis B. Gannon ( in process)
- Cloud Design Patterns
-
Designing Distributed Systems (account required)
-
Distributed Systems 3rd edition - Maarten van Steen, Andrew S. Tanenbaum (email address required)
-
How to optimize storage costs using Amazon S3 - AWS (PDF)
-
Kubernetes Hardening Guidance - NSA, CISA (PDF)
-
Learn Azure in a Month of Lunches - Iain Foulds (PDF)
-
Monitoring Modern Infrastructure (account required)
- Multi-tenant Applications for the Cloud, 3rd Edition
- OpenStack Operations Guide
-
Streamline microservice management with Istio Service Mesh (account required)
- The Developer’s Guide to Azure
Competitive Programming
Compiler Design
-
An Introduction to GCC - Brian Gough
-
Basics of Compiler Design (Anniversary Edition) - Torben Mogensen
-
Compiler Design in C (1990) - Allen Holub, Prentice Hall (PDF)
-
Compiler Design: Theory, Tools, and Examples, C/C++ Edition - Seth D. Bergmann (PDF)
-
Compiler Design: Theory, Tools, and Examples, Java Edition - Seth D. Bergmann (PDF)
-
Compiling Scala for the Java Virtual Machine - Michel Schinz (PDF)
-
Compiling Techniques (1969) - F.R.A. Hopgood, Macdonald
-
Crafting Interpreters - Bob Nystrom (HTML)
-
EXPL NITC: Build your own Compiler - Murali Krishnan K., students in the Department of Computer Science and Engineering of the Calicut National Institute of Technology (HTML)
-
Implementing Functional Languages: A Tutorial - Simon Peyton Jones, David Lester
-
Introduction to Compilers and Language Design - Douglas Thain (PDF)
-
Let’s Build a Compiler (PDF)
-
Practical and Theoretical Aspects of Compiler Construction (class lectures and slides)
- The ANTLR Mega Tutorial
Computer Organization and Architecture
Computer Science
Computer Vision
Containers
-
CI/CD for Monorepos: Effectively building, testing, and deploying code with monorepos - Pablo Tomas Fernandez Zavalia, Marko Anastasov, SemaphoreCI (PDF, EPUB, Kindle)
-
CI/CD with Docker and Kubernetes Book - Marko Anastasov, Jérôme Petazzoni, Pablo Tom F. Zavalia, SemaphoreCI (PDF, EPUB, Kindle)
-
Docker Jumpstart - Andrew Odewahn
-
Docker Tutorial - Tutorials Point (HTML, PDF)
-
Kubernetes Deployment & Security Patterns - Alex Williams (PDF)
-
Kubernetes for Full-Stack Developers - Jamon Camisso, Hanif Jetha, Katherine Juell (PDF, EPUB)
-
Uncomplicating Kubernetes - Jeferson Fernando
Data Science
-
A Programmer’s Guide to Data Mining - Ron Zacharski (Draft)
-
Data Jujitsu: The Art of Turning Data into Product (email address requested, not required)
-
Data Mining Algorithms In R - Wikibooks
-
Data Science at the Command Line - Jeroen Janssens
-
Elements of Data Science - Allen B. Downey
-
Foundations of Data Science - Avrim Blum, John Hopcroft, Ravindran Kannan (PDF)
-
Fundamentals of Data Visualization - Claus O. Wilke (HTML)
-
Hands-On Data Visualization - Jack Dougherty, Ilya Ilyankou (HTML)
-
High-Dimensional Data Analysis with Low-Dimensional Models: Principles, Computation, and Applications - John Wright, Yi Ma (PDF)
-
Internet Advertising: An Interplay among Advertisers, Online Publishers, Ad Exchanges and Web Users (PDF)
-
Introduction to Data Science - Jeffrey Stanton
-
Mining of Massive Datasets - Jure Leskovec, Anand Rajaraman, Jeffrey D. Ullman (PDF)
-
Probability and Statistics with Examples using R - Siva Athreya, Deepayan Sarkar, Steve Tanner (HTML) ( in process)
- School of Data Handbook
-
Statistical inference for data science - Brian Caffo
-
The Ultimate Guide to 12 Dimensionality Reduction Techniques (with Python codes) - Pulkit Sharma
- Theory and Applications for Advanced Text Mining
Database
-
Database Design – 2nd Edition - Adrienne Watt, Nelson Eng @ BCcampus Open Pressbooks (HTML, PDF, EPUB, Kindle)
-
Database Design Succinctly - Joseph D. Booth (HTML, PDF, EPUB, MOBI)
-
Database Explorations - C.J. Date, Hugh Darwen (PDF)
-
Database Fundamentals - Neeraj Sharma et al. (PDF)
-
Database Management Systems Solutions Manual Third Edition - Raghu Ramakrishnan, Johannes Gehrke, Jeff Derstadt, Scott Selikof, and Lin Zhu (PDF)
-
Databases, Types, and The Relational Model: The Third Manifesto - C.J. Date, Hugh Darwen (PDF)
- Foundations of Databases
- Readings in Database Systems, 5th Ed.
-
Temporal Database Management - Christian S. Jensen
- The Theory of Relational Databases
Game Development
Graphics Programming
Graphical User Interfaces
IDE and editors
See also … Emacs Lisp, Regular Expressions
Licensing
Machine Learning
-
A Brief Introduction to Machine Learning for Engineers - Osvaldo Simeone (PDF)
- A Brief Introduction to Neural Networks
-
A Comprehensive Guide to Machine Learning - Soroush Nasiriany, Garrett Thomas, William Wang, Alex Yang (PDF)
-
A Course in Machine Learning (PDF)
-
A First Encounter with Machine Learning - Max Welling (PDF) ( archived)
-
A Selective Overview of Deep Learning - Fan, Ma, Zhong (PDF)
-
Algorithms for Reinforcement Learning - Csaba Szepesvári (PDF)
-
An Introduction to Statistical Learning - Gareth James, Daniela Witten, Trevor Hastie, Robert Tibshirani (PDF)
-
Approaching Almost Any Machine Learning Problem - Abhishek Thakur (PDF)
- Bayesian Reasoning and Machine Learning
-
Deep Learning - Ian Goodfellow, Yoshua Bengio, Aaron Courville
-
Deep Learning for Coders with Fastai and PyTorch - Jeremy Howard, Sylvain Gugger (Jupyter Notebooks)
- Dive into Deep Learning
-
Explorations in Parallel Distributed Processing: A Handbook of Models, Programs, and Exercises - James L. McClelland
-
Foundations of Machine Learning, Second Edition - Mehryar Mohri, Afshin Rostamizadeh, Ameet Talwalkar
-
Free and Open Machine Learning - Maikel Mardjan (HTML)
-
Gaussian Processes for Machine Learning - Carl Edward Rasmussen, Christopher K.I. Williams
-
IBM Machine Learning for Dummies - Judith Hurwitz, Daniel Kirsch
-
Information Theory, Inference, and Learning Algorithms - David J.C. MacKay
-
Interpretable Machine Learning - Christoph Molnar
-
Introduction to CNTK Succinctly - James McCaffrey
-
Introduction to Machine Learning - Amnon Shashua
-
Keras Succinctly - James McCaffrey
-
Learn Tensorflow - Jupyter Notebooks
-
Learning Deep Architectures for AI - Yoshua Bengio (PDF)
- Machine Learning
-
Machine Learning for Beginners - Microsoft
-
Machine Learning for Data Streams - Albert Bifet, Ricard Gavaldà, Geoff Holmes, Bernhard Pfahringer
-
Machine Learning from Scratch - Danny Friedman (HTML, PDF, Jupyter Book)
-
Machine Learning, Neural and Statistical Classification - D. Michie, D.J. Spiegelhalter, C.C. Taylor
-
Machine Learning Simplified - Andrew Wolf
-
Machine Learning with Python - Tutorials Point (HTML, PDF)
-
Mathematics for Machine Learning - Garrett Thomas (PDF)
-
Mathematics for Machine Learning - Marc Peter Deisenroth, A Aldo Faisal, Cheng Soon Ong
- Neural Networks and Deep Learning
-
Practitioners guide to MLOps - Khalid Samala, Jarek Kazmierczak, Donna Schut (PDF)
-
Probabilistic Machine Learning - An Introduction - Kevin P. Murphy (PDF)
-
Probabilistic Models in the Study of Language (Draft, with R code)
-
Python Machine Learning Projects - Lisa Tagliaferri, Brian Boucheron, Michelle Morales, Ellie Birkbeck, Alvin Wan (PDF, EPUB, Kindle)
-
Reinforcement Learning: An Introduction - Richard S. Sutton, Andrew G. Barto (PDF)
-
Speech and Language Processing (3rd Edition Draft) - Daniel Jurafsky, James H. Martin (PDF)
-
The Elements of Statistical Learning - Trevor Hastie, Robert Tibshirani, and Jerome Friedman
-
The LION Way: Machine Learning plus Intelligent Optimization - Roberto Battiti, Mauro Brunato (PDF)
-
The Mechanics of Machine Learning - Terence Parr, Jeremy Howard
-
The Python Game Book - Horst Jens ( archived)
-
Top 10 Machine Learning Algorithms Every Engineer Should Know - Binny Mathews, Omair Aasim
-
Understanding Machine Learning: From Theory to Algorithms - Shai Shalev-Shwartz, Shai Ben-David
Mathematics
-
A Computational Introduction to Number Theory and Algebra - Victor Shoup
-
A Computational Logic (1979) - Robert S. Boyer, J Strother Moore (PDF)
-
A First Course in Complex Analysis - Matthias Beck, Gerald Marchesi, Dennis Pixton, Lucas Sabalka
-
A First Course in Linear Algebra - Rob Beezer
-
A Friendly Introduction to Mathematical Logic - Christopher C. Leary, Lars Kristiansen
-
A Gentle Introduction to the Art of Mathematics - Joseph E. Fields
-
A Programmer’s Introduction to Mathematics - Jeremy Kun
-
Abstract Algebra: Theory and Applications - Tom Judson
-
Active Calculus - Matt Boelkins
-
Advanced Algebra - Anthony W. Knapp (PDF)
-
Algebra: Abstract and Concrete - Frederick Goodman
-
Algebra: An Elementary Text-Book, Part I (1904) - G. Chrystal (PDF)
-
Algebra: An Elementary Text-Book, Part II (1900) - G. Chrystal (PDF)
-
Algebraic Topology - Allen Hatcher (PDF)
-
An Infinite Descent into Pure Mathematics - Clive Newstead (PDF)
-
An Introduction to the Theory of Numbers - Leo Moser (PDF)
-
Analytic Geometry (1922) - Lewis Parker Siceloff, George Wentworth, David Eugene Smith (PDF)
-
APEX Calculus - Gregory Hartman, Brian Heinold, Troy Siemers, and Dimplekumar Chalishajar
-
Applied Combinatorics - Mitchel T. Keller, William T. Trotter
-
Applied Discrete Structures - Alan Doerr, Kenneth Levasseur
-
Basic Algebra - Anthony W. Knapp (PDF)
-
Basic Analysis: Introduction to Real Analysis - Jiří Lebl
-
Basics of Algebra, Topology, and Differential Calculus (PDF)
-
Bayesian Methods for Hackers - Cameron Davidson-Pilon
-
Beginning and Intermediate Algebra - Tyler Wallace
-
Book of Proof - Richard Hammack (PDF)
-
Calculus - Gilbert Strang
-
Calculus I - Jerrold E. Marsden, Alan Weinstein
-
Calculus in Context - James Callahan
-
Calculus Made Easy - Silvanus P. Thompson (PDF)
-
Calculus Volume 1 - Edwin Herman, Gilbert Strang (PDF)
-
Calculus Volume 2 - Edwin Herman, Gilbert Strang (PDF)
-
Calculus Volume 3 - Edwin Herman, Gilbert Strang (PDF)
-
Category Theory for the Sciences - David I. Spivak (PDF)
- CK-12 Probability and Statistics - Advanced
-
CLP-1 Differential Calculus - Joel Feldman, Andrew Rechnitzer, Elyse Yeager
-
CLP-2 Integral Calculus - Joel Feldman, Andrew Rechnitzer, Elyse Yeager
-
CLP-3 Multivariable Calculus - Joel Feldman, Andrew Rechnitzer, Elyse Yeager
-
CLP-4 Vector Calculus - Joel Feldman, Andrew Rechnitzer, Elyse Yeager
- Collaborative Statistics
-
College Trigonometry - Carl Stitz, Jeff Zeager (PDF)
-
Combinatorics Through Guided Discovery - Kenneth Bogart
-
Complex Analysis - George Cain
-
Computational and Inferential Thinking. The Foundations of Data Science - Ani Adhikari, John DeNero, David Wagner
- Computational Geometry
-
Computational Mathematics with SageMath - Paul Zimmermann, Alexandre Casamayou, Nathann Cohen, Guillaume Connan, et al. (PDF)
- Concepts & Applications of Inferential Statistics
-
Convex Optimization - Stephen Boyd, Lieven Vandenberghe
-
Coordinate Geometry (1911) - Henry Buchard Fine, Henry Dallas Thompson (PDF)
-
Differential Equations - Paul Dawkins (PDF, use download menu to download)
-
Differential Equations (1922) - H. B. Phillips (PDF)
-
Discrete Mathematics: An Open Introduction - Oscar Levin
-
Discrete Mathematics: First and Second Course - Edward A. Bender, S. Gill Williamson
-
Elementary Differential Equations - William F. Trench (PDF)
-
Elementary Differential Equations (with Boundary Value Problems) - William F. Trench
-
Elementary Number Theory: Primes, Congruences, and Secrets - William Stein
-
Elementary Real Analysis - Brian S. Thomson, Judith B. Bruckner, Andrew M. Bruckner
-
Elements of Abstract and Linear Algebra - E. H. Connell
-
Elements of Differential and Integral Calculus (1911) - William Anthony Granville (PDF)
-
Essentials of Metaheuristics - Sean Luke
-
First Course in Algebra (1910) - Herbert E. Hawkes, William A. Luby, Frank C. Touton (PDF)
-
Foundations of Combinatorics with Applications - Edward A. Bender, S. Gill Williamson
-
Foundations of Constructive Probability Theory - Yuen-Kwok Chan (PDF)
-
Geometry with an Introduction to Cosmic Topology - Michael P. Hitchman
- Graph Theory
-
How We Got from There to Here: A Story of Real Analysis - Robert Rogers, Eugene Boman
-
Introduction to Modern Statistics - Mine Çetinkaya-Rundel, Johanna Hardin (HTML, PDF) (email address required for PDF)
-
Introduction to Probability - Charles M. Grinstead, J. Laurie Snell (PDF)
- Introduction to Probability and Statistics Spring 2014
-
Introduction to Proofs - Jim Hefferon
-
Introduction to Real Analysis - William F. Trench
-
Introduction to Statistical Thought - Michael Lavine
-
Introductory Statistics for the Life and Biomedical Sciences - Julie Vu, David Harrington
- Kalman and Bayesian Filters in Python
-
Knapsack Problems - Algorithms and Computer Implementations - Silvano Martello, Paolo Toth
-
Lecture Notes of Linear Algebra - Dr. P. Shunmugaraj, IIT Kanpur (PDF)
-
Lecture Notes on Linear Algebra - Dr. Arbind K Lal, Sukant Pati (PDF) ( in process)
-
Lies, Damned Lies, or Statistics: How to Tell the Truth with Statistics - Jonathan A. Poritz (PDF)
-
Linear Algebra - David Cherney et al. (PDF)
-
Linear Algebra - Jim Hefferon
-
Linear Algebra Done Wrong - Sergei Treil
-
Linear Algebra, Infinite Dimensions, and Maple - James Herod
-
Linear Methods of Applied Mathematics - Evans M. Harrell II, James V. Herod
-
Magic Squares and Cubes (1917) - W. S. Anderson (PDF)
-
Math in Society - David Lippman
-
Mathematical Analysis I - Elias Zakon
-
Mathematical Discovery - Andrew M. Bruckner, Brian S. Thomson, Judith B. Bruckner
-
Mathematical Logic - an Introduction (PDF)
-
Mathematical Reasoning: Writing and Proof - Ted Sundstrom
-
Mathematics, MTH101A - P. Shunmugaraj, IIT Kanpur
-
Modern Statistics for Modern Biology - Susan Holmes, Wolfgang Huber
-
Multivariable Calculus - George Cain, James Herod
-
Non-Uniform Random Variate Generation - Luc Devroye (PDF)
-
Notes on Diffy Qs - Jiří Lebl
-
Number Theory - Holden Lee MIT
-
Number Theory: In Context and Interactive - Karl-Dieter Crisman (HTML, PDF)
-
Odds and Ends: Introducing Probability & Decision with a Visual Emphasis - Jonathan Weisberg
-
Online Statistics Education - David Lane
-
OpenIntro Statistics - David M. Diez, Christopher D. Barr, Mine Çetinkaya-Rundel
-
ORCCA: Open Resources for Community College Algebra - Portland Community College
-
Ordinary Differential Equations - Wikibooks
-
Paul’s Online Notes: Algebra, Calculus I-III and Differential Equations - Paul Dawkins @ Lamar University
-
Plane Geometry (1913) - George Wentworth, David Eugene Smith (PDF)
-
Planes and Spherical Trigonometry (1915) - George Wentworth, David Eugene Smith (PDF)
-
Precalculus - Carl Stitz, Jeff Zeager (PDF)
- Probability and Statistics Cookbook
- Probability and Statistics EBook
-
Probability: Lectures and Labs - Mark Huber
-
Recreations in Math - H. E. Licks (PDF)
-
Sage for Undergraduates - Gregory Bard
-
Second Course in Algebra - Herbert E. Hawkes, William A. Luby, Frank C. Touton (PDF)
-
Seven Sketches in Compositionality: An Invitation to Applied Category Theory - Brendan Fong, David I. Spivak (PDF)
-
Statistical Thinking for the 21st Century - Russell A. Poldrack
-
Statistics Done Wrong - Alex Reinhart
-
SticiGui - Philip Stark
-
Tea Time Numerical Analysis - Leon Q. Brin
-
The Open Logic Text - Open Logic Project (PDF)
-
Think Bayes: Bayesian Statistics Made Simple - Allen B. Downey
-
Think Stats: Probability and Statistics for Programmers - Allen B. Downey (using Python)
-
Vector Calculus - Michael Corral
-
Yet Another Introductory Number Theory Textbook - Jonathan A. Poritz (PDF)
Mathematics For Computer Science
Misc
-
10 Keys to Great Landing Pages - iThemes Media (PDF)
-
2016 European Software Development Salary Survey - Andy Oram, John King (HTML)
-
2016 Software Development Salary Survey - John King, Roger Magoulas (HTML)
-
A MACHINE MADE THIS BOOK ten sketches of computer science - JOHN WHITINGTON (PDF)
-
Ansible Up & Running (first three chapters) (account required)
-
Asterisk™: The Definitive Guide - Leif Madsen, Jim Van Meggelen, Russell Bryant (HTML)
-
Atomic Design - Brad Frost
-
Barcode Overview (PDF)
-
Come, Let’s Play: Scenario-Based Programming Using Live Sequence Charts - David Harel, Rami Marelly
-
Communicating Sequential Processes - Tony Hoare (PDF)
-
Confessions of an Unintentional CTO: Lessons in Growing a Web App - Jack Kinsella
-
Culture \& Empire: Digital Revolution - Pieter Hintjens (PDF)
- Design With FontForge
-
Designing Interfaces - Jennifer Tidwell
-
DevDocs - Documents for Developers in 1 place
-
DevOps For Dummies, 3rd IBM Limited Edition - Sanjeev Sharma, Bernie Coyne (PDF)
-
Digital Signal Processing For Communications - Paolo Prandoni, Martin Vetterli
-
Digital Signal Processing For Engineers and Scientists - Steven W. Smith
-
Digital Signal Processing in Python - Allen B. Downey
-
“DYNAMIC LINKED LIBRARIES”: Paradigms of the GPL license in contemporary software - Luis A. Enríquez
- Encyclopedia of Human Computer Interaction 2nd Edition
-
Essential Image Optimization - Addy Osmani
-
Foundations of Programming - Karl Seguin (PDF)
-
Front-End Developer Handbook 2016 - Cody Lindley (HTML)
-
Front-End Developer Handbook 2017 - Cody Lindley (HTML)
-
Front-End Developer Handbook 2018 - Cody Lindley (HTML)
-
Front-End Developer Handbook 2019 - Cody Lindley (HTML)
-
Getting Real - Basecamp, 37signals (HTML, PDF)
-
GNU GREP and RIPGREP - Sundeep Agarwal
-
Google Maps API Succinctly - Mark Lewin
-
Hacknot: Essays on Software Development - Ed Johnson
-
Hello SDL - Lazy Foo’ Productions
-
High-Performance Scientific Computing (class lectures and slides)
-
HoloLens Succinctly - Lars Klint
-
How Computers Work - R. Young
-
How to Become a Programmer - Rob Walling (PDF)
-
How To Manage Remote Servers with Ansible - Erika Heidi (PDF, EPUB)
-
How to Think Like a Computer Scientist - Peter Wentworth, Jeffrey Elkner, Allen B. Downey, Chris Meyers
-
Image Processing in C: Analyzing and Enhancing Digital Images - Dwayne Phillips
-
Information Technology and the Networked Economy - Patrick McKeown (PDF) ( archived)
-
Introduction to Scientific Programming in C++ and Fortran - Victor Eijkhout (PDF)
-
IRPF90 Fortran code generator - Anthony Scemama
-
Learn Programming - Antti Salonen
-
Learn to Program - Chris Pine
-
Learning 30 Technologies in 30 Days: A Developer Challenge - Shekhar Gulati
-
Linked Data Patterns: A pattern catalogue for modelling, publishing, and consuming Linked Data - Leigh Dodds, Ian Davis
-
Magic Ink: Information Software and The Graphical Interface - Bret Victor
-
Mobile Developer’s Guide to the Galaxy (HTML)
-
Modeling Reactive Systems with Statecharts - D. Harel, M. Politi
-
MSIX Succinctly - Matteo Pagani
-
Networks, Crowds, and Markets: Reasoning About a Highly Connected World - David Easley, Jon Kleinberg
-
Object-Oriented Reengineering Patterns - Serge Demeyer, Stéphane Ducasse, Oscar Nierstrasz
-
Open Government; Collaboration, Transparency, and Participation in Practice - Daniel Lathrop, Laurel Ruma
-
PDQ: Pretty Darn Quick: An Agile, All-Purpose Methodology - Jeff Franz-Lien (Leanpub account or valid email requested)
-
Philosophy of Computer Science (PDF)
-
PNG: The Definitive Guide - Greg Roelofs
-
Pointers And Memory - Nick Parlante (PDF)
-
Principles of Computer System Design (PDF)
-
Programming Fundamentals - Kenneth Leroy Busbee, Dave Braunschweig
- Programming with Unicode
-
Real-World Maintainable Software - Abraham Marin-Perez
-
Record-Playback Test Automation: Sahi & Selenium IDE: Critical Evaluation of Record-Playback Automation Tools - Shashikant Jagtap (Leanpub account or valid email requested)
-
Scientific Programming and Computer Architecture - Divakar Viswanath
-
Signal Computing: Digital Signals in the Software Domain - Michael Stiber, Bilin Zhang Stiber, Eric C. Larson (PDF)
-
Small Memory Software - Charles Weir, James Noble (HTML)
-
Web Almanac (PDF)
-
Writing Native Mobile Apps in a Functional Language Succinctly - Vassili Kaplan
Networking
-
An Introduction to Computer Networks (HTML, PDF, Kindle)
-
Beej’s Guide to Network Programming - Using Internet Sockets - Brian “Beej Jorgensen” Hall (HTML, PDF)
- Bits, Signals, and Packets: An Introduction to Digital Communications and Networks
-
Code Connected vol.1 (PDF) (book on ZeroMQ)
-
Computer Networking : Principles, Protocols and Practice (HTML, ePub, PDF, Kindle)
-
Computer Networks: A Systems Approach - Larry Peterson, Bruce Davie (HTML, epub, mobi, PDF)
- Distributed systems for fun and profit
-
High-Performance Browser Networking - Ilya Grigorik
-
How HTTPS Works - DNSimple
-
HTTP Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
-
HTTP2 Explained - Daniel Stenberg
-
Introduction to HTTP - Launch School
-
IPv6 for IPv4 Experts - Yar Tikhiy (PDF)
-
Kafka gentle introduction - Mitch Seymour
-
Kafka, The definitive Guide - Neha Narkhede (PDF)
-
Linux IP Stacks Commentary - Stephen Satchell, H. B. J. Clifford (HTML) ( in process)
- Mininet Walkthrough
-
Network Science - Albert-Laszló Barabási
-
Networking! ACK! - Julia Evans (PDF)
-
Securing Wireless Networks for the Home User Guide - Mohamed Adel (HTML)
- The TCP/IP Guide
-
Understanding IP Addressing: Everything you ever wanted to know (PDF)
- ZeroMQ Guide
Object Oriented Programming
Open Source Ecosystem
Operating Systems
-
A short introduction to operating systems (2001) - Mark Burgess (PDF)
- Computer Science from the Bottom Up
-
How to Make a Computer Operating System ( in process)
-
How to write a simple operating system in assembly language - Mike Saunders (HTML)
-
Linux From Scratch - Gerard Beekmans, Bruce Dubbs, Ken Moffat, Pierre Labastie, et al. (HTML, PDF, downloads…)
-
Making Servers Work: A Practical Guide to Linux System Administration - Jamon Camisso (PDF, EPUB)
-
Operating Systems and Middleware (PDF and LaTeX)
-
Operating Systems: Three Easy Pieces (PDF)
-
Practical File System Design: The Be File System - Dominic Giampaolo (PDF)
-
Project Oberon: The Design of an Operating System, a Compiler, and a Computer - Niklaus Wirth, Jürg Gutknecht (PDF)
-
The Art of Unix Programming - Eric S. Raymond
-
The Design and Implementation of the Anykernel and Rump Kernels - Antti Kantee
-
The little book about OS development - Erik Helin, Adam Renberg
-
The Little Book of Semaphores - Allen B. Downey
-
Think OS: A Brief Introduction to Operating Systems - Allen B. Downey (PDF)
-
UNIX Application and System Programming, lecture notes - Prof. Stewart Weiss (PDF)
-
Writing a Simple Operating System from Scratch - Nick Blundell (PDF)
- Xv6, a simple Unix-like teaching operating system
Parallel Programming
Partial Evaluation
Professional Development
Programming
Programming Paradigms
Quantum Computing
Regular Expressions
Reverse Engineering
Search Engines
Security & Privacy
Software Architecture
-
A Primer on Design Patterns - Rahul Batra (HTML)
-
Agile Planning: From Ideas to Story Cards - Launch School
-
Architectural Styles and the Design of Network-based Software Architectures - Roy Thomas Fielding
- Best Kept Secrets of Peer Code Review
-
Building Secure & Reliable Systems - Heather Adkins, Betsy Beyer, Paul Blankinship, Piotr Lewandowski, Ana Oprea, Adam Stubblefield (PDF)
-
Code Simplicity: The Fundamentals of Software - Max Kanat-Alexander (PDF)
- Data-Oriented Design
-
Designing Event-Driven Systems. Concepts and Patterns for Streaming Services with Apache Kafka - Ben Stopford (PDF)
-
Developing Reactive Microservices (email address requested, not required)
- Domain Driven Design Quickly
-
Domain-Driven Design Reference - Eric Evans
-
DSL Engineering: Designing, Implementing and Using Domain-Specific Languages - Markus Voelter
-
Exploring CQRS and Event Sourcing - Dominic Betts, Julián Domínguez, Grigori Melnik, Mani Subramanian, Fernando Simonazzi (EPUB, PDF - code samples)
-
Guide to the Software Engineering Body of Knowledge (email adddress requested)
- How to Design Programs
- How to Write Unmaintainable Code
- Kanban and Scrum - making the most of both
-
Microservices AntiPatterns and Pitfalls - Mark Richards (PDF) ( archived)
-
Microservices vs. Service-Oriented Architecture - Mark Richards (HTML)
-
Migrating to Cloud-Native Application Architectures (email address requested) (PDF)
-
Naked objects - Richard Pawson (PDF)
-
OAuth - The Big Picture (email address requested)
-
Object-Oriented Reengineering Patterns - S. Demeyer, S. Ducasse, O. Nierstrasz
-
Practicing Domain-Driven Design - Part 1 - Scott Millett (Leanpub account or valid email requested)
-
Reactive Microservices Architecture (email address requested)
-
Reactive Microsystems: The Evolution of Microservices at Scale (email address requested)
-
Refactor Like a Superhero - Alex Bespoyasov
- Scrum and XP from the Trenches
- Serverless apps: Architecture, patterns, and Azure implementation
-
Serverless Design Patterns and Best Practices - Brian Zambrano (Packt account required)
-
Shape Up - Stop Running in Circles and Ship Work that Matters - Ryan Singer (PDF)
- Site Reliability Engineering
-
Software Architecture Patterns (email address requested, not required)
- Software Engineering for Internet Applications
- Source Making Design Patterns and UML
-
Test Driven Development, Extensive Tutorial - Grzegorz Gałęzowski
- The Catalog of Design Patterns
-
The Site Reliability Workbook - Betsy Beyer, Niall Richard Murphy, David K. Rensin, Kent Kawahara, Stephen Thorne
-
Web API Design - Brian Mulloy (PDF)
-
Working with Web APIs - Launch School
-
Your API Is Bad - Paddy Foran
Standards
Theoretical Computer Science
Version Control Systems
-
A git Primer - Daniel Miessler
-
A Visual Git Reference - Mark Lodato
-
Conversational Git - Alan Hohn
-
get-git - Arialdo Martini (HTML, PDF, EPUB)
-
git - the simple guide - Roger Dudler (HTML)
-
Git cookbook - Dennis Kaarsemaker (HTML)
-
Git for Computer Scientists - Tommi Virtanen
-
Git From The Bottom Up - J. Wiegley
-
Git Immersion - Jim Weirich (HTML)
-
Git In The Trenches - Peter Savage
-
Git internals - Scott Chacon (PDF)
-
Git Magic - Ben Lynn, et al. (HTML, PDF, EPUB)
-
Git Notes for Professionals - Compiled from StackOverflow Documentation (PDF)
-
Git Pocket Guide - Richard E. Silverman
-
Git Reference - The GitHub team ( archived)
-
Git Succinctly, Syncfusion - Ryan Hodson (PDF, Kindle) (email address requested, not required)
-
Git Tutorial - Tutorials Point (HTML, PDF)
-
Git-Tutorial For-Beginners - HubSpot Product Team
-
Git Workflows - Yan Pritzker ( archived)
-
Happy Git and GitHub for the useR - Jenny Bryan
-
Hg Init: a Mercurial Tutorial - Joel Spolsky
-
How to Collaborate on GitHub: A mini book about collaborating on GitHub - André J
-
Introduction to Git and Github - Launch School
-
Introduction to Git and Github - Tutorial - Dr. Chris Bourke (PDF)
-
Introduction to Git and GitHub eBook - Bobby Iliev (Markdown, PDF)
-
Learn Git - Learn Version Control with Git - Tobias Günther
-
Mercurial: The Definitive Guide - Bryan O’Sullivan
-
Mercurial: The Definitive Guide 2nd edition - Bryan O’Sullivan
-
Pro Git - Scott Chacon, Ben Straub (HTML, PDF, EPUB, Kindle)
-
Pro Git Reedited - Jon Forrest
-
Ry’s Git Tutorial - Ryan Hodson ( archived)
-
Subversion Version Control - William Nagel (PDF)
-
Think Like (a) Git: A Guide for the Perplexed - Sam Livingston-Gray
-
Version Control with Subversion - Ben Collins-Sussman, Brian W. Fitzpatrick, C. Michael Pilato
Web Services
Workflow