mirror of
https://github.com/namibia/free-programming-books.git
synced 2024-10-31 18:52:34 +00:00
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
- Groovy
- Graphical user interfaces
- Graphics Programming
- Hadoop
- Haskell
- HTML / CSS
- Icon
- IDL
- iOS
- Isabelle/HOL
- J
- Java
- JavaScript
- Jenkins
- 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
- Limbo
- Linux
- Lisp
- Lua
- MarkDown
- Mathematica
- MATLAB
- Maven
- Mercurial
- Mercury
- Meta-Lists
- MySQL
- .NET Framework
- Neo4J
- NoSQL
- Oberon
- Objective-C
- OCaml
- Octave
- OpenGL ES
- OpenMP
- OpenSCAD
- Oracle PL/SQL
- Oracle Server
- Parrot / Perl 6
- PC-BSD
- Perl
- PHP
- PicoLisp
- PostgreSQL
- PowerShell
- Processing
- Prolog
- [PureScript] (#purescript)
- Python
- QML
- R
- Racket
- [Raspberry Pi] (#raspberry-pi)
- REBOL
- Ruby
- Rust
- Sage
- Scala
- Scheme
- Scilab
- Scratch
- Sed
- Silverlight
- Smalltalk
- SQL (implementation agnostic)
- SQL Server
- Swift
- Standard ML
- Subversion
- Tcl
- Teradata
- TeX
- 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
- Codingus
- conceptf1.blogspot.com
- Cheat Sheets (Free)
- 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
- Learneroo Resources to Learn Programming
- Learn X in Y minutes
- Microsoft Press: Free E-Books
- Microsoft Guides to Software
- 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
- Theassayer.org
- tutorialspoint
- Wikibooks: Programming
Graphics Programming
- Blender 3D: Noob to Pro
- DirectX manual (draft)
- GPU Gems
- GPU Gems 2 - ch 8,14,18,29,30 as pdf
- 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
- 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
- Open Data Structures: An Introduction - Pat Morin
- LEDA: A Platform for Combinatorial and Geometric Computing
- Lectures Notes on Algorithm Analysis and Computational Complexity (Fourth Edition), University of North Texas (PDF)
- Linked List Basics (PDF)
- Linked List Problems (PDF)
- Matters Computational: Ideas, Algorithms, Source Code (PDF)
- Planning Algorithms
- Problems on Algorithms (Second Edition), University of North Texas (PDF)
- Purely Functional Data Structures (PDF)
- Sequential and parallel sorting algorithms
- Text Algorithms (PDF)
- The Algorithm Design Manual
- The Art of Computer Programming (fascicles, mostly volume 4) - Donald Knuth
- 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
- Competitive Programming (PDF)
Compiler Design
- An Introduction to GCC - Brian Gough
- Basics of Compiler Design (Anniversary Edition) - Torben Mogensen
- Compilers and Compiler Generators: An Introduction with C++ - P. D. Terry
- 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
- 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
- Temporal Database Management - Christian S. Jensen
- The Theory of Relational Databases
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 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 Course in Machine Learning (PDF)
- A First Encounter with Machine Learning (PDF)
- AI Algorithms, Data Structures, and Idioms in Prolog, Lisp, and Java - George F. Luger, William A Stubblefield
- An Introduction to Statistical Learning - Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani
- Bayesian Reasoning and Machine Learning
- Gaussian Processes for Machine Learning
- Inductive Logic Programming
- Information Theory, Inference, and Learning Algorithms
- Introduction to Machine Learning - Alex Smola and S.V.N. Vishwanathan (PDF)
- Introduction to Machine Learning - Amnon Shashua
- Learning Deep Architectures for AI (PDF)
- Machine Learning
- Machine Learning, Neural and Statistical Classification (PDF) or online version - This book is based on the EC (ESPRIT) project StatLog.
- 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
- Bayesian Methods for Hackers - Cameron Davidson-Pilon
- CK-12 Probability and Statistics - Advanced
- Calculus Made Easy (PDF) - Silvanus P. Thompson
- Collaborative Statistics
- Computational Geometry
- Concepts & Applications of Inferential Statistics
- Differential Equations - Paul Dawkins
- Discrete Mathematics (PDF) - Dr. Arbind K Lal, IIT Kanpur
- Elementary Differential Equations - William F. Trench
- Essentials of Metaheuristics by 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 (PDF) - Dr. P. Shunmugaraj, IIT Kanpur
- Linear Algebra
- Linear Algebra (PDF) - Dr. Arbind K Lal, IIT Kanpur
- Linear Algebra: An Introduction to Mathematical Discourse - Jim Hefferon
- Linear Algebra, Theory And Applications - Kenneth Kuttler
- Mathematical Logic - an Introduction (PDF)
- Mathematics, MTS 101A - P. Shunmugaraj, IIT Kanpur
- Notes on Differential Equations - Robert E. Terrell
- 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 (code written in Python) - Allen B. Downey
- An Introduction to Statistics (with Python) - Thomas Haslwanter
Mathematics For Computer Science
- Mathematics for Computer Science (May 2015 Version) (PDF) - Eric Lehman, F Thomson Leighton and Albert R Meyer
- Discrete Structures for Computer Science: Counting, Recursion, and Probability - Michiel Smid
Misc
- 97 Things Every Programmer Should Know - Extended
- A Mathematical Theory of Communication by Claude E.Shannon
- Asterisk™: The Definitive Guide
- Barcode Overview
- Come, Let's Play: Scenario-Based Programming Using Live Sequence Charts
- Communicating Sequential Processes (PDF) by Tony Hoare
- Computer Musings (lectures by Donald Knuth)
- CS For All
- Culture & Empire: Digital Revolution (PDF)
- Data-Intensive Text Processing with MapReduce (PDF)
- Designing for Performance by Lara Hogan
- Designing Interfaces by Jennifer Tidwell
- DevDocs - Documents for Developers in 1 place
- DevOps For Dummies (IBM Edition) (PDF)
- Digital Signal Processing For Engineers and Scientists
- Digital Signal Processing For Communications
- Distributed systems for fun and profit
- "DYNAMIC LINKED LIBRARIES": Paradigms of the GPL license in contemporary software - Luis A. Enríquez
- Docker Jumpstart
- Flow based Programming
- Foundations of Programming
- 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
- 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
- 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 by 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
- Open Government;Collaboration, Transparency, and Participation in Practice
- Object-Oriented Reengineering Patterns - Serge Demeyer, Stéphane Ducasse and Oscar Nierstrasz
- PDQ: Pretty Darn Quick: An Agile, All-Purpose Methodology - Jeff Franz-Lien
- Philosophy of Computer Science
- PNG: The Definitive Guide
- Pointers And Memory (PDF)
- Principles of Computer System Design
- 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
- The Z Notation: A Reference Manual, Second Edition - J. M. Spivey
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 Software, Free Society
- Free as in Freedom (PDF)
- 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 Art of Community (PDF) - Jono Bacon
- 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 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 - Prof. Subhashis Banerjee, IIT Delhi
- Operating Systems and Middleware (PDF and LaTeX)
- Operating Systems: Three Easy Pieces (PDF)
- Practical File System Design: The Be File System (PDF) - Dominic Giampaolo
- The Art of Unix Programming - Eric S. Raymond
- The Design and Implementation of the Anykernel and Rump Kernels - Antti Kantee
- The Little Book of Semaphores - Allen B. Downey
- The little book about OS development - Erik Helin, Adam Renberg
- Think OS: A Brief Introduction to Operating Systems (PDF) - Allen B. Downey
- UNIX Application and System Programming, lecture notes (PDFs) - Prof. Stewart Weiss
- Xv6, a simple Unix-like teaching operating system (PDF)
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)
- 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)
- Type Theory and Functional Programming
- Mostly Adequate Guide to Functional Programming
Regular Expressions
- Learn Regex The Hard Way - Zed. A. Shaw
- The Bastards Book of Regular Expressions: Finding Patterns in Everyday Text - Dan Nguyen
- The 30 Minute Regex Tutorial - Jim Hollenhorst
- RexEgg
Reverse Engineering
- Hacking the Xbox: An Introduction to Reverse Engineering - Andrew "bunnie" Huang
- Reverse Engineering for Beginners (PDF) - Dennis Yurichev
- BIOS Disassembly Ninjutsu Uncovered 1st Edition (PDF) - Darmawan Salihun
- iOS App Reverse Engineering (PDF)
Security
- Crypto 101 - Crypto for everyone
- Handbook of Applied Cryptography
- How to deal with Passwords
- Intrusion Detection Systems with Snort
- OpenSSL Cookbook
- OWASP Top 10 for .NET Developers
- Security Engineering
- CryptoParty Handbook
Software Architecture
- 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)
- Methods and Techniques for the Design and Implementation of Domain-Specific Languages - Zef Hemel
- Naked objects - Richard Pawson
- NASA Manager Handbook for Software Development (PDF)
- NASA Software Measurement Handbook
- 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
- Programming Reliable Systems (Joe Armstrong's PhD thesis) (PDF)
- Scrum and XP from the Trenches
- Seamless Object-Oriented Software Architecture (PDF)
- Software Architecture (PDF)
- Software Engineering for Internet Applications
- Web API Design
- 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 (PDF) - Anil Maheshwari and Michiel Smid
- Models of Computation - John E. Savage
- Network Science
- Practical Foundations for Programming Languages, Preview - Robert Harper
- 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 by Stoyan Stefanov
- High Performance Browser Networking by Ilya Grigorik
- Mature Optimization by Carlos Bueno
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 (PDF, epub, mobi - need email confirmation) by Etienne Savard
- 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
- TechnoTalkative Android
- [The Busy Coder's Guide to Android Development] (https://commonsware.com/Android/4-2-free) (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
- Introduction to Reverse Engineering Software
- 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 (PDF) by Lisa Watts and Mike Wharton [Z80 and 6502 CPUs]
- Machine Language for Beginners by 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 by Machtelt Garrels
- BASH Programming- Mike G mikkey
- Bash Reference Manual
- Conquering the Command Line - Mark Bates
- Getting Started with BASH
- Google Shell Style Guide
- Lhunath's Bash Guide
- Linux Shell Scripting Tutorial - A Beginner's Handbook
- 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
- Advanced Linux Programming
- 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
- The New C Standard - An Annotated Reference
- TONC GBA Programming - Game Boy Advance Development
- Using C on the UNIX System - David A. Curry
- [The little book about OS development - Erik Helin, Adam Renberg] (http://littleosbook.github.io/)
C Sharp
- Beginners Guide to C# and the.NET Micro Framework
- 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
- HTTP Programming Recipes for C# Bots
- 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++
- Data Structures and Algorithms with Object-Oriented Design Patterns 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
- Joint Strike Fighter, C++ Coding Standards, by Bjarne Stroustrup
- 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. (Vol. 2) - Bruce Eckel
- Also see: The Definitive C++ Book Guide and List
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
- Clojure Koans
- Clojure Programming
- ClojureScript Koans
- Data Sorcery with Clojure
- Modern cljs
- The Clojure Style Guide
- SICP Distilled - An idiosyncratic tour of SICP in Clojure
COBOL
CoffeeScript
- CoffeeScript Cookbook
- CoffeeScript Ristretto - Reginald Braithwaite
- 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# Succinctly, SyncFusion (PDF, Kindle) (Just fill the fields with any values)
- F# Programming in Wikibooks
- Programming Language Concepts for Software Developers (PDF)
- Real World Functional Programming (MSDN Chapters)
Flex
Firefox OS
Force.com
- Analytics Workbook
- Apex Design Patterns and Best Practices
- Apex Workbook
- Cloud Flow Designer Workbook
- Database.com Workbook
- Force.com Fundamentals
- Force.com Integration Workbook
- Force.com Platform Fundamentals: An Introduction to Custom Application Development in the Cloud
- Force.com Workbook
- Heroku Postgres (PDF)
- ISVForce Workbook
- Security Workbook
- Service Cloud Workbook
- Site.com Workbook
- Visualforce Workbook
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
- Self Study Guide: Programming in Fortran 95
FreeBSD
Git
- A practical git introduction
- A Visual Git Reference - Mark Lodato
- Conversational Git
- Git for Computer Scientists
- Git From The Bottom Up (PDF)
- Git Immersion
- Git internals - Scott Chacon (PDF)
- Git In The Trenches
- Git Magic
- Git Pocket Guide - Richard E. Silverman
- Git Reference
- Git Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- git - the simple guide
- Git Workflows
- GitHub Cheat Sheet - Tim Green (Markdown)
- 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
- Building Web Apps with Go
- Build Web Application with Golang
- 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
Groovy
Gradle
- Building and Testing with Gradle
- Building Java Projects with Gradle
- Gradle User Guide (PDF) - Hans Dockter, Adam Murdoch
Grails
- Getting Started with Grails
- Grails Tutorial for Beginners - GRAILS COOKBOOK
- The Grails Framework - Reference Documentation (PDF) - Graeme Rocher, Peter Ledbrook, Marc Palmer, Jeff Brown, Luke Daley, Burt Beckwith, Lari Hotari
Spock Framework
- Spock Framework Reference Documentation - Peter Niederwieser
- Spock Intro - Ed Gibbs
Hadoop
- Cloudera Impala - John Russel
- Hadoop Illuminated - Mark Kerzner & Sujee Maniyam
- Programming Pig - Alan Gates
Haskell
- A Gentle Introduction to Haskell
- The Haskell School of Music (PDF) (work in progress)
- Anatomy of Programming Languages - William R. Cook
- Beautiful Code, Compelling Evidence (PDF)
- Exploring Generic Haskell - Andres Löh
- Introduction to Haskell - Brent Yorgey
- Haskell and Yesod
- Haskell no panic
- Haskell web Programming (Yesod tutorial)
- Learn Haskell Fast and Hard
- Learn You a Haskell for Great Good - Miran Lipovaca
- Natural Language Processing for the Working Programmer
- Parallel and Concurrent Programming in Haskell - Simon Marlow
- Real World Haskell
- Speeding Through Haskell
- The Haskell Road to Logic, Math and Programming (PDF)
- Wikibook Haskell
- Yet Another Haskell Tutorial (PDF)
HTML / CSS
- A beginner's guide to HTML&CSS
- A free guide to learn HTML and CSS
- An advanced guide to HTML&CSS
- Code Guide: Standards for developing flexible, durable, and sustainable HTML and CSS - Mark Otto
- Dive Into HTML5 (PDF) - Mark Pilgrim
- 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
- Learn CSS Layout
- Scalable and Modular Architecture for CSS - Jonathan Snook
- Web Audio API - Boris Smus
- [Adaptive Web Design] (http://adaptivewebdesign.info/1st-edition/) - Aaron Gustafson
Bootstrap
- Twitter Bootstrap Succinctly (PDF, Kindle) (Just fill the fields with any values)
- Twitter Bootstrap 3 Succinctly (PDF, Kindle) (Just fill the fields with any values)
Icon
IDL
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 Today (Objective-C) - Last updated 22.10.2013 (PDF)
- Start Developing iOS Apps (Swift) (HTML)
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)
- Concrete Math Companion by Kenneth E Iverson (PDF)
- Computers and Mathematical Notation by Kenneth E Iverson
- Easy J by Linda Alvord, Norman Thomson (PDF) || Word DOC
- Exploring Math by Kenneth E Iverson (PDF)
- J for C Programmers by Henry Rich- online || pdf || word 2003 file
- 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
- Animation/Games in Java
- Apache Jakarta Commons: Reusable Java Components - Will Iverson
- 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
- Hibernate 4 Example Programs - L. Mohan Arun
- HTTP Programming Recipes for Java Bots
- Introduction to Computer science using Java
- Introduction to Neural Networks with Java
- Introduction to Programming in Java - Robert Sedgewick and Kevin Wayne
- Introduction to Programming Using Java - David J. Eck
- JAAS in Action
- Java Application Development on Linux by Carl Albing and Michael Schwarz (PDF) (PDF)
- Java for the Beginning Programmer
- Java Programming for Kids, Parents and Grandparents - Yakov Fain
- Java Thin-Client Programming
- Java: A Beginner's Guide - Oracle
- Learning Java (4th Edition) - Patrick Niemeyer
- NIO Framework
- 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
- Programming with Java - An Algorithmic Introduction - Pat Terry
- 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
- 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 (PDF) - 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
Spring Boot
- Spring Boot Reference Guide (PDF, EPUB) - Phillip Webb, Dave Syer, Josh Long, Stéphane Nicoll, Rob Winch, Andy Wilkinson, Marcel Overdijk, Christian Dupuis
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 Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- JavaScript the Right Way
- jQuery Fundamentals (starts with JavaScript basics)
- JS Robots
- 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
- Oh My JS (Leanpub, by Azat Mardanov)
- O'Reilly Programming JavaScript Applications
- 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.js, Backbone.js, D3.js, Dojo, Ember.js, Express.js, jQuery, Knockout.js, and any other JS toolkit/framework, please refer to Javascript Frameworks Resources and Tutorials, or to its source file javascript-frameworks-resources.md
. As of July 2015, resrc.io has been permanently shut down. Consult hackr.io instead.
Node.js
- An Introduction to libuv - Nikhil Marathe (PDF, ePub)
- JavaScript and Node FUNdamentals (Leanpub - by Azat Mardanov)
- 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
LaTeX
See also TeX
Limbo
Linux
- Ad Hoc Data Analysis From The Unix Command Line
- Advanced Linux Programming
- 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 Administrator's Security Guide
- Linux Advanced Routing & Traffic Control HOWTO
- Linux Compute Clusters
- Linux Device Drivers, 2nd Edition
- Linux Device Drivers, Third Edition by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman
- Linux from Scratch
- Linux Kernel in a Nutshell
- Linux Newbie Administrator Guide
- Linux Security for Beginners
- 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) (PDF)
- The Linux Kernel Module Programming Guide
- The Linux System Administrator's Guide
- OpenVZ Linux virtualization (PDF)
- The Python GTK+ 3 Tutorial
- Ubuntu Pocket Guide and Reference
- Ubuntu Server Guide
- Upstart Intro, Cookbook and Best Practises
- What Every Programmer Should Know About Memory (PDF)
- Linux Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- Linux 101 Hacks (PDF) - Ramesh Natarajan
Lisp
- Basic Lisp Techniques - David J. Cooper, Jr.
- Casting Spels in Lisp
- Common Lisp Quick Reference
- Common Lisp the Language, 2nd Edition
- Common Lisp: A Gentle Introduction to Symbolic Computation - David S. Touretzky
- Common Lisp: An Interactive Approach - Stuart C. Shapiro
- Google's Common Lisp Style Guide
- Interpreting LISP - Gary D. Knott
- 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
Lua
- Lua 5.1 Reference Manual
- Programming In Lua (for version 5)
- Programming Gems
- Wikibook
Markdown
- Learn Markdown (PDF) (EPUB) (MOBI) - GitBookIO, Sammy P., Aaron O.
Mathematica
- Basics of Algebra, Topology, and Differential Calculus
- 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
- An Introduction to MATLAB
- 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
.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)
Neo4J
- Graph Databases (PDF)
NoSQL
- CouchDB: The Definitive Guide
- Extracting Data from NoSQL Databases: A Step towards Interactive Visual Analysis of NoSQL Data - Petter Nasholm
- Graph Databases
- MongoDB Koans
- MongoDB Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- NoSQL Databases - Christof Strauch
- 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 (PDF)
- Objective-C Succinctly, Syncfusion (PDF, Kindle) (Just fill the fields with any values)
- Programming With Objective-C (PDF)
- 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
OpenSCAD
Oracle PL/SQL
Oracle Server
Parrot / Perl 6
- Perl 6 Programming
- Using Perl 6 (work in progress)
PC-BSD
Perl
- Beginning Perl
- Data Munging with Perl (PDF)
- The DBIx-Class Book
- 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 5 Internals
- Perl & LWP
- 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 PDL Book (PDF)
- Web Client Programming with Perl
PHP
- CakePHP Framework
- Drupal Framework
- Drupal 7
- Master Drupal in 7 hours (PDF)
- The Tiny Book of Rules (PDF)
- Drupal 8
- Drupal 7
- Laravel Framework
- PHP 5 Power Programming
- PHP Best Practices
- PHP Essentials
- PHP Internals Book
- PHP Programming
- PHP Security Guide
- PHP: The Right Way
- Practical PHP Programming (wiki containing O'Reilly's PHP In a Nutshell)
- Practical PHP Testing
- Survive The Deep End: PHP Security
- Symfony2
- Using Libsodium in PHP Projects - libsodium PHP extension for modern, secure, and fast cryptography
PicoLisp
PostgreSQL
- Postgres Succinctly (PDF, Kindle) (Just fill the fields with any values)
- Practical PostgreSQL
PowerShell
- 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)
Processing
Prolog
- Adventure in Prolog
- Applications of Prolog
- Building Expert Systems in Prolog
- Concise Intro to Prolog
- Coding Guidelines for Prolog - Michael A. Covington, Roberto Bagnara, Richard A. O'Keefe, Jan Wielemaker, Simon Price
- 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
- Prolog for Programmers
- Prolog Problems - Werner Hett
- Prolog Programming: A First Course - Paul Brna
- 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
- Python Official Documentation (PDF, HTML, TEXT) (2.x)
- Python Official Documentation (PDF, EPUB, HTML, TEXT) (3.x)
- A Beginner's Python Tutorial
- A Bit of Python and Other Things
- A Guide to Python's Magic Methods - Rafe Kettler
- Automate the Boring Stuff - Al Sweigart
- Biopython
- 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
- 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 The Hard Way (2.5 - 2.6)
- Learning to Program (2.3)
- Learning to Program with Python - Richard L. Halterman (PDF) (3.2)
- Learn Python, Break Python
- Learn Python in Y minutes
- Learn to Program Using Python - Cody Jackson
- 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
- 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
- Python 2.7 quick reference - New Mexico Tech (2.7)
- Python Algorithms (PDF)
- Python Bibliotheca
- Python Cookbook - David Beazley
- Python for Econometrics - Kevin Sheppard (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
- 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 Art and Craft of Programming (3.x)
- The Little Book of Python Anti-Patterns (Source)
- The Python Ecosystem: An Introduction
- The Programming Historian - William J. Turkel, Adam Crymble and Alan MacEachern
- 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)
- Django by Example (1.2)
- Django by Example for Django 1.5 (1.5)
- 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
Pandas
- Learn Pandas - Hernan Rojas (0.13.0)
Pyramid
QML
- Qt5 Cadaques (HTML, PDF, ePub) (work in progress) - Juergen Bocklage-Ryannel and Johan Thelin
R
- Advanced R Programming - Hadley Wickham
- Introduction to Probability and Statistics Using R (PDF) - G. Jay Kerns
- Learning Statistics with R - Daniel Navarro
- learnR - (Work in Progress) - Kun Ren
- Practical Regression and Anova using R (PDF) - Julian J. Faraway
- 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 (PDF) - Patrick Burns
- The R Language
- The R Manuals
Racket
- How to Design Programs 2e
- Programming Languages: Application and Interpretation
- The Racket Guide
- Realm of Racket
Raspberry Pi
- Raspberry Pi Users Guide (PDF) - Eben Upton
- Raspberry Pi: Measure, Record, Explore
REBOL
- Learn REBOL - Nick Antonaccio
Ruby
- A community-driven Ruby style guide
- CodeCademy Ruby
- Developing Games With Ruby
- I Love Ruby
- Just Enough Ruby to Get By
- Learn Ruby the hard way
- Learn to Program, by Chris Pine
- Mr. Neighborly's Humble Little Ruby Book
- Practicing Ruby
- Programming Ruby
- Read 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 (mirror)
RSpec
Sinatra
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
Rust
Sage
- Sage for Power Users (PDF) - William
- 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 Scalaz
- Pro Scala: Monadic Design Patterns for the Web
- Program Transformation in Scala - Anastasia Izmaylova
- Programming in Scala, First Edition
- S-99: Ninety-Nine Scala Problems - Phil! Gold
- Scala By Example (PDF)
- Scala Cookbook: Bonus Chapters - Alvin Alexander
- Scala & Design Patterns: Exploring Language Expressivity - Fredrik Skeel Løkke
- 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
- 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
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, Edition 4
- Write Yourself a Scheme in 48 Hours
Scilab
Scratch
Sed
Silverlight
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, Draft - Robert Harper
- Programming in Standard ML '97, by Stephen Gilmore, University of Edinburgh
Subversion
Swift
- The Swift Programming Language (iBook)
- The Swift Programming Language (HTML)
- Using Swift with Cocoa and Objective-C (iBook)
- Learn Swift
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
See also LaTeX
Tizen
- Tizen for Dummies (PDF) by Jon Lansdell, Cheng Luo, Michelle Somersville
TLA
- Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers (Postscript or PDF) by Leslie Lamport
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 Toolbox - Colin Barschel
- UNIX Tutorial for Beginners
- Unix for Poets - Kenneth Ward Church (PDF)
- UNIX Commands and Concepts - Robert I. Pitts
Verilog
VHDL
- Free Range VHDL (TeX and PDF) by Bryan Mealy, Fabrizio Tappero
- VHDL Tutorial
- VHDL Tutorial - Peter J. Ashenden
- 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 (PDF) by Steve Oualline
- 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 Programming Blue Book
- Windows Phone 8 Development Succinctly (PDF) by Matteo Pagani
- Windows Phone 8.1 Development for Absolute Beginners