Index
- Meta-Lists
- Graphics Programming
- Language Agnostic
- Android
- Autotools
- ASP.NET MVC
- Assembly Language
- Bash
- C / C++
- Clojure
- CoffeeScript
- ColdFusion
- D / DTrace
- DB2
- Delphi / Pascal
- Django
- Elasticsearch
- Emacs
- Erlang
- Flask
- Flex
- F#
- Forth
- Git
- Go
- Grails
- Hadoop
- Haskell
- HTML / CSS
- Icon
- Java
- JavaScript
- LaTeX
- Linux
- Lisp
- Lua
- Mathematica
- Maven
- Mercurial
- .NET (C# / VB / Nemerle / Visual Studio)
- NoSQL
- Oberon
- Objective-C
- OCaml
- Oracle Server
- Oracle PL/SQL
- Parrot / Perl 6
- Perl
- PHP
- PowerShell
- Processing
- Prolog
- PostgreSQL
- Python
- R
- Racket
- Ruby
- Ruby on Rails
- Rust
- Sage
- Scala
- Scheme
- Sed
- Smalltalk
- Subversion
- SQL (implementation agnostic)
- Teradata
- Vim
- Websphere
- Windows Phone
Meta-Lists
- link25 Free Computer Science Ebooks
- linkCheat Sheets (Free)
- linkFree Tech Books
- linkMicrosoft Press: Free E-Books
- linkMindView Inc
- linkO'Reilly's Open Books Project
- linkTechBooksForFree.com
- linkTheassayer.org
- linkWikibooks: Programming
Graphics Programming
- linkDirectX manual(draft)
- linkLearning Modern 3D Graphics Programming(draft)
- linkIntroduction to Modern OpenGL
- linkGPU Gems
- linkGPU Gems 2-ch 8,14,18,29,30 as pdf
- linkGPU Gems 3
- Graphics Programming Black Book
- linkOpenGL Insights(chapters 22, 23, 28, 33, 39)
- linkShaderX series
Language Agnostic
Algorithms & Datastructures
- linkAlgorithms and Data-Structures(PDF)
- linkAlgorithms(draft)
- Binary Trees
- Clever Algorithms
- Computational Geometry: Algorithms and Applications(chapters 1 and 9, pseudo-code)
- Data Structures and Algorithms: Annotated Reference with Examples
- The Algorithm Design Manual
- Hacker's Delight(chapter 2, code)
- LEDA: A Platform for Combinatorial and Geometric Computing
- Planning Algorithms
- Linked List Basics
- Linked List Problems
- Open Data Structures
- Purely Functional Data Structures
Operating systems
- The Art of Unix Programming
- The Little Book of Semaphores- Allen B. Downey
- Operating Systems and Middleware(PDF and LaTeX)
Database
Networking
- High-Performance Browser Networking
- The TCP/IP Guide
- Understanding IP Addressing: Everything you ever wanted to know(PDF)
- ZeroMQ Guide
Compiler Design
Programming Paradigms
- Introduction to Functional Programming(class lectures and slides)
- Type Theory and Functional Programming
Parallel Programming
Software Architecture
- The Architecture of Open Source Applications
- Programming Pearls
- Seamless Object-Oriented Software Architecture
- Summary of the GoF Design Patterns
- How to write Unmaintainable Code
- OO Design
- Object-Oriented Reengineering Patterns
- Patterns and Practices: Application Architecture Guide 2.0
- The Definitive Guide to Building Code Quality
- Patterns of Software: Tales from the Software Community(PDF)
- Best Kept Secrets of Peer Code Review
- Domain Driven Design Quickly
- Essential Skills for Agile Development
Information Retrieval
Datamining
Mathematics
- Think Bayes: Bayesian Statistics Made Simple- Allen B. Downey
- linkThink Stats: Probability and Statistics for Programmers(PDF, code written in Python) - Allen B. Downey
- Mathematical Logic - an Introduction(PDF)
Misc
- 97 Things Every Programmer Should Know
- 97 Things Every Programmer Should Know - Extended
- How to Design Programs
- How to Think Like a Computer Scientist
- I Am a Bug
- Learn to Program
- Foundations of Computer Science- Al Aho and Jeff Ullman
- Foundations of Programming
- Structure and Interpretation of Computer Programs
- An Introduction to the Theory of Computation
- Programming Languages: Application and Interpretation
- Programming Methodology
- Category Theory for Computing Science
- The Cathedral and the Bazaar
- Communicating Sequential Processes (PDF)- Tony Hoare
- Come, Let's Play: Scenario-Based Programming Using Live Sequence Charts
- Computer Musings(lectures by Donald Knuth)
- How Computers Work
- Data-Intensive Text Processing with MapReduce(PDF)
- Designing Interfacesby Jennifer Tidwell
- Digital Signal Processing For Engineers and Scientists
- Distributed systems for fun and profit
- Don't Just Roll the Dice
- Essentials of Metaheuristicsby Sean Luke
- A Field Guide To Genetic Programming
- Flow based Programming
- Getting Real
- Getting started with Open source development(PDF)
- The Great Tree List Recursion Problem
- Guide to the Software Engineering Body of Knowledge
- Matters Computational
- Modeling Reactive Systems with Statecharts
- NASA Manager Handbook for Software Development(PDF)
- NASA Software Measurement Handbook
- PNG: The Definitive Guide
- Pointers And Memory
- Programming Reliable Systems (Joe Armstrong's PhD thesis)
- Producing Open Source Software
- Project Oberon(PDF)
- Security Engineering
- Small Memory Software
- The Art of Computer Programming(fascicles, mostly volume 4)
- Think Complexity- Allen B. Downey
- Introduction to High-Performance Scientific Computing- Victor Eijkhout
MOOC
Android
Autotools
ASP.NET MVC
Assembly Language
- Paul Carter's Tutorial on x86 Assembly
- Programming from the Ground Up(PDF)
- Software optimization resources by Agner Fog
Bash
- linkAdvanced Bash-Scripting Guide
- linkBash Guide for Beginnersby Machtelt Garrels
- linkLhunath's Bash Guide
- linkThe Command Line Crash Course(also a Powershell reference)
C / C++
- Beej's Guide to Network Programming
- Beej's Guide to C Programming
- linkThe C book
- C++ Annotations
- C++ GUI Programming With Qt 3
- CS106X Programming Abstractions in C++
- Essential C
- Learn C the hard way
- Matters Computational: Ideas, Algorithms, Source Code, by Jorg Arndt
- The new C standard - an annotated reference
- Object Oriented Programming in C(PDF)
- Software optimization resources by Agner Fog
- Thinking in C++, Second Edition
- Also see:The Definitive C++ Book Guide and List
Clojure
- linkClojure Programming
- linkClojure - Functional Programming for the JVM
- linkData Sorcery with Clojure
CoffeeScript
ColdFusion
D / DTrace
DB2
- Getting started with DB2 Express-C(PDF)
- Getting started with IBM Data Studio for DB2(PDF)
- Getting started with IBM DB2 development(PDF)
Delphi / Pascal
Django
Elasticsearch
Emacs
- linkGNU Emacs Manual, 17th Edition, v. 24.2
- linkAn Introduction to Programming in Emacs Lisp, 3rd Edition
Erlang
Flask
Flex
F Sharp
- The F# Survival Guide
- F Sharp Programmingin Wikibooks
- Real World Functional Programming(MSDN Chapters)
- Programming Language Concepts for Software Developers(PDF)
Forth
Git
Go
- linkThe Go Tutorial
- linkGo by Example
- linkLearning Go
- linkAn Introduction to Programming in Go
- linkNetwork programming with Go
Grails
Hadoop
- linkProgramming Pig- Alan Gates
Haskell
- Haskell and Yesod
- linkLearn You a Haskell
- Natural Language Processing for the Working Programmer
- linkParallel and Concurrent Programming in Haskell
- linkReal World Haskell
- linkWikibook Haskell
- linkYet Another Haskell Tutorial(PDF)
HTML / CSS
- linkDive Into HTML5(PDF)
- linkGA Dash
- linkHTML Dog Tutorials
- linkHTML5 Canvas- Steve Fulton & Jeff Fulton
- linkHTML5 for Publishers- Sanders Kleinfeld
- linkLearn CSS Layout
Icon
Java
- Artificial Intelligence - Foundation of Computational Agents
- Category wise tutorials - J2EE
- How to Think Like a Computer Scientist
- linkIntroduction to Programming Using Java- David J. Eck
- Java Application Development on Linux by Carl Albing and Michael Schwarz (PDF)
- The Java EE6 Tutorial(PDF)
- Java Thin-Client Programming
- Learning Java- Patrick Niemeyer
- OSGi in Practice(PDF)
- Sun's Java Tutorials
- Thinking in Java
JavaScript
- Crockford's JavaScript
- Eloquent JavaScript
- Essential Javascript & jQuery Design Patterns for Beginners
- JavaScript Essentials
- jQuery Fundamentals(starts with JavaScript basics)
- Mozilla Developer Network's JavaScript Guide
- linkJavaScript Allongé
- linkLearning JavaScript Design Patterns
- O'Reilly Programming JavaScript Applications - Early Release
Node.js
D3.js
LaTeX
Linux
- Advanced Linux Programming
- GNU Autoconf, Automake and Libtool
- GTK+/Gnome Application Development
- The Linux Development Platform (PDF)
- Linux Device Driversby Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman
- The Linux Kernel Module Programming Guide
- Secure Programming for Linux and Unix
- Linux from Scratch
Lisp
- Common Lisp the Language, 2nd Edition
- Common Lisp: A Gentle Introduction to Symbolic Computation- David S. Touretzky
- Common Lisp Quick Reference
- Let Over Lambda - 50 Years of Lisp
- Natural Language Processing in Lisp
- On Lisp
- Practical Common Lisp
- Successful Lisp: How to Understand and Use Common Lisp- David Lamkins
- Sketchy LISP- Nils Holm
Lua
- Programming In Lua(for version 5)
Mathematica
Maven
- Better Builds with Maven
- Maven by Example
- Maven: The Complete Reference
- Repository Management with Nexus
- Developing with Eclipse and Maven
Mercurial
.NET (C# / VB / Nemerle / Visual Studio)
- C# Essentials
- C# Programming - Wikibook
- C# Yellow Book(intro to programming)
- Charles Petzold's .NET Book Zero
- Data Structures and Algorithms with Object-Oriented Design Patterns in C#
- Entity Framework
- Moving to Microsoft Visual Studio 2010
- Nemerle
- Programmer's Heaven C# School Book(covers C# 1.0 and 2.0)
- Threading in C#
- Visual Basic Essentials
- Visual Studio Tips and Tricks(VS 2003-2005 only)
NoSQL
- CouchDB: The Definitive Guide
- The Little MongoDB Book
- The Little Redis Book
- The Little Riak Book
- Graph Databases
Oberon
Objective-C
OCaml
- Introduction to Objective Caml(PDF)
- Objective Caml for Scientists (first chapter only)
- Unix System Programming in OCaml
- Developing Applications With Objective Caml
- Real World OCaml
Oracle Server
- Oracle'sGuides and Manuals
Oracle PL/SQL
- PL/SQL Language Reference
- PL/SQL Packages and Types Reference
- Steven Feuerstein's PL/SQL Obsession - Videos and Presentations
Parrot / Perl 6
- Using Perl 6(work in progress)
Perl
- linkBeginning Perl
- Embedding Perl in HTML with Mason
- Essential Perl
- Extreme Perl
- linkHigher-Order Perl
- The Mason Book
- Modern Perl 5
- Perl & LWP
- Perl for the Web
- Perl Free Online EBooks(meta-list)
- Perl The Hard Way
- Practical mod_perl
- linkWeb Client Programming with Perl
PHP
- linkPHP Essentials
- Practical PHP Programming(wiki containing O'Reilly'sPHP In a Nutshell)
- linkSymfony2
- linkZend Framework: Survive the Deep End
- Laravel Framework
- Official Documentation (Offline Version)
- Code Happy(Laravel 3 Starter Book)
- Code Bright(Laravel 4 Starter Book)
PowerShell
Processing
Prolog
- Adventure in Prolog
- Applications of Prolog
- Building Expert Systems in Prolog
- Introduction to Prolog for Mathematicians
- Learn Prolog Now!
- Logic, Programming and Prolog (2ed)
- Natural Language Processing in Prolog
- Natural Language Processing Techniques in Prolog
- Prolog Programming A First Course
- Prolog Techniques
- Simply Logical
- Visual Prolog 7.2 for Tyros
PostgreSQL
Python
- Byte of Python
- linkData Structures and Algorithms in Python
- Dive into Python
- linkDive into Python 3
- Hacking Secret Cyphers with Python- Al Sweigart
- How to Think Like a Computer Scientist: Learning with Python
- linkInvent Your Own Computer Games With Python- Al Sweigart
- linkLearn Python The Hard Way
- Natural Language Processing with Python
- Python Bibliotheca
- Python Cookbook- David Beazley
- Python for Fun
- Python for Informatics: Exploring Information
- linkPython for you and me
- linkSnake Wrangling For Kids
- linkThink Python(PDF) - Allen B. Downey
R
Racket
Ruby
- The Bastards Book of Ruby
- linkLearn Ruby the hard way
- linkMacRuby: The Definitive Guide
- linkMr. Neighborly's Humble Little Ruby Book
- linkProgramming Ruby
- linkWhy's (Poignant) Guide to Ruby(mirror)
Ruby on Rails
Rust
Sage
Scala
- linkAnother tour of Scala
- linkExploring Lift(published earlier as "The Definitive Guide to Lift",PDF)
- linkLift
- linkPro Scala: Monadic Design Patterns for the Web
- linkProgramming in Scala, First Edition
- linkProgramming Scala
- linkScala By Example(PDF)
- linkScala School by Twitter
- linkA Scala Tutorial for Java programmers(PDF)
- linkXtrace
Scheme
- linkConcrete Abstractions: An Introduction to Computer Science Using Scheme
- The Scheme Programming LanguagelinkEdition 3,linkEdition 4
- linkSimply Scheme: Introducing Computer Science
Sed
Smalltalk
- linkDynamic Web Development with Seaside
- linkFree Online Smalltalk Books(meta-list)
- linkSqueak By Example(Smalltalk IDE)
Subversion
SQL (implementation agnostic)
- linkDeveloping Time-Oriented Database Applications in SQL
- linkUse The Index, Luke!: A Guide To SQL Database Performance
- linkLearn SQL The Hard Way
Teradata
Vim
- linkA Byte of Vim
- linkVim Recipes
- linkVi Improved -- Vimby Steve Oualline
- linkLearn Vimscript the Hard Way