Programming Books
Literate Programming (Lecture Notes)
This anthology of essays from Donald Knuth, "the father of computer science," and the inventor of literate programming includes early essays on re…
Designing Interfaces
Designing a good interface isn't easy. Users demand software that is well-behaved, good-looking, and easy to use. Your clients or managers demand …
Real World OCaml: Functional programming for the masses
This fast-moving tutorial introduces you to OCaml, an industrial-strength programming language designed for expressiveness, safety, and speed. Thr…
Data Structures and Algorithms in Python
Based on the authors' market leading data structures books in Java and C++, this textbook offers a comprehensive, definitive introduction to data …
Distributed Systems: Principles and Paradigms
Virtually every computing system today is part of a distributed system. Programmers, developers, and engineers need to understand the underlying p…
Discrete Mathematics and its Applications
Discrete Mathematics and its Applications is a focused introduction to the primary themes in a discrete mathematics course, as introduced through …
Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics and Speech Recognition
This book offers a unified vision of speech and language processing, presenting state-of-the-art algorithms and techniques for both speech and tex…
Basic Category Theory for Computer Scientists
Category theory is a branch of pure mathematics that is becoming an increasingly important tool in theoretical computer science, especially in pro…
Data Science for Business: What You Need to Know about Data Mining and Data-Analytic Thinking
Written by renowned data science experts Foster Provost and Tom Fawcett, Data Science for Business introduces the fundamental principles of data s…