# Computer Science - Extra Resources ## Free Books - [Introduction to Computer Science](#introduction-to-computer-science) - [Math (Mathematical Thinking)](#math-mathematical-thinking) - [Program Design](#program-design) - [Math (Discrete Math)](#math-discrete-math) - [Algorithms](#algorithms) - [Programming Paradigms](#programming-paradigms) - [Software Testing](#software-testing) - [Math (Calculus)](#math-calculus) - [Software Architecture](#software-architecture) - [Theory](#theory) - [Software Engineering](#software-engineering) - [Math (Probability)](#math-probability) - [Computer Architecture](#computer-architecture) - [Operating Systems](#operating-systems) - [Computer Networks](#computer-networks) - [Databases](#databases) - [Cloud Computing](#cloud-computing) - [Math (Linear Algebra)](#math-linear-algebra) - [Cryptography](#cryptography) - [Security](#security) - [Compilers](#compilers) - [Parallel Computing](#parallel-computing) - [UX Design](#ux-design) - [Computer Graphics](#computer-graphics) - [Artificial Intelligence](#artificial-intelligence) - [Machine Learning](#machine-learning) - [Natural Language Processing](#natural-language-processing) - [Big Data](#big-data) - [Data Mining](#data-mining) - [Internet of Things](#internet-of-things) --- ### Introduction to Computer Science Name | Author(s) :-- | :--: [Structure and Interpretation of Computer Programs](https://mitpress.mit.edu/sicp/full-text/book/book.html) | Hal Abelson, Jerry Sussman, Julie Sussman ### Math (Mathematical Thinking) ### Program Design ### Math (Discrete Math) ### Algorithms ### Programming Paradigms ### Software Testing ### Math (Calculus) Name | Author(s) :-- | :--: [Calculus Made Easy](http://www.gutenberg.org/ebooks/33283) | Silvanus P. Thompson ### Software Architecture ### Theory ### Software Engineering ### Math (Probability) Name | Author(s) :-- | :--: [Grinstead and Snell’s Introduction to Probability](https://math.dartmouth.edu/~prob/prob/prob.pdf) |Charles M. Grinstead, J. Laurie Snell ### Computer Architecture ### Operating Systems ### Computer Networks ### Databases ### Cloud Computing ### Math (Linear Algebra) ### Cryptography ### Security ### Compilers Name | Author(s) :-- | :--: [Compiler Construction](http://www.ethoberon.ethz.ch/WirthPubl/CBEAll.pdf) | Niklaus Wirth ### Parallel Computing ### UX Design ### Computer Graphics ### Artificial Intelligence ### Machine Learning ### Natural Language Processing ### Big Data ### Data Mining ### Internet of Things