Index
Meta-Lists
atariarchives.org atariarchives.org makes books, information, and software for Atari and other classic computers available on the Web.
Graphics Programming
DirectX manual (draft)
GPU Gems 2 - ch 8,14,18,29,30 as pdf
Graphical User Interfaces
Search User Interfaces - Marti A. Hearst
Working through Screens - Jacob Burghardt
Language Agnostic
Algorithms & Data Structures
Algorithms - Dasgupta, Papadimitriou, Vazirani (PDFs)
Algorithms, 4th Edition - Robert Sedgewick and Kevin Wayne
Algorithms Course Materials - Jeff Erickson
Binary Trees (PDF)
Data Structures and Algorithms: Annotated Reference with Examples
Data Structures Succinctly Part 1, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
Data Structures Succinctly Part 2, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
Foundations of Computer Science - Al Aho and Jeff Ullman
Open Data Structures: An Introduction - Pat Morin
Lectures Notes on Algorithm Analysis and Computational Complexity (Fourth Edition), University of North Texas (PDF)
Linked List Basics (PDF)
Linked List Problems (PDF)
Problems on Algorithms (Second Edition), University of North Texas (PDF)
Programming Pearls - Jon Bentley
Text Algorithms (PDF)
The Art of Computer Programming (fascicles, mostly volume 4) - Donald Knuth
Cellular Automata
Compiler Design
Basics of Compiler Design (Anniversary Edition - Torben Mogensen
Compilers and Compiler Generators: An Introduction with C++ - P. D. Terry
Compiler Construction (PDF)
Compiler Design: Theory, Tools, and Examples, C/C++ Edition - Seth D. Bergmann
Compiler Design: Theory, Tools, and Examples, Java Edition - Seth D. Bergmann
Implementing Functional Languages: A Tutorial - Simon Peyton Jones, David Lester
Let's Build a Compiler (PDF)
Practical and Theoretical Aspects of Compiler Construction (class lectures and slides)
Database
Database Fundamentals (PDF)
Temporal Database Management - Christian S. Jensen
Datamining
A Programmer's Guide to Data Mining (Draft) - Ron Zacharski
Data Jujitsu: The Art of Turning Data into Product (Just fill the fields with any values)
Data Mining and Analysis: Fundamental Concepts and Algorithms (Draft)
Internet Advertising: An Interplay among Advertisers, Online Publishers, Ad Exchanges and Web Users (PDF)
Introduction to Data Science - Jeffrey Stanton
The Elements of Statistical Learning - Trevor Hastie, Robert Tibshirani, and Jerome Friedman
Information Retrieval
Practical Semantic Web and Linked Data Applications: Common Lisp Edition - Mark Watson
Practical Semantic Web and Linked Data Applications: Java, JRuby, Scala, and Clojure Edition - Mark Watson
Licensing
Creative Commons: a user guide - Simone Aliprandi
Machine Learning
Artificial Intelligence | Machine Learning - Andrew Ng (Notes, lectures, and problems)
Machine Learning, Neural and Statistical Classification (PDF) or online version - This book is based on the EC (ESPRIT) project StatLog.
Probabilistic Models in the Study of Language (Draft, with R code)
Mathematics
A First Course in Linear Algebra - Robert A. Beezer
Bayesian Methods for Hackers - Cameron Davidson-Pilon
Calculus Made Easy (PDF) - Silvanus P. Thompson
Essentials of Metaheuristics by Sean Luke
Introduction to Probability - Charles M. Grinstead and J. Laurie Snell
Introduction to Statistical Thought - Michael Lavine
Mathematics for Computer Science (November 2013 Version) (PDF) - Eric Lehman
Number Theory (PDF)
Statistics Done Wrong - Alex Reinhart
Think Bayes: Bayesian Statistics Made Simple - Allen B. Downey
Think Stats: Probability and Statistics for Programmers (code written in Python) - Allen B. Downey
Misc
A Mathematical Theory of Communication by Claude E.Shannon
Come, Let's Play: Scenario-Based Programming Using Live Sequence Charts
Communicating Sequential Processes (PDF) by Tony Hoare
Computer Musings (lectures by Donald Knuth)
Designing Interfaces by Jennifer Tidwell
"DYNAMIC LINKED LIBRARIES": Paradigms of the GPL license in contemporary software - Luis A. Enríquez
Hacknot: Essays on Software Development - Ed Johnson
How to Think Like a Computer Scientist - Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers
Magic Ink: Information Software and The Graphical Interface by Bret Victor
Networks, Crowds, and Markets: Reasoning About a Highly Connected World
Open Government;Collaboration, Transparency, and Participation in Practice
Object-Oriented Reengineering Patterns - Serge Demeyer, Stéphane Ducasse and Oscar Nierstrasz
Pointers And Memory (PDF)
Project Oberon (PDF)
The Quest for Artificial Intelligence: A History of Ideas and Achievements - Nils J. Nilsson
The Z Notation: A Reference Manual, Second Edition - J. M. Spivey
MOOC
Networking
802.11ac: A Survival Guide - Matthew Gast
Code Connected vol.1(PDF) (book on ZeroMQ)
Computer Networking: Principles, Protocols and Practice, 2nd edition (CNP3bis) (PDF, EPUB + sources) - O. Bonaventure (in progress)
HTTP Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
Understanding IP Addressing: Everything you ever wanted to know (PDF)
Open Source Ecosystem
Free as in Freedom (PDF)
Open Advice: FOSS: What We Wish We Had Known When We Started
The Art of Community: Building the New Age of Participation; First edition (PDF), Second edition (PDF) - Jono Bacon
The Cathedral and the Bazaar - Eric S. Raymond
The Wealth of Networks: How Social Production Transforms Markets and Freedom - Yochai Benkler
Operating systems
The Art of Unix Programming - Eric S. Raymond
The Little Book of Semaphores - Allen B. Downey
Operating Systems and Middleware (PDF and LaTeX)
Practical File System Design:The Be File System (PDF) - Dominic Giampaolo
Parallel Programming
High Performance Computing (PDF, ePUB) - Charles Severance & Kevin Dowd
High Performance Computing Training (LLNL materials)
High-Performance Scientific Computing (class lectures and slides)
Introduction to High-Performance Scientific Computing - Victor Eijkhout
Introduction to Parallel Computing - Blaise Barney
Is Parallel Programming Hard, And, If So, What Can You Do About It?
Programming on Parallel Machines; GPU, Multicore, Clusters and More - Norm Matloff
Professional Development
Confessions of an IT Manager (RedGate, By Phil Factor)
Don't Just Roll the Dice (PDF) (RedGate, By Neil Davidson)
How to be a Programmer: A Short, Comprehensive, and Personal Summary by Robert L. Read
Programming Paradigms
Introduction to Functional Programming (class lectures and slides)
Regular Expressions
Learn Regex The Hard Way - Zed. A. Shaw
The Bastards Book of Regular Expressions: Finding Patterns in Everyday Text - Dan Nguyen
Security
Software Architecture
Patterns of Software: Tales from the Software Community (PDF)
Programming Reliable Systems (Joe Armstrong's PhD thesis) (PDF)
Standards
Theoretical Computer Science
Building Blocks for Theoretical Computer Science - Margaret M. Fleck
Homotopy Type Theory: Univalent Foundations of Mathematics (PDF)
Introduction to Theory of Computation (PDF) - Anil Maheshwari and Michiel Smid
Models of Computation - John E. Savage
Practical Foundations for Programming Languages, Preview - Robert Harper
Principles of Programming Languages - Scott F. Smith
Programming Languages: Application and Interpretation (2nd Edition)
Think Complexity - Allen B. Downey
Web Performance
Book of Speed by Stoyan Stefanov
Mature Optimization by Carlos Bueno
Ada
Ada Distilled (PDF)
Agda
Android
Android Programming Guide for Beginners (PDF - need email confirmation)
APL
Mastering Dyalog APL (PDF)
Arduino
Arduino Programming Notebook - Brian Evans
ASP.NET MVC
Assembly Language
PC Assembly Language - Paul A. Carter
Non-X86
Easy 6502 - Nick Morgan
Machine Code for Beginners (PDF) by Lisa Watts and Mike Wharton [Z80 and 6502 CPUs]
Machine Language for Beginners by Richard Mansfield [6502 CPU]
AutoHotkey
Autotools
Awk
Awk - Bruce Barnett
Bash
Bash Guide for Beginners by Machtelt Garrels
The Command Line Crash Course (also a Powershell reference)
Basic
10 PRINT CHR$(205.5+RND(1)); : GOTO 10 - Nick Montfort, Patsy Baudoin, John Bell,Ian Bogost, Jeremy Douglass, Mark C. Marino, Michael Mateas, Casey Reas, Mark Sample, Noah Vawter
BETA
Object-Oriented Programming in the BETA Programming Language - Ole Lehrmann Madsen, Birger Møller-Pedersen, Kristen Nygaard
C
Essential C (PDF)
The Craft of Text Editing or A Cookbook for an Emacs - Craig A. Finseth
C++
Matters Computational: Ideas, Algorithms, Source Code, by Jorg Arndt (PDF)
Thinking in C++, Second Edition, Vol. 1. (Vol. 2) - Bruce Eckel
How To Think Like a Computer Scientist: C++ Version - Allen B. Downey
Also see: The Definitive C++ Book Guide and List
C++ Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
Learn C++. (PDF, Online)
Software Design Using C++ - Br. David Carlson and Br. Isidore Minerd
Data Structures and Algorithms with Object-Oriented Design Patterns in C++
C++ Cookbook (PDF)
The Rook's Guide to C++ (PDF)
Clojure
COBOL
CoffeeScript
ColdFusion
Cool
Coq
D
Dart
DB2
Delphi / Pascal
DTrace
Elasticsearch
Emacs
Erlang
Études for Erlang - J. David Eisenberg
Learn You Some Erlang For Great Good - Frederic Trottier-Hebert
Erlang Handbook (PDF)
F Sharp
F Sharp Programming in Wikibooks
Real World Functional Programming (MSDN Chapters)
F# Succinctly, SyncFusion (PDF, Kindle) (Just fill the fields with any values)
Flex
Firefox OS
Force.com
Force.com Fundamentals (HTML)
Force.com Platform Fundamentals: An Introduction to Custom Application Development in the Cloud
Force.com Workbook (HTML)
Apex Workbook (HTML)
Visualforce Workbook (HTML)
Database.com Workbook (HTML)
Analytics Workbook (HTML)
ISVForce Workbook (HTML)
Cloud Flow Designer Workbook (HTML)
Security Workbook (HTML)
Service Cloud Workbook (HTML)
Site.com Workbook (HTML)
Heroku Postgres (PDF)
Forth
Programming Forth (PDF)
And so Forth... (PDF)
Fortran
FreeBSD
Git
Pro Git - Scott Chacon
Pro Git Reedited - Jon Forrest
Git internals (PDF)
Git Pocket Guide - Richard E. Silverman
Version Control by Example (Mercurial, Subversion, Verasity)
Git Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
Git From The Bottom Up (PDF)
Go
Gradle
Grails
Hadoop
Hadoop Illuminated - Mark Kerzner & Sujee Maniyam
Programming Pig - Alan Gates
Haskell
A Haskell School of Music (PDF) (work in progress)
Learn You a Haskell for Great Good - Miran Lipovača
Haskell web Programming (Yesod tutorial)
HTML / CSS
Dive Into HTML5 (PDF) - Mark Pilgrim
HTML Canvas Deep Dive - Josh Marinacci
HTML5 Canvas - Steve Fulton & Jeff Fulton
HTML5 for Publishers - Sanders Kleinfeld
HTML5 For Web Designers - Jeremy Keith
Scalable and Modular Architecture for CSS - Jonathan Snook
Web Audio API - Boris Smus
Icon
IDL
iOS
iOS Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
Developing iOS 7 Apps for iPhone and iPad (slides and videos) - Stanford University
J
J for C Programmers by Henry Rich- online || pdf || word 2003 file
J Reference Card (PDF)
Math for the Layman by Kenneth E Iverson (zipped html+images)
Java
Apache Jakarta Commons: Reusable Java Components - Will Iverson
Artificial Intelligence - Foundation of Computational Agents
Data Structures and Algorithms with Object-Oriented Design Patterns in Java
Think Java: How to Think Like a Computer Scientist - Allen B. Downey
Introduction to Programming Using Java - David J. Eck
Java Application Development on Linux by Carl Albing and Michael Schwarz (PDF) (PDF)
Practical Artificial Intelligence Programming With Java, Third Edition - Mark Watson
The Java EE6 Tutorial (PDF)
Learning Java (4th Edition) - Patrick Niemeyer
OSGi in Practice (PDF)
OOP - Learn Object Oriented Thinking & Programming - Rudolf Pecinovsky
The Java Language Specification - James Gosling, Bill Joy, Guy Steele, Gilad Bracha
The Java Tutorial 4th Edition - Sharon Zakhour, Scott Hommel, Jacob Royal, Isaac Rabinovitch, Tom Risser, Mark Hoeber
Core Servlets and JavaServer Pages - Marty Hall and Larry Brown
Introduction to Programming Using Java - David J. Eck
Introduction to Programming in Java- Robert Sedgewick and Kevin Wayne
Tutorial: Java, Maven 2, Eclipse & JSF - Arulkumaran Kumaraswamipillai, Sivayini Arulkumaran
Welcome to Java for Python Programmers - Brad Miller
Wicket
JavaScript
Crockford's JavaScript - Douglas Crockford
Eloquent JavaScript - Marijn Haverbeke
Eloquent JavaScript 2nd edition (work in progress)
JavaScript Bible (PDF)
JavaScript Enlightenment - Cody Lindley
JavaScript Garden (Maintained by Tim Ruffles)
JavaScript Patterns Collection - Shi Chuan
Javascript Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
jQuery Fundamentals (starts with JavaScript basics)
Learning JavaScript Design Patterns - Addy Osmani
Managing Space and Time with JavaScript - Book 1: The Basics - Noel Rappin
O'Reilly Programming JavaScript Applications - Early Release
Angular.js
AngularJS in 60 Minutes (PDF)
Backbone.js
D3.js
Interactive Data Visualization for the Web - Scott Murray
Dojo
Dojo: The Definitive Guide - Matthew A. Russell
jQuery
jQuery Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
jQuery Novice to Ninja (PDF)
Knockout.js
Knockout.js Succinctly (PDF, Kindle) (Just fill the fields with any values)
Node.js
Node: Up and Running - Tom Hughes-Croucher
LaTeX
See also TeX
Linux
The Linux Command Line (PDF)
Linux Device Drivers, Third Edition by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman
Lisp
Common Lisp: A Gentle Introduction to Symbolic Computation - David S. Touretzky
Lisp Hackers: Interviews with 100x More Productive Programmers - Vsevolod Dyomkin
Successful Lisp: How to Understand and Use Common Lisp - David Lamkins
Sketchy LISP - Nils Holm
Lua
Programming In Lua (for version 5)
Mathematica
MATLAB
MATLAB - A Fundamental Tool for Scientific Computing and Engineering Applications - Volume 1
MATLAB for Engineers: Applications in Control, Electrical Engineering, IT and Robotics
Physical Modeling in MATLAB - Alan B. Downey
Maven
Mercurial
MySQL
.NET (C# / VB / Nemerle / Visual Studio)
C# Yellow Book (intro to programming)
Data Structures and Algorithms with Object-Oriented Design Patterns in C#
Fundamentals of Computer Programming with C# - Svetlin Nakov
Nemerle (PDF)
Visual Studio Tips and Tricks (VS 2003-2005 only)
Under the Hood of .NET Memory Management (PDF) (RedGate, By Chris Farrell and Nick Harrison)
Practical Performance Profiling: Improving the efficiency of .NET code (RedGate, By Jean-Philippe Gouigoux)
.NET Performance Testing and Optimization - The Complete Guide (RedGate, By Paul Glavich and Chris Farrell)
NoSQL
Oberon
Objective-C
Objective-C Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
OCaml
Think OCaml - Allen B. Downey and Nicholas Monje
Octave
OpenGL ES
OpenSCAD
Oracle PL/SQL
Oracle Server
Parrot / Perl 6
Using Perl 6 (work in progress)
PC-BSD
Perl
Essential Perl (PDF)
Practical mod_perl - Stas Bekman, Eric Cholet
Mastering Perl - Bryan D Foy
Perl Free Online EBooks (meta-list)
The PDL Book (PDF)
PHP
Practical PHP Programming (wiki containing O'Reilly's PHP In a Nutshell)
Laravel Framework
Drupal Framework
The Tiny Book of Rules (PDF)
Master Drupal in 7 hours (PDF)
High Performance Drupal - Jeff Sheltren, Narayan Newton, and Nathaniel Catchpole
Drupal 7
Drupal 8
PostgreSQL
PowerShell
Processing
Prolog
Prolog and Natural-Language Analysis - Fernando C. N. Pereira, Stuart M. Shieber
The First 10 Prolog Programming Contests - Bart Demoen, Phuong-Lan Nguyen, Tom Schrijvers, Remko Tronçon
Python
Dive into Python - Mark Pilgrim
Dive into Python 3 - Mark Pilgrim
A Guide to Python's Magic Methods - Rafe Kettler
Hacking Secret Cyphers with Python - Al Sweigart
How to Think Like a Computer Scientist: Learning with Python - Allen B. Downey, Jeff Elkner and Chris Meyers
Introduction to Programming Using Python - Cody Jackson
Invent Your Own Computer Games With Python - Al Sweigart
Lectures on scientific computing with python - J.R. Johansson
Making Games with Python & Pygame - Al Sweigart
Modeling Creativity: Case Studies in Python - Tom D. De Smedt
Python Cookbook - David Beazley
Python Programming - PDF
The Programming Historian - William J. Turkel, Adam Crymble and Alan MacEachern
Think Python - Allen B. Downey
Python Standard Library - Fredrik Lundh
Text Processing in Python - David Mertz
Welcome to Problem Solving with Algorithms and Data Structures - Brad Miller and David Ranum
Python in Hydrology - Sat Kumar Tomer
Introduction to python - Kracekumar
Web2py: Complete Reference Manual, 6th Edition (pre-release) - HTML
Web2py: Complete Reference Manual, 6th Edition (pre-release) - PDF
Django
Flask
Explore Flask (PDF)
The Flask Mega-Tutorial - Miguel Grinberg
R
The R Inferno (PDF) - Patrick Burns
Introduction to Probability and Statistics Using R (PDF) - G. Jay Kerns
R practicals (PDF)
R for spatial analysis (PDF)
Learning Statistics with R - Daniel Navarro
R language for Programmers - John D. Cook
Practical Regression and Anova using R (PDF) - Julian J. Faraway
Racket
REBOL
Learn REBOL - Nick Antonaccio
Ruby
Ruby Best Practices (PDF)
The Unofficial Ruby Usage Guide (at Google) - Ian Macdonald
RSpec
Sinatra
Ruby on Rails
Rust
Sage
Sage for Newbies - Ted Kosan
Sage for Power Users (PDF) - William
Scala
Exploring Lift (published earlier as "The Definitive Guide to Lift", PDF)
Lift Cookbook - Richard Dallaway
Scala By Example (PDF)
Scala for the Impatient - Cay S. Horstmann
Scheme
Scilab
Scratch
Sed
Silverlight
Smalltalk
Free Online Smalltalk Books (meta-list)
Pharo by Example (Smalltalk DE)
Squeak By Example (Smalltalk IDE)
SQL (implementation agnostic)
SQL Server
SQL Server Execution Plans (PDF) (RedGate, By Grant Fritchey)
Defensive Database Programming (PDF) (RedGate, By Alex Kuznetsov)
SQL Server Execution Plans, Second Edition (PDF) (RedGate, By Grant Fritchey)
Inside the SQL Server Query Optimizer (RedGate, By Benjamin Nevarez)
SQL Server Transaction Log Management (RedGate, By Tony Davis and Gail Shaw)
The Art of SQL Server FILESTREAM (RedGate, By Jacob Sebastian and Sven Aelterman)
SQL Server Concurrency: Locking, Blocking and Row Versioning (RedGate, By Kalen Delaney)
SQL Server Backup and Restore (RedGate, By Shawn McGehee)
Troubleshooting SQL Server: A Guide for the Accidental DBA (RedGate, By Jonathan Kehayias and Ted Krueger)
SQL Server Hardware (RedGate, By Glenn Berry)
SQL Server Statistics (RedGate, By Holger Schmeling)
Performance Tuning with SQL Server Dynamic Management Views (RedGate, By Tim Ford and Louis Davidson)
Brad's Sure Guide to SQL Server Maintenance Plans (RedGate, By Brad McGehee)
Best of SQLServerCentral.com Vol 7 (RedGate, By SQLServerCentral Authors)
Protecting SQL Server Data (RedGate, By John Magnabosco)
SQL Server Tacklebox (RedGate, By Rodney Landrum)
How to Become an Exceptional DBA (RedGate, By Brad McGehee)
SQL Server Stumpers Vol.5 (RedGate, By SQLServerCentral Authors)
Mastering SQL Server Profiler (RedGate, By Brad McGehee)
Standard ML
Programming in Standard ML, Draft - Robert Harper
Subversion
Tcl
Tcl Programming, by Richard.Suchenwirth, et. al.
TclWise, by Salvatore Sanfilippo
Teradata
TeX
Notes On Programming in TeX (PDF) by Christian Feursänger
TeX by Topic, A TeXnician's Reference, by Victor Eijkhout
TeX for the Impatient, by Paul Abrahams, Kathryn Hargreaves, and Karl Berry
The Computer Science of TeX and LaTeX, by Victor Eijkhout
See also LaTeX
TypeScript
TypeScript Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
Unix
Vim
Vi Improved -- Vim (PDF) by Steve Oualline
Vim Recipes (PDF)
Web Services
RESTful Web Services (PDF)