• Welcome!
Total books

Computer & Internet

AI and Robotics

Communicaion and Telecommunication
Graphics & Design

Information Technology
Mobile Computing
Network Security

Operating System
Software Engineering

Web Design & Development
Web Development
Sort by
Ethical Artificial Intelligence
Ethical Artificial Intelligence Sented by Sarah Gerdes

Recent research is giving us ways to define the behaviors of future artificial intelligence (AI) systems, before they are built, by mathematical equations. We can use these equations to describe various broad types of unintended and harmful AI behaviors, and to propose AI design techniques that avoid those behaviors. That is the subject of this book.

Open Data Structures: An Introduction

Every computer science curriculum in the world includes a course on data structures and algorithms. Data structures are that important; they improve our quality of life and even save lives on a regular basis. Many multi-million and several multi-billion dollar companies have been built around data structures.

Foundations of Computation
Foundations of Computation Sented by Rebecca

Foundations of Computation is a free textbook for a one-semester course in theoretical computer science.

Learn Physics by Programming in Haskell

We describe a method for deepening a student’s understanding of basic physics by asking the student to express physical ideas in a functional programming language.

Modern C
Modern C Sented by Musa

The C programming language has been around for a long time — the canonical reference for it is the book written by its creators, Kernighan and Ritchie [1978]. Since then, C has been used in an incredible number of applications. Programs and systems written in C are all around us: in personal computers, phones, cameras, set-top boxes, refrigerators, cars, mainframes, satellites, basically in any modern device that has a programmable interface.

The Computer Science Handbook
The Computer Science Handbook Sented by Steve Bark

The Computer Science handbook is a handbook designed to explain algorithms and data structures in a way that anyone can understand. Many websites (eg Wikipedia) contain lengthy and wordy explanations that are full of technical jargon. We have tried our hardest to simplify all language to make it easy to read without any math or computer science background.

Lecture Notes in Machine Learning

Any change in a system that al lows it to perform better the second time o n repet ition of the same t ask or on anot her task drawn from the same population.

Computer Systems
Computer Systems Sented by Steve Bark

This book has been developed as a companion text to the University of the People course CS1104 Computer Systems. The University of the People is an accredited online university that offers programs in business administration and computer science. The university is unique in that it has no tuition, is tuition free, non-profit, and serves students from around the world.

A Primer on SQL (3rd Edition)
A Primer on SQL (3rd Edition) Sented by Sarah Gerdes

Welcome to this edition of A Primer on SQL. As you would be able to see, the book is fairly short and is intended as an introduction to the basics of SQL.

A Primer on Java (2nd Edition)
A Primer on Java (2nd Edition) Sented by Rebecca

Welcome to the second edition of A Primer on Java, a short (e)book meant as a gentle introduction to the basics of Java. This text was previously referred to as Essential Java in its first edition. I changed the name on the suggestion of the Reddit community to keep it in line with my other book on SQL. Thanks for the excellent suggestion people.

Invent Your Own Computer Games with Python 3rd Edition

This book teaches you how to program by making video games. Once you learn how the games in this book work, you’ll be able to create your own games. All you’ll need is a computer, some software called the Python interpreter, and this book. The Python interpreter is free to download from the Internet.

A First Encounter with Machine Learning

In winter quarter 2007 I taught an undergraduate course in machine learning at UC Irvine. While I had been teaching machine learning at a graduate level it became soon clear that teaching the same material to an undergraduate class was a whole new challenge. Much of machine learning is build upon concepts from mathematics such as partial derivatives, eigenvalue decompositions, multivariate probability densities and so on. I quickly found that these concepts could not be taken for granted at an undergraduate level. The situation was aggravated by the lack of a suitable textbook. Excellent textbooks do exist for this field, but I found all of them to be too technical for a first encounter with machine learning.

Essential Skills for Agile Development

Software development has been plagued by problems. Fortunately, at the same time innovations in programming techniques are continuously made in order to deliver quality software that meets customers' requirements within schedule and budget. Starting from around 1998, a new school of software development methodologies collectively known as "Agile Software Development" is starting to capture the minds and hearts of developers worldwide because it can effectively address the various problems surrounding software development.

Introduction to Design & Analysis of Algorithms - In Simple Way

This book provides a complete information to the modern study of computer algorithms. It presents many algorithms and covers every concept in a considerable depth, so that it can be understand by all levels of readers. Each and every concept is explained by a suitable examples. This text book is intended primarily for use in undergraduate or graduate courses in algorithms or data structures. Because it discusses engineering issues in algorithm design, as well as mathematical aspects, it is equally well suited for self-study by technical professionals.

Models of Computation
Models of Computation Sented by Sarah Gerdes

These are lecture notes that I wrote for the course “Algorithms and Models of Computation” at the University of Illinois, Urbana-Champaign for the first time in Fall 2014. This course is a broad introduction to theoretical computer science, aimed at third-year computer science and computer engineering majors, that covers both fundamental topics in algorithms, for which I already have copious notes, and fundamental topics on formal languages and automata, for which I wrote the notes you are reading now.

JavaScript Allongé
JavaScript Allongé Sented by Sarah Gerdes

Café Allongé, also called Espresso Lungo, is a drink midway between an Espresso and Americano in strength. There are two different ways to make it. The first, and the one I prefer, is to add a small amount of hot water to a double or quadruple Espresso Ristretto.

Sort by