FreeComputerBooks.com
Free Computer, Mathematics, Technical Books and Lecture Notes, etc.



Category Theory for the Sciences (David I. Spivak)
Using databases as an entry to category theory, this book explains category theory by examples, and shows that category theory can be useful outside of mathematics as a rigorous, flexible, and coherent modeling language throughout the sciences.

O'Reilly® Think Perl 6: How to Think Like a Computer Scientist
This practical guide gets you started on your programming journey with the help of Perl 6, the younger sister of the popular Perl programming language. Ideal for beginners, this handson book includes over 100 exercises with multiple solutions.

O'Reilly® Think Java: How to Think Like a Computer Scientist
If you want to understand computer science, but have no programming experience, this book is for you. It starts with the most basic programming concepts and carefully defines every term when it's first used, in a logical progression.

Computer Science from the Bottom Up (Ian Wienand)
This book uses broad coverage and clear exposition to present a complete picture of the dynamic computer science field.

Computer Science Concepts in Scratch (Michal Armoni, et al)
This book will familiarize you with the Scratch visual programming environment. The book is structured as a collection of tasks. Concepts are introduced in order to solve a specific task such as animating dancing images or building a game.

Philosophy of Computer Science (William J. Rapaport)
This book concentrates on a tightly related group of topics which form the spine of the subject. These include specification, implementation, semantics, programs, programming, correctness, abstraction and computation.

Foundations of Computation (Carol Critchlow, et al)
This is a textbook for a onesemester course in theoretical computer science. The course has no prerequisites other than introductory computer programming.

Building Blocks for Theoretical Computer Science (Margaret Fleck)
For all readers interested in the basics of computer science. It provides a survey of basic mathematical objects, notation, and techniques which will be useful in later computer science courses.

CS for All (Christine Alvarado, et al)
To provide an introduction to computer science as an intellectually rich and vibrant field rather than focusing exclusively on computer programming. It emphasizes concepts and problemsolving over syntax and programming language features.

Introduction to Computing: Language, Logic, and Machines
This book focuses on how to describe information processes by defining procedures, how to analyze the costs required to carry out a procedure, and the fundamental limits of what can and cannot be computed mechanically.

Concrete Mathematics: A Foundation for Computer Science
This book introduces the mathematics that supports advanced computer programming and the analysis of algorithms. The primary aim of its wellknown authors is to provide a solid and relevant base of mathematical skills.

Discrete Mathematics for Computer Science (Jean Gallier)
This books gives an introduction to discrete mathematics for beginning undergraduates. One of original features of this book is that it begins with a presentation of the rules of logic as used in mathematics. Many examples of formal and informal proofs are given.

Logic for Computer Science: Automatic Theorem Proving
This book covers the mathematical logic necessary to computer science, emphasizing algorithmic methods for solving proofs.

The Computer Science of TeX and LaTeX (Victor Eijkhout)
This book uses the TeX and LaTeX system to provide an introduction to a number of computer science topics. This book is based on the lecture notes of a course taught at the University of Tennessee.

Computer Science Logo Style (Brian Harvey)
This series is for people who are interested in computer programming because it's fun. It uses the Logo programming language as the vehicle for an exploration of computer science from the perspective of symbolic computation and artificial intelligence.

Foundations of Computer Science, C Edition (Al Aho, et al)
This textbook combines the theoretical foundations of computing with essential discrete mathematics.

Computer Science Tapestry: Exploring Programming in C++
This book is designed for a first course1 in computer science that uses C++ as the language by which programming is studied.

Introduction to Computer Science (Robert Sedgewick, et al)
This book is for all readers interested in introductory programming courses using the Java programming language.

Structure and Interpretation of Computer Programs, 2nd Edition
Using Scheme, a dialect of the Lisp programming language, the book explains core computer science concepts.

Simply Scheme: Introducing Computer Science, 2nd Edition
This book works hard to make the somewhat tricky ideas of Scheme accessible. It stresses small sections on key language features, from basic functions, variables, and onward to recursion and other functional programming concepts.

Concrete Abstractions: An Intro to Computer Science Using Scheme
This book covers the basics of programming and data structures, and gives firsttime computer science students the opportunity to not only write programs, but to prove theorems and analyze algorithms as well.

How to Think Like a Computer Scientist: JAVA Programming ©2012
This book is an introduction to Java programming for beginners. It is tailored for students preparing for the Computer Science Advanced Placement (AP) Exam, but it is for anyone who wants to learn Java.

How to Think Like a Computer Scientist, C++ Version (Allen Downey)
The goal of this book is to teach you to think like a computer scientist, using C++ as the programming language.

How to Think Like a Computer Scientist: Learning with Python
This book is an introduction to computer science using the Python programming language.

Think OCaml: How to Think Like a Computer Scientist
This book is an introductory functional programming textbook based on the OCaml language. It is intended for newcomers who know some programming but want to learn programming in the functionoriented paradigm, or just want to learn OCaml.

High Performance Computing For Dummies, Special Edition
This book explains what HPC is and shows how it can help you or others within your company.

Introduction to Computer Science
This is the previous page of Introduction to Computer Science, we are in the processing to convert all the books there to the new page. Please check this page again!!!




















