You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
131 KiB
131 KiB
Original Contribution by George Stocker on Stack Overflow
Original Source: List of freely available programming books
Index
- Ada
- Agda
- Alef
- Android
- APL
- Arduino
- ASP.NET MVC
- Assembly Language
- AutoHotkey
- Autotools
- Awk
- Bash
- Basic
- BETA
- C
- C#
- C++
- Chapel
- Cilk
- Clojure
- COBOL
- CoffeeScript
- ColdFusion
- Cool
- Coq
- CUDA
- D
- Dart
- DB2
- Delphi / Pascal
- DTrace
- Elasticsearch
- Elixir
- Emacs
- Embedded Systems
- Erlang
- F#
- Firefox OS
- Flex
- Force.com
- Forth
- Fortran
- FreeBSD
- Git
- Go
- Graphical user interfaces
- Graphics Programming
- Groovy
- Hadoop
- Haskell
- Haxe
- HTML / CSS
- HTTP
- Icon
- iOS
- Isabelle/HOL
- J
- Java
- JavaScript
- Jenkins
- Julia
- Language Agnostic
- Algorithms & Datastructures
- Cellular Automata
- Cloud Computing
- Competitive Programming
- Compiler Design
- Database
- Datamining
- Information Retrieval
- Licensing
- Machine Learning
- Mathematics
- Misc
- MOOC
- Networking
- Open Source Ecosystem
- Operating systems
- Parallel Programming
- Partial Evaluation
- Professional Development
- Programming Paradigms
- Regular Expressions
- Reverse Engineering
- Security
- Software Architecture
- Standards
- Theoretical Computer Science
- Web Performance
- LaTeX / TeX
- Limbo
- Linux
- Lisp
- Livecode
- Lua
- MarkDown
- Mathematica
- MATLAB
- Maven
- Mercurial
- Mercury
- Meta-Lists
- MySQL
- Neo4J
- .NET Framework
- NoSQL
- Oberon
- Objective-C
- OCaml
- Octave
- OpenGL ES
- OpenMP
- OpenResty
- OpenSCAD
- Oracle PL/SQL
- Oracle Server
- Parrot / Perl 6
- PC-BSD
- Perl
- PHP
- PicoLisp
- PostgreSQL
- PowerShell
- Processing
- Prolog
- PureScript
- Python
- QML
- R
- Racket
- Raspberry Pi
- REBOL
- Ruby
- Rust
- Sage
- Scala
- Scheme
- Scilab
- Scratch
- Sed
- Smalltalk
- SQL (implementation agnostic)
- SQL Server
- Standard ML
- Subversion
- Swift
- Tcl
- Teradata
- Tizen
- TLA
- TypeScript
- Unix
- Verilog
- VHDL
- Vim
- Visual Basic
- Visual Prolog
- Web Services
- Windows 8
- Windows Phone
- Workflow
- xBase (dBase / Clipper / Harbour)
Meta-Lists
- 25 Free Computer Science Ebooks
- atariarchives.org atariarchives.org makes books, information, and software for Atari and other classic computers available on the Web.
- Bento
- Bitsavers.org
- Bookboon: IT & Programming
- Cheat Sheets (Free)
- Codingus
- conceptf1.blogspot.com
- Free Smalltalk Books, collected by Stéphane Ducasse
- Free Tech Books
- Hacker Shelf
- IBM Redbooks
- InfoQ Minibooks
- InTech: Computer and Information Science
- JSBooks - directory of free javascript ebooks
- Learn X in Y minutes
- Learneroo Resources to Learn Programming
- Microsoft Guides to Software
- Microsoft Press: Free E-Books
- Microsoft Technologies 1, including books on Windows Azure, SharePoint, Visual Studio Guide, Windows phone development, ASP.net, Office365, etc. collection by Eric Ligman
- Microsoft Technologies 2, including books on Windows Azure, SharePoint, Visual Studio Guide, Windows phone development, ASP.net, etc. collection by Eric Ligman
- MindView Inc
- O'Reilly's Commons
- O'Reilly's Open Books Project
- Papers we love
- Red Gate Books
- Stef's Free Online Smalltalk Books
- TechBooksForFree.com
- The Definitive C++ Book Guide and List
- Theassayer.org
- tutorialspoint
- Wikibooks: Programming
Graphics Programming
- Blender 3D: Noob to Pro
- DirectX manual (draft)
- GPU Gems
- GPU Gems 2
- GPU Gems 3
- Graphics Programming Black Book
- Grokking the GIMP
- Introduction to Modern OpenGL
- Learn OpenGL - Joey de Vries
- Learning Modern 3D Graphics Programming (draft)
- OpenGL - Concepts and illustrations.
- OpenGL Programming Guide (The Red Book)
- ShaderX series
- Tutorials for modern OpenGL
Graphical User Interfaces
- Best of Smashing Magazine
- Programming with gtkmm 3
- Search User Interfaces - Marti A. Hearst
- Working through Screens - Jacob Burghardt
Language Agnostic
Algorithms & Data Structures
- A Field Guide To Genetic Programming
- Algorithmic Graph Theory
- Algorithms, 4th Edition - Robert Sedgewick and Kevin Wayne
- Algorithms and Automatic Computing Machines (1963) - B. A. Trakhtenbrot
- Algorithms and Complexity (PDF)
- Algorithms and Data-Structures (PDF)
- Algorithms Course Materials - Jeff Erickson
- Analysis and Design of Algorithms - Sandeep Sen, IIT Delhi
- Animated Algorithm and Data Structure Visualization (Resource)
- Binary Trees (PDF)
- Clever Algorithms
- CS Unplugged: Computer Science without a computer
- Data Structures - Prof. Subhashis Banerjee, IIT Delhi
- 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)
- Elementary Algorithms - Larry LIU Xinyu
- Foundations of Computer Science - Al Aho and Jeff Ullman
- Handbook of Graph Drawing and Visualization
- Lectures Notes on Algorithm Analysis and Computational Complexity (Fourth Edition) - Ian Parberry (use form at bottom of license)
- LEDA: A Platform for Combinatorial and Geometric Computing
- Linked List Basics (PDF)
- Linked List Problems (PDF)
- Matters Computational: Ideas, Algorithms, Source Code (PDF)
- Open Data Structures: An Introduction - Pat Morin
- Planning Algorithms
- Problems on Algorithms (Second Edition) - Ian Parberry (use form at bottom of license)
- Purely Functional Data Structures (PDF)
- Sequential and parallel sorting algorithms
- Text Algorithms (PDF)
- The Algorithm Design Manual
- The Art of Computer Programming - Donald Knuth (fascicles, mostly volume 4)
- The Design of Approximation Algorithms (PDF)
- The Great Tree List Recursion Problem (PDF)
- Think Complexity (PDF)
Cellular Automata
- A New Kind of Science - Stephen Wolfram
- Cellular Automata Books
Cloud Computing
Competitive Programming
Compiler Design
- An Introduction to GCC - Brian Gough
- Basics of Compiler Design (Anniversary Edition) - Torben Mogensen
- Compiler Construction (PDF)
- Compiler Design in C - Allen Holub, Prentice Hall, 1990
- Compiler Design: Theory, Tools, and Examples, C/C++ Edition - Seth D. Bergmann
- Compiler Design: Theory, Tools, and Examples, Java Edition - Seth D. Bergmann
- Compiling Scala for the Java Virtual Machine - Michel Schinz (PDF)
- Compiling Techniques - F.R.A. Hopgood, Macdonald, 1969
- Implementing Functional Languages: A Tutorial - Simon Peyton Jones, David Lester
- Let's Build a Compiler (PDF)
- Linkers and Loaders - John R. Levine
- Practical and Theoretical Aspects of Compiler Construction (class lectures and slides)
Computer Vision
- Computer Vision - Dana Ballard, Chris Brown
- Computer Vision: Algorithms and Applications - Richard Szeliski
- Computer Vision: Models, Learning, and Inference - Simon J.D. Prince
- Programming Computer Vision with Python - Jan Erik Solem
Database
- Big Data Now: Current Perspectives from O'Reilly Radar
- Database Fundamentals (PDF)
- Foundations of Databases
- Readings in Database Systems, 5th Ed.
- Temporal Database Management - Christian S. Jensen
- The Theory of Relational Databases
Datamining
- A Programmer's Guide to Data Mining - Ron Zacharski (Draft)
- Data Jujitsu: The Art of Turning Data into Product (Just fill the fields with any values)
- Data Mining Algorithms In R
- Internet Advertising: An Interplay among Advertisers, Online Publishers, Ad Exchanges and Web Users (PDF)
- Introduction to Data Science - Jeffrey Stanton
- Mining of Massive Datasets
- School of Data Handbook
- Theory and Applications for Advanced Text Mining
Information Retrieval
Licensing
- Creative Commons: a user guide - Simone Aliprandi
- The Public Domain: Enclosing the Commons of the Mind - James Boyle
Machine Learning
- A Brief Introduction to Neural Networks
- A Course in Machine Learning (PDF)
- A First Encounter with Machine Learning (PDF)
- An Introduction to Statistical Learning - Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani
- Bayesian Reasoning and Machine Learning
- Gaussian Processes for Machine Learning
- Information Theory, Inference, and Learning Algorithms
- Introduction to Machine Learning - Amnon Shashua
- Learning Deep Architectures for AI (PDF)
- Machine Learning
- Machine Learning, Neural and Statistical Classification
- Neural Networks and Deep Learning
- Probabilistic Models in the Study of Language (Draft, with R code)
- Reinforcement Learning: An Introduction
- The Elements of Statistical Learning - Trevor Hastie, Robert Tibshirani, and Jerome Friedman
- The LION Way: Machine Learning plus Intelligent Optimization
- The Python Game Book
Mathematics
- A First Course in Linear Algebra - Robert A. Beezer
- Advanced Algebra - Anthony W. Knapp (PDF)
- An Introduction to Statistics - Thomas Haslwanter (using Python)
- Basic Algebra - Anthony W. Knapp (PDF)
- Bayesian Methods for Hackers - Cameron Davidson-Pilon
- Calculus Made Easy - Silvanus P. Thompson (PDF)
- CK-12 Probability and Statistics - Advanced
- Collaborative Statistics
- Computational Geometry
- Concepts & Applications of Inferential Statistics
- Differential Equations - Paul Dawkins (PDF, use form to download)
- Discrete Mathematics - Dr. Arbind K Lal, IIT Kanpur (PDF)
- Elementary Differential Equations - William F. Trench (PDF)
- Essentials of Metaheuristics - Sean Luke
- Graph Theory
- Introduction to Probability - Charles M. Grinstead and J. Laurie Snell
- Introduction to Probability and Statistics Spring 2014
- Introduction to Statistical Thought - Michael Lavine
- Kalman and Bayesian Filters in Python
- Knapsack Problems - Algorithms and Computer Implementations - Silvano Martello and Paolo Toth
- Lecture Notes of Linear Algebra - Dr. P. Shunmugaraj, IIT Kanpur (PDF)
- Linear Algebra - Dr. Arbind K Lal, IIT Kanpur (PDF)
- Linear Algebra (PDF)
- Linear Algebra: An Introduction to Mathematical Discourse - Jim Hefferon
- Linear Algebra, Theory And Applications - Kenneth Kuttler (PDF)
- Mathematical Logic - an Introduction (PDF)
- Mathematics, MTS 101A - P. Shunmugaraj, IIT Kanpur
- Notes on Differential Equations - Robert E. Terrell (PDF)
- Number Theory - Holden Lee MIT
- OpenIntro Statistics
- Ordinary Differential Equations
- Power Programming with Mathematica - David B. Wagner
- Probability and Statistics Cookbook
- Probability and Statistics EBook
- Statistics Done Wrong - Alex Reinhart
- Think Bayes: Bayesian Statistics Made Simple - Allen B. Downey
- Think Stats: Probability and Statistics for Programmers - Allen B. Downey (using Python)
Mathematics For Computer Science
- Discrete Structures for Computer Science: Counting, Recursion, and Probability - Michiel Smid
- Mathematics for Computer Science (May 2015 Version) - Eric Lehman, F Thomson Leighton and Albert R Meyer (PDF)
Misc
- 97 Things Every Programmer Should Know - Extended
- A Mathematical Theory of Communication - Claude E.Shannon
- Asterisk™: The Definitive Guide
- Barcode Overview (PDF)
- Come, Let's Play: Scenario-Based Programming Using Live Sequence Charts
- Communicating Sequential Processes - Tony Hoare (PDF)
- Computer Musings (lectures by Donald Knuth)
- CS For All
- Culture & Empire: Digital Revolution (PDF)
- Designing for Performance - Lara Hogan
- Designing Interfaces - Jennifer Tidwell
- DevDocs - Documents for Developers in 1 place
- DevOps For Dummies (IBM Edition) (PDF)
- Digital Signal Processing For Communications
- Digital Signal Processing For Engineers and Scientists
- Distributed systems for fun and profit
- Docker Jumpstart
- "DYNAMIC LINKED LIBRARIES": Paradigms of the GPL license in contemporary software - Luis A. Enríquez
- Flow based Programming
- Foundations of Programming (PDF)
- Game Programming Patterns - Bob Nystrom
- Getting Real
- Hacknot: Essays on Software Development - Ed Johnson
- High-Performance Scientific Computing (class lectures and slides)
- How Computers Work
- How to Become a Programmer (PDF)
- How to Think Like a Computer Scientist - Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers
- I Am a Bug
- Image Processing in C: Analyzing and Enhancing Digital Images - Dwayne Phillips
- Information Technology and the Networked Economy (PDF)
- Learn to Program
- Learning 30 Technologies in 30 Days: A Developer Challenge - Shekhar Gulati
- Linked Data Patterns: A pattern catalogue for modelling, publishing, and consuming Linked Data - Leigh Dodds, Ian Davis
- Magic Ink: Information Software and The Graphical Interface - Bret Victor
- Mobile Developer's Guide to the Galaxy
- Modeling Reactive Systems with Statecharts
- Mother Tongues of Computer Languages (PNG)
- Networks, Crowds, and Markets: Reasoning About a Highly Connected World
- Object-Oriented Reengineering Patterns - Serge Demeyer, Stéphane Ducasse and Oscar Nierstrasz
- Open Government;Collaboration, Transparency, and Participation in Practice
- Packt Publishing: A free book every day - (PDF, ePub, Mobi, Kindle) (account required)
- PDQ: Pretty Darn Quick: An Agile, All-Purpose Methodology - Jeff Franz-Lien
- Philosophy of Computer Science (PDF)
- PNG: The Definitive Guide
- Pointers And Memory (PDF)
- Principles of Computer System Design (PDF)
- Programmer's Motivation for Beginners
- Programming with Unicode
- Project Oberon (PDF)
- Record-Playback Test Automation: Sahi & Selenium IDE: Critical Evaluation of Record-Playback Automation Tools - Shashikant Jagtap
- Security Engineering
- Small Memory Software
- SVG Essentials
- The Quest for Artificial Intelligence: A History of Ideas and Achievements - Nils J. Nilsson (PDF)
- The Z Notation: A Reference Manual, Second Edition - J. M. Spivey (PDF)
MOOC
Networking
- 802.11ac: A Survival Guide - Matthew Gast
- An Introduction to Computer Networks (HTML, PDF, Kindle)
- Bits, Signals, and Packets: An Introduction to Digital Communications and Networks
- Code Connected vol.1 (PDF) (book on ZeroMQ)
- Computer Networking : Principles, Protocols and Practice (HTML, ePub, PDF, Kindle)
- High-Performance Browser Networking
- HTTP Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- HTTP2 Explained - Daniel Stenberg
- The TCP/IP Guide
- Understanding IP Addressing: Everything you ever wanted to know (PDF)
- ZeroMQ Guide
Open Source Ecosystem
- Data Journalism Handbook
- Free as in Freedom (PDF)
- Free Software, Free Society
- Getting started with Open source development (PDF)
- How to get started with open source (ePub & ODT)
- Innovation Happens Elsewhere
- Open Advice: FOSS: What We Wish We Had Known When We Started
- Producing Open Source Software
- The Architecture of Open Source Applications: Vol. 1: Elegance, Evolution, and a Few Fearless Hacks; Vol. 2: Structure, Scale, and a Few More Feerless Hacks
- The Art of Community - Jono Bacon (PDF)
- The Cathedral and the Bazaar - Eric S. Raymond
- The Future of the Internet
- The Open Source Way
- The Performance of Open Source Applications
- The Wealth of Networks: How Social Production Transforms Markets and Freedom - Yochai Benkler
Operating systems
- Computer Science from the Bottom Up
- How to Make a Computer Operating System (Work in Progress)
- Operating Systems and Middleware (PDF and LaTeX)
- Operating Systems: Three Easy Pieces (PDF)
- Practical File System Design: The Be File System - Dominic Giampaolo (PDF)
- The Art of Unix Programming - Eric S. Raymond
- The Design and Implementation of the Anykernel and Rump Kernels - Antti Kantee
- The little book about OS development - Erik Helin, Adam Renberg
- The Little Book of Semaphores - Allen B. Downey
- Think OS: A Brief Introduction to Operating Systems - Allen B. Downey (PDF)
- UNIX Application and System Programming, lecture notes - Prof. Stewart Weiss (PDF)
- Xv6, a simple Unix-like teaching operating system
Parallel Programming
- High Performance Computing - Charles Severance & Kevin Dowd (PDF, ePUB)
- High Performance Computing Training (LLNL materials)
- High-Performance Scientific Computing (class lectures and slides)
- How to Write Parallel Programs
- 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? - Paul E. McKenney
- Programming on Parallel Machines; GPU, Multicore, Clusters and More - Norm Matloff
- The OpenCL Programming Book
Partial Evaluation
- Partial Evaluation and Automatic Program Generation - (PDF) Jones, Gomard and Sestoft
Professional Development
- Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman - David H. Hoover and Adewale Oshineye
- Confessions of an IT Manager (RedGate, By Phil Factor)
- Don't Just Roll the Dice (PDF) (RedGate, By Neil Davidson)
- How to Do What You Love & Earn What You’re Worth as a Programmer (Leanpub, By Reginald Braithwaite)
- What I've Learned From Failure (Leanpub, By Reginald Braithwaite)
- Why programmers work at night (Leanpub, By Swizec Teller)
Programming Paradigms
- Introduction to Functional Programming (class lectures and slides)
- Mostly Adequate Guide to Functional Programming
- Type Theory and Functional Programming
Regular Expressions
- Learn Regex The Hard Way - Zed. A. Shaw
- RexEgg
- The 30 Minute Regex Tutorial - Jim Hollenhorst
- The Bastards Book of Regular Expressions: Finding Patterns in Everyday Text - Dan Nguyen
Reverse Engineering
- BIOS Disassembly Ninjutsu Uncovered 1st Edition - Darmawan Salihun (PDF)
- Hacking the Xbox: An Introduction to Reverse Engineering - Andrew "bunnie" Huang
- iOS App Reverse Engineering (PDF)
- Reverse Engineering for Beginners - Dennis Yurichev (PDF)
Security
- Crypto 101 - Crypto for everyone
- CryptoParty Handbook
- Handbook of Applied Cryptography
- How to deal with Passwords
- Intrusion Detection Systems with Snort (PDF)
- OpenSSL Cookbook
- OWASP Top 10 for .NET Developers
- Security Engineering
Software Architecture
- Agile Planning: From Ideas to Story Cards - Launch School
- Architectural Styles and the Design of Network-based Software Architectures - Roy Thomas Fielding
- Best Kept Secrets of Peer Code Review
- Data-Oriented Design
- Domain Driven Design Quickly
- DSL Engineering: Designing, Implementing and Using Domain-Specific Languages - Markus Voelter
- Essential Skills for Agile Development
- Guide to the Software Engineering Body of Knowledge
- How to Design Programs
- How to Write Unmaintainable Code
- Kanban and Scrum - making the most of both
- Kanban for skeptics (Leanpub, by Nick Oostvogels)
- Naked objects - Richard Pawson (PDF)
- NASA Manager Handbook for Software Development (PDF)
- OAuth - The Big Picture
- Object-Oriented Reengineering Patterns
- Patterns and Practices: Application Architecture Guide 2.0
- Patterns of Software: Tales from the Software Community (PDF)
- Practicing Domain-Driven Design - Scott Millett
- Scrum and XP from the Trenches
- Seamless Object-Oriented Software Architecture (PDF)
- Software Engineering for Internet Applications
- Web API Design
- Working with Web APIs - Launch School
- Your API Is Bad (Leanpub, by Paddy Foran)
Standards
Theoretical Computer Science
- An Introduction to the Theory of Computation
- Building Blocks for Theoretical Computer Science - Margaret M. Fleck
- Category Theory for Computing Science (PDF)
- Homotopy Type Theory: Univalent Foundations of Mathematics (PDF)
- Introduction to Computer Science - Prof. Subhashis Banerjee, IIT Delhi
- Introduction to Computing
- Introduction to Theory of Computation - Anil Maheshwari and Michiel Smid (PDF)
- Models of Computation - John E. Savage
- Network Science
- Practical Foundations for Programming Languages, Preview - Robert Harper (PDF)
- Principles of Programming Languages - Scott F. Smith
- Programming and Programming Languages - Shriram Krishnamurthi
- Programming in Martin-Löf's Type Theory - Bengt Nordstroem
- Programming Languages: Application and Interpretation (2nd Edition)
- Semantics with Applications: A Formal Introduction - Hanne Riis Nielson, Flemming Nielson
- Structure and Interpretation of Computer Programs
- Structure and Interpretation of Computer Programs
- Theory of Computation - Sandeep Sen, IIT Delhi
- Think Complexity - Allen B. Downey
Web Performance
- Book of Speed - Stoyan Stefanov
- High Performance Browser Networking - Ilya Grigorik
- Mature Optimization - Carlos Bueno (PDF)
Ada
- A Guide to Ada for C and C++ Programmers (PDF)
- Ada Distilled (PDF)
- Ada Programming
- Ada Reference Manual - ISO/IEC 8652:2012(E) Language and Standard Libraries (PDF)
- The Big Online Book of Linux Ada Programming
Agda
Alef
Android
- Agile Android Software Development - Etienne Savard (PDF, epub, mobi)
- Android 4 App Development Essentials
- Android Programming Guide for Beginners (PDF - need email confirmation)
- Android Programming Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- CodePath Android Cliffnotes
- Coreservlets Android Programming Tutorial
- Expert Android and Eclipse development knowledge
- Google Android Developer Training
- Styling Android
- The Busy Coder's Guide to Android Development (PDF - older versions)
- Tutorial Point Android Tutorial (PDF)
APL
- A Practical Introduction to APL1 & APL2
- A Practical Introduction to APL3 & APL4
- Mastering Dyalog APL (PDF)
Arduino
- Arduino Programming Notebook - Brian Evans
- Introduction to Arduino
- Introduction to Arduino : A piece of cake! - Alan G. Smith
ASP.NET MVC
Assembly Language
- An introduction to reverse engineering for beginners
- Assembly Language Succinctly (PDF)
- Paul Carter's Tutorial on x86 Assembly
- PC Assembly Language - Paul A. Carter
- Professional Assembly Language (PDF)
- Programming from the Ground Up (PDF)
- Ralf Brown's Interrupt List
- Software optimization resources by Agner Fog
- The Art of Assembly Language Programming
- The Second Book Of Machine Language
- Wizard Code
- x86 Assembly
Non-X86
- Easy 6502 - Nick Morgan
- Machine Code for Beginners [Z80 and 6502 CPUs] - Lisa Watts and Mike Wharton (PDF)
- Machine Language for Beginners - Richard Mansfield [6502 CPU]
- Programmed Introduction to MIPS Assembly Language
AutoHotkey
Autotools
Awk
- A User's Guide for GNU AWK
- An Awk Primer
- Awk - Bruce Barnett
Bash
- Advanced Bash-Scripting Guide
- Bash Guide for Beginners - Machtelt Garrels
- BASH Programming- Mike G mikkey
- Bash Reference Manual
- Conquering the Command Line - Mark Bates
- Getting Started with BASH
- Google Shell Style Guide
- Introduction to the Command Line - Launch School
- Lhunath's Bash Guide
- Linux Shell Scripting Tutorial - A Beginner's Handbook
- The Bash Academy
- The Command Line Crash Course (also a Powershell reference)
- Writing Shell Scripts - William E. Shotts, Jr.
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
- A beginner's guide to Gambas
- BASIC programming language - Wikibooks
- How To Gambas3 Guides
- Pick/Basic: A Programmer's Guide - Jonathan E. Sisk
- Visual Basic Essentials
BETA
- Object-Oriented Programming in the BETA Programming Language - Ole Lehrmann Madsen, Birger Møller-Pedersen, Kristen Nygaard
C
- A Tutorial on Pointers and Arrays in C
- Beej's Guide to C Programming
- Beej's Guide to Network Programming
- Build Your Own Lisp
- C Programming - Wikibooks
- Deep C
- Essential C (PDF)
- Learn C the hard way
- Modern C (PDF)
- Object Oriented Programming in C (PDF)
- Programming in C - Bharat Kinariwala & Tep Dobry
- The C book
- The Craft of Text Editing or A Cookbook for an Emacs - Craig A. Finseth
- The GNU C Programming Tutorial (PDF)
- The little book about OS development - Erik Helin, Adam Renberg
- The New C Standard - An Annotated Reference
- TONC GBA Programming - Game Boy Advance Development
- Using C on the UNIX System - David A. Curry
C Sharp
- Beginners Guide to C# and the.NET Micro Framework (PDF)
- C# Essentials
- C# Programming - Wikibook
- C# Yellow Book (intro to programming)
- Data Structures and Algorithms with Object-Oriented Design Patterns in C#
- Dissecting a C# Application - Christian Holm, Bernhard Spuida, Mike Kruger
- Fundamentals of Computer Programming with C# - Svetlin Nakov
- Threading in C#
C++
- C++ Annotations
- C++ Cookbook (PDF)
- C++ GUI Programming With Qt 3
- C++ Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- C++ Tricks
- CS106X Programming Abstractions in C++
- Financial Numerical Recipes in C++ - Bernt Arne Ødegaard
- Game Programming Patterns
- Google's C++ Style Guide
- How To Think Like a Computer Scientist: C++ Version - Allen B. Downey
- Introduction to Design Patterns in C++ with Qt (PDF)
- Joint Strike Fighter, C++ Coding Standards, by Bjarne Stroustrup (PDF)
- Learn C++. (PDF, Online)
- Matters Computational: Ideas, Algorithms, Source Code, by Jorg Arndt (PDF)
- Open Data Structures (In C++) (PDF)
- Software Design Using C++ - Br. David Carlson and Br. Isidore Minerd
- Software optimization resources by Agner Fog
- The Boost C++ libraries
- The Rook's Guide to C++ (PDF)
- Thinking in C++, Second Edition, Vol. 1. - Bruce Eckel (Vol. 2) (ZIP)
Chapel
Cilk
Clojure
- A Brief Beginner’s Guide To Clojure
- Clojure - Functional Programming for the JVM
- Clojure Cheat Sheet
- Clojure Cookbook
- Clojure Distilled Beginner Guide
- Clojure for the Brave and True
- Clojure in Small Pieces - Rich Hickey (PDF)
- Clojure Koans
- Clojure Programming
- ClojureScript Koans
- Data Sorcery with Clojure
- Modern cljs
- SICP Distilled - An idiosyncratic tour of SICP in Clojure
- The Clojure Style Guide
COBOL
- COBOL Programming Fundamental (PDF)
- Enterprise COBOL for z/OS documentation library
- Introduction to the COBOL Language
- OpenCOBOL 1.1 - Programmer's Guide (PDF)
CoffeeScript
- CoffeeScript Cookbook
- CoffeeScript Ristretto - Reginald Braithwaite
- Hard Rock CoffeeScript
- Smooth CoffeeScript
- The Little Book on CoffeeScript
ColdFusion
Cool
Coq
CUDA
D
Dart
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
DTrace
Elasticsearch
Elixir
- 30 Days of Elixir - Tim Morgan (HTML)
- Études for Elixir (HTML)
- Getting Started Guide (HTML)
- Learning Elixir - Joseph Kain Blog (HTML)
Emacs
- An Introduction to Programming in Emacs Lisp, 3rd Edition
- GNU Emacs Lisp Reference Manual
- GNU Emacs Manual, 17th Edition, v. 24.2
Embedded Systems
- Control and Embedded Systems (HTML)
- Discovering the STM32 Microcontroller (PDF)
- Introduction to Microcontrollers (HTML)
Erlang
- Concurrent Programming in ERLANG (PDF)
- Erlang Handbook (PDF)
- Erlang Programming (HTML)
- Études for Erlang - J. David Eisenberg
- Getting Started with Erlang User's Guide (HTML)
- Learn You Some Erlang For Great Good - Frederic Trottier-Hebert
- Making reliable distributed systems in the presence of software errors - Joe Armstrong (PDF)
- Stuff Goes Bad: Erlang in Anger - Fred Herbert (PDF)
F Sharp
- F# Programming in Wikibooks
- F# Succinctly, SyncFusion (PDF, Kindle) (Just fill the fields with any values)
- Programming Language Concepts for Software Developers (PDF)
- Real World Functional Programming (MSDN Chapters)
Flex
Firefox OS
Force.com
- Developer Workbooks
- Force.com Fundamentals
- Force.com Platform Fundamentals: An Introduction to Custom Application Development in the Cloud
- Heroku Postgres (PDF)
Forth
- A Beginner's Guide to Forth
- And so Forth... (PDF)
- Programming Forth (PDF)
- Starting Forth
- Thinking Forth
- Thoughtful Programming and Forth
Fortran
- Fortran programming language - Wikibooks
- Introduction to fortran 95 and numerical computing: a jump-start for scientists and engineers (PDF)
- Self Study Guide: Programming in Fortran 95 (PDF)
FreeBSD
Git
- A practical git introduction
- A Visual Git Reference - Mark Lodato
- Conversational Git
- git - the simple guide
- Git for Computer Scientists
- Git From The Bottom Up (PDF)
- Git Immersion
- Git In The Trenches
- Git internals - Scott Chacon (PDF)
- Git Magic
- Git Pocket Guide - Richard E. Silverman
- Git Reference
- Git Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- Git Workflows
- GitHub Cheat Sheet - Tim Green (Markdown)
- Intoduction to Git and Github - Launch School
- Learn Enough Git to be Dangerous - Michael Hartl
- Learn Git - Learn Version Control with Git - Tobias Günther
- Pro Git - Scott Chacon
- Pro Git Reedited - Jon Forrest
- Think Like (a) Git: A Guide for the Perplexed
- Version Control by Example (Mercurial, Subversion, Verasity)
Go
- An Introduction to Programming in Go
- Build Web Application with Golang
- Building Web Apps with Go
- Effective Go
- Go Bootcamp - Matt Aimonetti
- Go by Example
- Learning Go
- Let's learn Go!
- Network programming with Go
- Practical Cryptography With Go
- The Go Tutorial
- The Little Go Book
Groovy
Gradle
- Building and Testing with Gradle
- Building Java Projects with Gradle
- Gradle User Guide - Hans Dockter, Adam Murdoch (PDF)
Grails
- Getting Started with Grails
- Grails Tutorial for Beginners
- The Grails Framework - Reference Documentation - Graeme Rocher, Peter Ledbrook, Marc Palmer, Jeff Brown, Luke Daley, Burt Beckwith, Lari Hotari (PDF)
Spock Framework
- Spock Framework Reference Documentation - Peter Niederwieser
- Spock Intro - Ed Gibbs
Hadoop
- Cloudera Impala - John Russel
- Data-Intensive Text Processing with MapReduce (Jimmy Lin and Chris Dyer) (PDF)
- Hadoop Illuminated - Mark Kerzner & Sujee Maniyam
- Programming Pig - Alan Gates
Haskell
- A Gentle Introduction to Haskell
- Anatomy of Programming Languages - William R. Cook
- Beautiful Code, Compelling Evidence (PDF)
- Exploring Generic Haskell - Andres Löh (PDF)
- Haskell and Yesod
- Haskell no panic
- Haskell web Programming (Yesod tutorial)
- Introduction to Haskell - Brent Yorgey
- Learn Haskell Fast and Hard
- Learn You a Haskell for Great Good - Miran Lipovaca
- Parallel and Concurrent Programming in Haskell - Simon Marlow
- Real World Haskell
- Speeding Through Haskell
- The Haskell Road to Logic, Math and Programming (PDF)
- The Haskell School of Music (PDF) (work in progress)
- Wikibook Haskell
- Yet Another Haskell Tutorial (PDF)
Haxe
- Flambe Handbook
- Haxe and JavaScript - Matthijs Kamstra (wikibook)
- Haxe Manual - Haxe Foundation (PDF, HTML)
- HaxeFlixel Handbook (HTML)
- Kha Handbook
- OpenFL Handbook
HTML / CSS
- A beginner's guide to HTML&CSS
- A free guide to learn HTML and CSS
- Adaptive Web Design - Aaron Gustafson
- An advanced guide to HTML&CSS
- Canvassing
- Code Guide: Standards for developing flexible, durable, and sustainable HTML and CSS - Mark Otto
- Dive Into HTML5 - Mark Pilgrim (PDF)
- GA Dash
- Google's HTML/CSS Style Guide
- HTML Canvas Deep Dive - Josh Marinacci
- HTML Dog Tutorials
- HTML5 Canvas - Steve Fulton & Jeff Fulton
- HTML5 for Publishers - Sanders Kleinfeld
- HTML5 For Web Designers - Jeremy Keith
- HTML5 Shoot 'em Up in an Afternoon - Bryan Bibat
- Learn CSS Layout
- Learn CSS Layout the pedantic way
- Scalable and Modular Architecture for CSS - Jonathan Snook
- Web Audio API - Boris Smus
Bootstrap
- Twitter Bootstrap 3 Succinctly (PDF, Kindle) (Just fill the fields with any values)
- Twitter Bootstrap Succinctly (PDF, Kindle) (Just fill the fields with any values)
HTTP
- Introduction to HTTP - Launch School
Icon
iOS
- Cocoa Dev Central
- iOS 8 App Development Essentials
- iOS Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- NSHipster (Resource)
- Start Developing iOS Apps (Swift) (HTML)
- Start Developing iOS Apps Today (Objective-C) - Last updated 22.10.2013 (PDF)
Isabelle/HOL
- Concrete Semantics - A Proof Assistant Approach by Tobias Nipkow and Gerwin Klein (PDF)
- Isabelle/HOL - A Proof Assistant for Higher-Order Logic by Tobias Nipkow and Lawrence C. Paulson and Markus Wenzel (PDF)
J
- Arithmetic by Kenneth E Iverson (PDF)
- Brief Reference by Chris Burke and Clifford Reiter (PDF)
- Calculus by Kenneth E Iverson (PDF)
- Computers and Mathematical Notation by Kenneth E Iverson
- Concrete Math Companion by Kenneth E Iverson (PDF)
- Easy J by Linda Alvord, Norman Thomson (PDF, Word DOC)
- Exploring Math by Kenneth E Iverson (PDF)
- J for C Programmers by Henry Rich (PDF, Word 2003)
- J Primer
- J Reference Card (PDF)
- Learning J by Roger Stokes- online
- Math for the Layman by Kenneth E Iverson (zipped html+images)
Java
- 3D Programming in Java - Daniel Selman (PDF)
- Apache Jakarta Commons: Reusable Java Components - Will Iverson (PDF)
- Artificial Intelligence - Foundation of Computational Agents
- Cadmus: A Primer in Java - Hashan Punchihewa, Joseph Bills et al.
- Category wise tutorials - J2EE
- Core Servlets and JavaServer Pages - Marty Hall and Larry Brown
- Data Structures and Algorithms with Object-Oriented Design Patterns in Java
- Data Structures in Java for the Principled Programmer (PDF)
- Google's Java Style Guide
- Introduction to Computer science using Java
- Introduction to Programming in Java - Robert Sedgewick and Kevin Wayne
- Introduction to Programming Using Java - David J. Eck
- JAAS in Action
- Java: A Beginner's Guide - Oracle (PDF)
- Java Application Development on Linux by Carl Albing and Michael Schwarz (PDF) (PDF)
- Java Programming for Kids, Parents and Grandparents - Yakov Fain
- Java Thin-Client Programming
- Learning Java (4th Edition) - Patrick Niemeyer
- NIO Framework (PDF)
- OOP - Learn Object Oriented Thinking & Programming - Rudolf Pecinovsky
- Open Data Structures (in Java) (PDF)
- OSGi in Practice (PDF)
- Processing XML with Java (A Guide to SAX, DOM, JDOM, JAXP, and TrAX) - Elliotte Rusty Harold
- Sun's Java Tutorials
- The ABC of PDF with iText: PDF Syntax essentials
- The Java EE6 Tutorial (PDF)
- The Java EE7 Tutorial (PDF)
- 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
- Think Java: How to Think Like a Computer Scientist - Allen B. Downey
- Thinking in Java
- UML For Java Programmers - Robert Cecil Martin (PDF) (PDF)
- Welcome to Java for Python Programmers - Brad Miller
- Welcome to the Java Workshop - An Apache Project
- What's New in Java 8 - Adam L. Davis
Spring
- Spring Framework Reference Documentation - Rod Johnson, Juergen Hoeller, Keith Donald, Colin Sampaleanu, Rob Harrop, Thomas Risberg, Alef Arendsen, Darren Davison, Dmitriy Kopylenko, Mark Pollack, Thierry Templier, Erwin Vervaet, Portia Tung, Ben Hale, Adrian Colyer, John Lewis, Costin Leau, Mark Fisher, Sam Brannen, Ramnivas Laddad, Arjen Poutsma, Chris Beams, Tareq Abedrabbo, Andy Clement, Dave Syer, Oliver Gierke, Rossen Stoyanchev, Phillip Webb, Rob Winch, Brian Clozel, Stephane Nicoll, Sebastien Deleuze (PDF)
Spring Boot
- Spring Boot Reference Guide - Phillip Webb, Dave Syer, Josh Long, Stéphane Nicoll, Rob Winch, Andy Wilkinson, Marcel Overdijk, Christian Dupuis (PDF, EPUB)
Spring Security
- Spring Security Reference - Ben Alex, Luke Taylor, Rob Winch
Wicket
JavaScript
- Basic JavaScript for the impatient programmer - Dr. Axel Rauschmayer
- Book of Modern Frontend Tooling
- Crockford's JavaScript - Douglas Crockford
- Dev Docs
- Developing Backbone.js Applications - Addy Osmani
- Eloquent JavaScript 2nd edition - Marijn Haverbeke
- Exploring ES6 - Dr. Axel Rauschmayer
- Google JavaScript Style Guide
- Human Javascript
- JavaScript Allongé - Reginald Braithwaite
- JavaScript Bible (PDF)
- JavaScript Enlightenment - Cody Lindley
- JavaScript Essentials
- JavaScript For Cats
- JavaScript Fundamentals, Plus a Dash Of JQuery - for dinner ladies
- JavaScript Garden (Maintained by Tim Ruffles)
- JavaScript Patterns Collection - Shi Chuan
- JavaScript Spessore - Reginald Braithwaite
- Javascript Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- JavaScript the Right Way
- jQuery Fundamentals (starts with JavaScript basics)
- JS Robots (PDF)
- Leaflet Tips and Tricks: Interactive Maps Made Easy - Malcolm Maclean
- Learn to Code JavaScript by Playing a Game
- Learning JavaScript Design Patterns - Addy Osmani
- Managing Space and Time with JavaScript - Book 1: The Basics - Noel Rappin
- Marionette Exposé: Learn to write modular Javascript applicatons using Backbone Marionette and RequireJS/AMD - Jack Killilea
- Mozilla Developer Network's JavaScript Guide
- O'Reilly Programming JavaScript Applications
- Oh My JS (Leanpub, by Azat Mardanov)
- Patterns For Large-Scale JavaScript Application Architecture - Addy Osmani
- Speaking JavaScript - Dr. Axel Rauschmayer
- The JavaScript Tutorial
- The Problem with Native JavaScript APIs (PDF)
- Understanding ECMAScript 6 (Leanpub, by Nicholas C. Zakas)
- Understanding JavaScript OOP (Sorella)
- You Don't Know JS
Javascript Frameworks
For resources on Angular, Backbone, D3, Dojo, Ember, Express, jQuery, Knockout, Meteor, React and any other JS toolkit/framework, please refer to Javascript Frameworks Resources and Tutorials.
Node.js
- An Introduction to libuv - Nikhil Marathe (PDF - ePub)
- JavaScript and Node FUNdamentals - Azat Mardanov (Leanpub)
- Mixu's Node Book
- Node: Up and Running - Tom Hughes-Croucher
- Node.js Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- The Node Beginner Book
Jenkins
Julia
- Introducing Julia wikibook
- Julia by Example - Samuel Colvin (GitHub repo)
- Learn Julia in Y minutes - Leah Hanson
- Programming in Julia - Thomas J. Sargent and John Stachurski
- The Julia Express - Bogomił Kamiński (PDF)
LaTeX / TeX
LaTeX
TeX
- Notes On Programming in TeX - Christian Feursänger (PDF)
- TeX by Topic, A TeXnician's Reference - Victor Eijkhout
- TeX for the Impatient - Paul Abrahams, Kathryn Hargreaves, and Karl Berry
Limbo
Linux
- Ad Hoc Data Analysis From The Unix Command Line
- Automated Linux From Scratch
- Getting Started with Ubuntu
- GNU Autoconf, Automake and Libtool
- GTK+/Gnome Application Development
- Hardened Linux From Scratch
- Learn Enough Command Line to Be Dangerous - Michael Hartl
- Learning Debian GNU/Linux
- Linux 101 Hacks - Ramesh Natarajan (PDF)
- Linux Administrator's Security Guide
- Linux Advanced Routing & Traffic Control HOWTO
- Linux Compute Clusters
- Linux Device Drivers, 2nd Edition
- Linux Device Drivers, Third Edition - Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman
- Linux from Scratch
- Linux Kernel in a Nutshell
- Linux Newbie Administrator Guide
- Linux Security for Beginners
- Linux Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- OpenVZ Linux virtualization (PDF)
- Programming and Using Linux Sound - in depth
- Red Hat Enterprise Linux 6 Essentials
- Secure Programming for Linux and Unix
- The Debian Administrator's Handbook
- The Linux Command Line (PDF)
- The Linux Development Platform (PDF)
- The Linux Kernel Module Programming Guide
- The Linux System Administrator's Guide
- The Python GTK+ 3 Tutorial
- Ubuntu Pocket Guide and Reference
- Ubuntu Server Guide (PDF)
- Upstart Intro, Cookbook and Best Practises
- What Every Programmer Should Know About Memory (PDF)
Lisp
- Basic Lisp Techniques - David J. Cooper, Jr. (PDF)
- Casting Spels in Lisp
- Common Lisp: A Gentle Introduction to Symbolic Computation - David S. Touretzky
- Common Lisp: An Interactive Approach - Stuart C. Shapiro
- Common Lisp Quick Reference
- Common Lisp the Language, 2nd Edition
- Google's Common Lisp Style Guide
- Interpreting LISP - Gary D. Knott (PDF)
- Learn Lisp The Hard Way - Colin J.E. Lupton
- Let Over Lambda - 50 Years of Lisp
- Lisp Hackers: Interviews with 100x More Productive Programmers - Vsevolod Dyomkin
- Lisp Koans
- Lisp Web Tales
- Natural Language Processing in Lisp
- On Lisp
- Practical Common Lisp
- Sketchy LISP - Nils Holm
- Structure and Interpretation of Computer Programs
- Successful Lisp: How to Understand and Use Common Lisp - David Lamkins
- The Evolution of Lisp - Guy L. Steele Jr., Richard P. Gabriel (PDF)
Livecode
- LiveCode userguide (PDF)
Lua
Markdown
- Learn Markdown - Sammy P., Aaron O. (PDF) (EPUB) (MOBI)
Mathematica
- Basics of Algebra, Topology, and Differential Calculus (PDF)
- Mathematica® programming: an advanced introduction by Leonid Shifrin
- Stephen Wolfram's The Mathematica Book
- Vector Math for 3d Computer Graphics
- Wolfram Mathematica Tutorial Collection
MATLAB
- An Interactive Introduction to MATLAB (PDF)
- An Introduction to MATLAB (PDF)
- Applications of MATLAB in Science and Engineering
- Experiments with MATLAB
- Freshman Engineering Problem Solving with MATLAB
- Interactive Tutorials for MATLAB, Simulink, Signal Processing, Controls, and Computational Mathematics
- MATLAB - A Fundamental Tool for Scientific Computing and Engineering Applications - Volume 1
- MATLAB - A Ubiquitous Tool for the Practical Engineer
- MATLAB for Engineers: Applications in Control, Electrical Engineering, IT and Robotics
- MATLAB Programming
- MATLAB Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- Numerical Computing with MATLAB
- Physical Modeling in MATLAB - Alan B. Downey
Maven
- Developing with Eclipse and Maven
- Maven by Example
- Maven: The Complete Reference
- Repository Management with Nexus
Mercurial
Mercury
- The Mercury Users' Guide (PDF)
MySQL
Neo4J
- Graph Databases (PDF)
- Graph Databases 2nd edition (account required)
.NET Framework
- Charles Petzold's .NET Book Zero
- Entity Framework
- Game Creation with XNA
- Moving to Microsoft Visual Studio 2010
- .NET for Visual FoxPro Developers
- .NET Performance Testing and Optimization - The Complete Guide (RedGate, By Paul Glavich and Chris Farrell)
- Practical Performance Profiling: Improving the efficiency of .NET code (RedGate, By Jean-Philippe Gouigoux)
- Under the Hood of .NET Memory Management (PDF) (RedGate, By Chris Farrell and Nick Harrison)
- Visual Studio .NET Tips and Tricks (VS 2003-2005 only)
NoSQL
- CouchDB: The Definitive Guide
- Extracting Data from NoSQL Databases: A Step towards Interactive Visual Analysis of NoSQL Data - Petter Nasholm (PDF)
- Graph Databases
- MongoDB Koans
- MongoDB Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- NoSQL Databases - Christof Strauch (PDF)
- The Little MongoDB Book
- The Little Redis Book
- The Little Riak Book
Oberon
Objective-C
- Google's Objective-C Style Guide
- Object-Oriented Programming with Objective-C
- Objective-C Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- Programming With Objective-C
- Try Objective-C Book
OCaml
- Developing Applications With Objective Caml
- Introduction to Objective Caml (PDF)
- Objective Caml for Scientists (first chapter only)
- Real World OCaml
- Think OCaml - Allen B. Downey and Nicholas Monje
- Unix System Programming in OCaml
- Using, Understanding, and Unraveling The OCaml Language: From Practice to Theory and vice versa - Didier Rémy
Octave
OpenGL ES
OpenMP
OpenResty
OpenSCAD
Oracle Server
Parrot / Perl 6
- Perl 6 Programming
- Using Perl 6 (work in progress)
PC-BSD
Perl
- Beginning Perl
- Data Munging with Perl (PDF)
- Embedding Perl in HTML with Mason
- Essential Perl (PDF)
- Exploring Programming Language Architecture in Perl
- Extreme Perl
- Higher-Order Perl
- Impatient Perl
- Learning Perl The Hard Way
- Mastering Perl - brian d foy
- Modern Perl 5
- Perl & LWP
- Perl 5 Internals
- Perl for the Web
- Perl Training Australia - Course Notes
- Plack Handbook
- Practical mod_perl - Stas Bekman, Eric Cholet
- SDL::Manual Writing Games in Perl
- Template Toolkit Documentation
- The DBIx-Class Book
- The PDL Book (PDF)
- Web Client Programming with Perl
PHP
- CakePHP Framework
- CakePHP Cookbook 2.x (PDF)
- Drupal Framework
- Drupal 7
- The Tiny Book of Rules (PDF)
- Drupal 7
- Hacking with PHP
- Laravel Framework
- PHP 5 Power Programming (PDF)
- PHP Best Practices
- PHP Essentials
- PHP Internals Book
- PHP Programming
- PHP Security Guide
- PHP: The Right Way
- Practical PHP Programming
- Practical PHP Testing
- Survive The Deep End: PHP Security
- Symfony2
- Using Libsodium in PHP Projects
PicoLisp
PostgreSQL
- Postgres Official Documentation
- Postgres Succinctly (PDF, Kindle) (Just fill the fields with any values)
- Practical PostgreSQL
PowerShell
- Creating HTML Reports in PowerShell (PDF,ePub,HTML)
- Introduction to PowerShell for Unix People (PDF, ePub, HTML)
- Layman’s Guide to PowerShell 2.0 remoting (PDF)
- Mastering PowerShell
- PowerShell 2.0 – One CMDLET At A Time (PDF)
- PowerShell Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- The Big Book of PowerShell Error Handling (PDF, ePub, HTML)
- The Big Book of PowerShell Gotchas (PDF, ePub, HTML)
- The Community Book of PowerShell Best Practices (PDF, ePub, HTML)
- The DSC Book (PDF, ePub, HTML)
- The Monad Manifesto - Annotated (PDF, ePub, HTML)
Processing
Prolog
- Adventure in Prolog
- Applications of Prolog
- Building Expert Systems in Prolog
- Coding Guidelines for Prolog - Michael A. Covington, Roberto Bagnara, Richard A. O'Keefe, Jan Wielemaker, Simon Price
- Concise Intro to Prolog
- GNU Prolog Manual (PDF)
- Introduction to Prolog for Mathematicians
- Learn Prolog Now!
- Logic, Programming and Prolog (2ed)
- Natural Language Processing Techniques in Prolog
- Prolog and Natural-Language Analysis - Fernando C. N. Pereira, Stuart M. Shieber
- Prolog Experiments in Discrete Mathematics, Logic, and Computability - James L. Hein (PDF)
- Prolog for Programmers
- Prolog Problems - Werner Hett
- Prolog Programming: A First Course - Paul Brna (PDF)
- Prolog Techniques
- Prolog Tutorial
- Simply Logical
- The First 10 Prolog Programming Contests - Bart Demoen, Phuong-Lan Nguyen, Tom Schrijvers, Remko Tronçon
- Warren's Abstract Machine: A Tutorial Reconstruction - Hassan A¨it-Kaci
Constraint Logic Programming (extended Prolog)
PureScript
- PureScript By Example - Phil Freeman
Python
- A Beginner's Python Tutorial
- A Guide to Python's Magic Methods - Rafe Kettler
- Automate the Boring Stuff - Al Sweigart
- Biopython (PDF)
- Building Skills in Object-Oriented Design (Python) (PDF) (2.1.1)
- Building Skills in Python (PDF) (2.6)
- Byte of Python (2.7.x)
- Code Like a Pythonista: Idiomatic Python
- CodeCademy Python
- Composing Programs (3.x)
- Data Structures and Algorithms in Python
- Dive into Python - Mark Pilgrim (2.3)
- Dive into Python 3 - Mark Pilgrim (3.0)
- Full Stack Python
- Google's Python Class (2.4 - 2.x)
- Google's Python Style Guide
- Hacking Secret Cyphers with Python - Al Sweigart (3.3)
- High Performance Python (PDF)
- Hitchhiker's Guide to Python! (2.6)
- How to Think Like a Computer Scientist: Learning with Python - Allen B. Downey, Jeff Elkner and Chris Meyers (2.4)
- Intermediate Python - Muhammad Yasoob Ullah Khalid (1st edition)
- Introduction to Programming Using Python - Cody Jackson (1st edition) (2.3)
- Introduction to Programming with Python (3.3)
- Introduction to python - Kracekumar (2.7.3)
- Invent Your Own Computer Games With Python - Al Sweigart (3.1)
- Learn Python, Break Python
- Learn Python in Y minutes
- Learn Python The Hard Way (2.5 - 2.6)
- Learn to Program Using Python - Cody Jackson (PDF)
- Learning to Program (2.3)
- Learning to Program with Python - Richard L. Halterman (PDF) (3.2)
- Lectures on scientific computing with python - J.R. Johansson (2.7)
- Making Games with Python & Pygame - Al Sweigart (2.7)
- Modeling Creativity: Case Studies in Python - Tom D. De Smedt (PDF)
- Natural Language Processing with Python (2.5)
- Non-Programmer's Tutorial for Python 2.6 (2.6)
- Non-Programmer's Tutorial for Python 3 (3.3)
- Porting to Python 3: An In-Depth Guide (2.6 - 2.x & 3.1 - 3.x)
- Practical Programming in Python - Jeffrey Elkner (PDF)
- Problem Solving with Algorithms and Data Structure using Python - Bradley N. Miller and David L. Ranum
- Program Arcade Games With Python And Pygame (3.3)
- Programming Computer Vision with Python (PDF)
- Python 2 Official Documentation (PDF, HTML, TEXT) (2.x)
- Python 2.7 quick reference - New Mexico Tech (2.7)
- Python 3 Official Documentation (PDF, EPUB, HTML, TEXT) (3.x)
- Python Bibliotheca
- Python Cookbook - David Beazley
- Python for Econometrics - Kevin Sheppard (PDF) (2.7.5)
- Python for Fun
- Python for Informatics: Exploring Information (2.7.5)
- Python for you and me (2.7.3)
- Python for you and me (3.x)
- Python Guide
- Python Idioms (PDF)
- Python in Hydrology - Sat Kumar Tomer
- Python Koans (2.7 or 3.x)
- Python Module of the Week
- Python Practice Book (2.7.1)
- Python Practice Projects
- Python Programming (PDF) (2.6)
- Python Scientific Lecture Notes
- Python Scripting for Computational Science - Hans Petter Langtangen (PDF)
- Python Standard Library - Fredrik Lundh
- Snake Wrangling For Kids (3.x)
- Test-Driven Web Development with Python (3.3 - 3.x)
- Text Processing in Python - David Mertz (2.3 - 2.x)
- The Definitive Guide to Jython, Python for the Java Platform - Josh Juneau, Jim Baker, Victor Ng, Leo Soto, Frank Wierzbicki (2.5)
- The Little Book of Python Anti-Patterns (Source)
- The Programming Historian - William J. Turkel, Adam Crymble and Alan MacEachern
- The Python Ecosystem: An Introduction
- Think Python - Allen B. Downey (2.x & 3.0)
- Web2py: Complete Reference Manual, 6th Edition (pre-release) (2.5 - 2.x)
- Welcome to Problem Solving with Algorithms and Data Structures - Brad Miller and David Ranum
- Wikibooks: Python Programming (2.7)
Django
- Django Official Documentation (PDF) (1.5)
- Django Official Documentation (PDF) (1.7)
- Djen of Django
- Effective Django (1.5)
- Getting started with Django (video)
- Tango With Django (1.5)
- Test-Driven Web Development with Python (1.8)
- The Django book (1.4 but mostly 1.0)
Flask
- Explore Flask - Robert Picard
- Flask Microframework
- The Flask Mega-Tutorial - Miguel Grinberg (0.9)
Kivy
- Kivy Programming Guide (PDF)
Pandas
- Learn Pandas - Hernan Rojas (0.13.0)
Pyramid
QML
- Qt5 Cadaques - Juergen Bocklage-Ryannel and Johan Thelin (HTML, PDF, ePub) (work in progress)
R
- Advanced R Programming - Hadley Wickham
- Introduction to Probability and Statistics Using R - G. Jay Kerns (PDF)
- Learning Statistics with R - Daniel Navarro
- learnR - (Work in Progress) - Kun Ren
- Practical Regression and Anova using R - Julian J. Faraway (PDF)
- R by example
- R for spatial analysis (PDF)
- R language for Programmers - John D. Cook
- R packages - Hadley Wickham
- R practicals (PDF)
- R Programming
- R Programming for Data Science (Needs valid email)
- R Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- The R Inferno - Patrick Burns (PDF)
- The R Language
- The R Manuals
Racket
- How to Design Programs 2e
- Programming Languages: Application and Interpretation
- Realm of Racket
- The Racket Guide
Raspberry Pi
- Raspberry Pi: Measure, Record, Explore
- Raspberry Pi Users Guide - Eben Upton (PDF)
REBOL
- Learn REBOL - Nick Antonaccio
Ruby
- A community-driven Ruby style guide
- CodeCademy Ruby
- Developing Games With Ruby
- I Love Ruby
- Introduction to Programming with Ruby - Launch School
- Just Enough Ruby to Get By
- Learn Ruby the hard way
- Learn to Program, by Chris Pine
- Mr. Neighborly's Humble Little Ruby Book
- Object Oriented Programming with Ruby - Launch School
- Practicing Ruby
- Programming Ruby
- Ruby Essentials
- Ruby Hacking Guide
- Ruby in Twenty Minutes
- Ruby Koans
- Ruby Learning
- Ruby Programming
- Ruby User's Guide
- The Bastards Book of Ruby
- The Unofficial Ruby Usage Guide (at Google) - Ian Macdonald
- Why's (Poignant) Guide to Ruby
RSpec
Ruby on Rails
- A community-driven Rails style guide
- Building REST APIs with Rails
- Kestrels, Quirky Birds, and Hopeless Egocentricity
- Learn Ruby on Rails as You Modify a Craigslist Clone
- Objects on Rails
- Rails Girls Guides
- Ruby on Rails 3.2 - Step by Step
- Ruby on Rails 4.0 Guide
- Ruby on Rails Guides
- Ruby on Rails Tutorial: Learn Rails By Example
- Upgrading to Rails 4
Sinatra
Rust
Sage
- Sage for Power Users - William Stein (PDF)
- The Sage Manuals
Scala
- A Scala Tutorial for Java programmers (PDF)
- Another tour of Scala
- EAI Patterns with Actor Model - Vaughn Vernon
- Effective Scala
- Learning Scala in small bites
- Learning Scalaz
- Pro Scala: Monadic Design Patterns for the Web
- Program Transformation in Scala - Anastasia Izmaylova (PDF)
- Programming in Scala, First Edition
- S-99: Ninety-Nine Scala Problems - Phil! Gold
- Scala & Design Patterns: Exploring Language Expressivity - Fredrik Skeel Løkke (PDF)
- Scala By Example (PDF)
- Scala Cookbook: Bonus Chapters - Alvin Alexander (PDF)
- Scala for Perl 5 Programmers - Breno G. de Oliveira
- Scala for the Impatient (A1 Scala Level chapters) - Cay S. Horstmann
- Scala School by Twitter
- Scala Tutorial (PDF)
- tetrix in Scala
- The Neophyte's Guide to Scala - Daniel Westheide
- Xtrace
Lift
- Exploring Lift (published earlier as "The Definitive Guide to Lift", PDF)
- Lift
- Lift Cookbook - Richard Dallaway
- Simply Lift - David Pollak (PDF)
Play Scala
- Play Framework Recipes - Alvin Alexander
Scheme
- An Introduction to Scheme and its Implementation
- Concrete Abstractions: An Introduction to Computer Science Using Scheme
- How to Design Programs
- Scheme Tutorial
- Simply Scheme: Introducing Computer Science
- Structure and Interpretion of Computer Programs
- Teach Yourself Scheme in Fixnum Days
- The Scheme Programming Language: Edition 3 - The Scheme Programming Language: Edition 4
- Write Yourself a Scheme in 48 Hours
Scilab
Scratch
Sed
Smalltalk
- Computer Programming using GNU Smalltalk (PDF)
- Dynamic Web Development with Seaside
- Free Online Smalltalk Books (meta-list)
- Pharo by Example (Smalltalk DE)
- Squeak By Example (Smalltalk IDE)
SQL (implementation agnostic)
- A Primer on SQL, Second Edition
- Developing Time-Oriented Database Applications in SQL
- Learn SQL The Hard Way
- SQL For Web Nerds
- Use The Index, Luke!: A Guide To SQL Database Performance
SQL Server
- Best of SQLServerCentral.com Vol 7 *(RedGate, By SQLServerCentral Authors)
- Brad's Sure Guide to SQL Server Maintenance Plans (RedGate, By Brad McGehee)
- Defensive Database Programming (PDF) (RedGate, By Alex Kuznetsov)
- How to Become an Exceptional DBA (RedGate, By Brad McGehee)
- Inside the SQL Server Query Optimizer (RedGate, By Benjamin Nevarez)
- Introducing Microsoft SQL Server 2008 R2
- Introducing Microsoft SQL Server 2012
- Introducing Microsoft SQL Server 2014
- Mastering SQL Server Profiler (RedGate, By Brad McGehee)
- Performance Tuning with SQL Server Dynamic Management Views (RedGate, By Tim Ford and Louis Davidson)
- Protecting SQL Server Data (RedGate, By John Magnabosco)
- SQL Server 2012 Tutorials: Reporting Services
- SQL Server Backup and Restore (RedGate, By Shawn McGehee)
- SQL Server Concurrency: Locking, Blocking and Row Versioning (RedGate, By Kalen Delaney)
- SQL Server Execution Plans (PDF) (RedGate, By Grant Fritchey)
- SQL Server Execution Plans, Second Edition (PDF) (RedGate, By Grant Fritchey)
- SQL Server Hardware (RedGate, By Glenn Berry)
- SQL Server Statistics (RedGate, By Holger Schmeling)
- SQL Server Stumpers Vol.5 (RedGate, By SQLServerCentral Authors)
- SQL Server Tacklebox (RedGate, By Rodney Landrum)
- 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)
- Troubleshooting SQL Server: A Guide for the Accidental DBA (RedGate, By Jonathan Kehayias and Ted Krueger)
Standard ML
- Programming in Standard ML '97 - Stephen Gilmore, University of Edinburgh
- Programming in Standard ML, Draft - Robert Harper
Subversion
Swift
- Hacking with Swift
- Learn Swift
- The Swift Programming Language (HTML)
- The Swift Programming Language (iBook)
- Using Swift with Cocoa and Objective-C (iBook)
Tcl
- Tcl Programming - Richard.Suchenwirth, et. al.
- TclWise - Salvatore Sanfilippo
Teradata
Tizen
- Tizen for Dummies - Jon Lansdell, Cheng Luo, Michelle Somersville (PDF)
TLA
- Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers - Leslie Lamport (Postscript or PDF)
TypeScript
- TypeScript Deep Dive
- TypeScript for C# Programmers
- TypeScript Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
Unix
- An Introduction to Unix
- Commentary on the Sixth Edition UNIX Operating System - J. Lions
- UNIX Commands and Concepts - Robert I. Pitts
- Unix for Poets - Kenneth Ward Church (PDF)
- Unix Toolbox - Colin Barschel
- UNIX Tutorial for Beginners
Verilog
VHDL
- Free Range VHDL - Bryan Mealy, Fabrizio Tappero (TeX and PDF)
- VHDL Tutorial
- VHDL Tutorial - Peter J. Ashenden (PDF)
- VHDL Tutorial: Learn By Example
Vim
- A Byte of Vim
- Learn Vim Progressively
- Learn Vimscript the Hard Way
- Use Vim Like A Pro (Leanpub, by Tim Ottinger)
- Vi Improved -- Vim - Steve Oualline (PDF)
- Vim Recipes (PDF)
- Vim Regular Expressions 101
Visual Basic
Visual Prolog
Web Services
- RESTful Web Services (PDF)
Windows 8
- Programming Windows 8 Apps with HTML, CSS, and JavaScript (v1)
- Programming Windows 8 Apps with HTML, CSS, and JavaScript (v2, incomplete)
Windows Phone
- Developing An Advanced Windows Phone 7.5 App That Connects To The Cloud
- Programming Windows Phone 7
- Windows Phone 8 Development Succinctly - Matteo Pagani (PDF)
- Windows Phone 8.1 Development for Absolute Beginners
- Windows Phone Programming Blue Book