mirror of
https://github.com/EbookFoundation/free-programming-books.git
synced 2024-12-24 04:15:28 +00:00
7aea29ac65
* Update a Java book URL - #2990 Changes: - The book 'Object-Oriented vs. Functional Programming' has a .csp link - Also a sign-up is required to read the book since it's hosted at oreilly.com - The contributing guide is against a hosting service and required sign-up. - That is why this PR is created. * remove ? link Co-authored-by: Eric Hellman <eric@hellman.net>
175 KiB
175 KiB
Index
- ABAP
- 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
- Component Pascal
- Cool
- Coq
- Crystal
- CUDA
- D
- Dart
- DB2
- Delphi / Pascal
- DTrace
- Eiffel
- Elasticsearch
- Elixir
- Elm
- Emacs
- Embedded Systems
- Erlang
- ESP8266
- F#
- Firefox OS
- Flutter
- Force.com
- Forth
- Fortran
- FreeBSD
- Git
- Go
- Graphical user interfaces
- Graphics Programming
- GraphQL
- Groovy
- Hack
- Hadoop
- Haskell
- Haxe
- HTML / CSS
- HTTP
- Icon
- Idris
- iOS
- IoT
- Isabelle/HOL
- J
- Java
- JavaScript
- Jenkins
- Julia
- Kotlin
- Language Agnostic
- Algorithms & Data Structures
- Artificial Intelligence
- 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
- Make
- Markdown
- Mathematica
- MATLAB
- Maven
- Mercurial
- Mercury
- Meta-Lists
- Modelica
- MySQL
- Neo4J
- .NET Framework
- Nim
- NoSQL
- Oberon
- Objective-C
- OCaml
- Octave
- OpenGL ES
- OpenMP
- OpenResty
- OpenSCAD
- Perl
- Perl 6 / Raku
- PHP
- PicoLisp
- PostgreSQL
- PowerShell
- Processing
- Prolog
- PureScript
- Python
- QML
- R
- Racket
- Raspberry Pi
- REBOL
- Ruby
- Rust
- Sage
- Scala
- Scheme
- Scilab
- Scratch
- Sed
- Self
- Smalltalk
- Snap
- Spark
- Splunk
- SQL (implementation agnostic)
- SQL Server
- Standard ML
- Subversion
- Swift
- Tcl
- TEI
- 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
- 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 Cookie required. (email address requested, not required)
- Cheat Sheets (Free)
- conceptf1.blogspot.com
- Free Smalltalk Books, collected by Stéphane Ducasse
- Free Tech Books
- Goalkicker - Programming Notes for Professionals books
- 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
- Microsoft Technologies 3, including books on Windows Azure, SharePoint, Visual Studio Guide, Windows phone development, ASP.net, etc. collection by Eric Ligman
- O'Reilly's Open Books Project
- Papers we love
- Programming - Wikibooks
- Red Gate Books
- Stef's Free Online Smalltalk Books
- TechBeamers.com
- TechBooksForFree.com
- The Definitive C++ Book Guide and List
- Theassayer.org
- tutorialspoint
Graphics Programming
- Blender 3D: Noob to Pro - Wikibooks
- Computer Graphics from scratch - Gabriel Gambetta (🚧 in process)
- DirectX manual (draft)
- GPU Gems
- Graphics Programming Black Book - Michael Abrash
- Introduction to Modern OpenGL
- Learn OpenGL - Joey de Vries
- Learning Modern 3D Graphics Programming - Jason L. McKesson (draft)
- OpenGL - Concepts and illustrations.
- ShaderX series - Wolfgang Engel
- Tutorials for modern OpenGL
- WebGL Insights - Patrick Cozzi and Contributors
Graphical User Interfaces
- Programming with gtkmm 3
- Search User Interfaces - Marti A. Hearst
- The GLib/GTK+ Development Platform - Sébastien Wilmet (PDF)
GraphQL
Language Agnostic
Algorithms & Data Structures
- A Field Guide To Genetic Programming - Riccardo Poli et al.
- Algorithmic Graph Theory
- Algorithms - Wikibooks
- Algorithms, 4th Edition - Robert Sedgewick and Kevin Wayne
- Algorithms and Automatic Computing Machines (1963) - B. A. Trakhtenbrot
- Algorithms and Complexity - Herbert S. Wilf (PDF)
- Algorithms Course Materials - Jeff Erickson
- Analysis and Design of Algorithms - Sandeep Sen, IIT Delhi
- Animated Algorithm and Data Structure Visualization (Resource)
- Annotated Algorithms in Python: Applications in Physics, Biology, and Finance - Massimo di Pierro
- Binary Trees (PDF)
- Clever Algorithms - Jason Brownlee
- CS Unplugged: Computer Science without a computer
- Data Structures - Prof. Subhashis Banerjee, IIT Delhi
- Data Structures (Into Java) - Paul N. Hilfinger (PDF)
- Data Structures and Algorithms: Annotated Reference with Examples - G. Barnett and L. Del Tongo
- Data Structures Succinctly Part 1, Syncfusion (PDF, Kindle) (email address requested, not required)
- Data Structures Succinctly Part 2, Syncfusion (PDF, Kindle) (email address requested, not required)
- Elementary Algorithms - Larry LIU Xinyu
- Foundations of Computer Science - Al Aho and Jeff Ullman
- Geometry Algorithms - Dan Sunday
- 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 - K. Mehlhorn et al.
- 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 (1996) - Chris Okasaki (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)
Artificial Intelligence
- Artificial Intelligence for Big Data - Anand Deshpande, Manish Kumar (Packt account required)
Cellular Automata
- A New Kind of Science - Stephen Wolfram
- Cellular Automata Books
Cloud Computing
- Azure Functions Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- Cloud Design Patterns
- Designing Distributed Systems (account required)
- Hands-On Cloud Administration in Azure - Mustafa Toroman (Packt account required)
- Learn Azure in a Month of Lunches - Iain Foulds (PDF)
- Monitoring Modern Infrastructure (account required)
- Multi-tenant Applications for the Cloud, 3rd Edition
- OpenStack Operations Guide
- Streamline microservice management with Istio Service Mesh (account required)
- The Developer’s Guide to Azure
Competitive Programming
- Competitive Programmer's Handbook - Antti Laaksonen (PDF)
- Competitive Programming, 1st Edition (PDF)
Compiler Design
- An Introduction to GCC - Brian Gough
- Basics of Compiler Design (Anniversary Edition) - Torben Mogensen
- Compiler Construction (PDF)
- Compiler Design in C (1990) - Allen Holub, Prentice Hall
- 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 (1969) - F.R.A. Hopgood, Macdonald
- Crafting Interpreters (🚧) - Bob Nystrom (HTML)
- Implementing Functional Languages: A Tutorial - Simon Peyton Jones, David Lester
- Let's Build a Compiler (PDF)
- Practical and Theoretical Aspects of Compiler Construction (class lectures and slides)
- The ANTLR Mega Tutorial
Computer Science
- Computer Science I - Draft - Dr. Chris Bourke (PDF) (🚧 in process)
- Computer Science II - Draft - Dr. Chris Bourke (PDF) (🚧 in process)
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
- Mastering OpenCV 4,Third Edition - Roy Shilkrot, David Millán Escrivá (Packt account required)
- Programming Computer Vision with Python - Jan Erik Solem
Database
- Database Explorations (PDF)
- Database Fundamentals (PDF)
- Databases, Types, and The Relational Model: The Third Manifesto (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 (email address requested, not required)
- Data Mining Algorithms In R - Wikibooks
- Internet Advertising: An Interplay among Advertisers, Online Publishers, Ad Exchanges and Web Users (PDF)
- Introduction to Data Science - Jeffrey Stanton
- Introduction to Data Science - Rafael A Irizarry (Leanpub account or valid email requested)
- Mining of Massive Datasets
- School of Data Handbook
- Statistical inference for data science - Brian Caffo
- Theory and Applications for Advanced Text Mining
Information Retrieval
Licensing
- Creative Commons: a user guide - Simone Aliprandi
- Open Source Licensing Software Freedom and Intellectual Property Law - Lawrence Rosen
- The Public Domain: Enclosing the Commons of the Mind - James Boyle
Machine Learning
- A Brief Introduction to Machine Learning for Engineers - Osvaldo Simeone (PDF)
- 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
- Deep Learning - Ian Goodfellow, Yoshua Bengio and Aaron Courville
- Gaussian Processes for Machine Learning
- Information Theory, Inference, and Learning Algorithms
- Interpretable Machine Learning - Christoph Molnar
- Introduction to Machine Learning - Amnon Shashua
- Learn Tensorflow - Jupyter Notebooks
- 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 (Draft) - Richard S. Sutton, Andrew G. Barto (PDF)
- Speech and Language Processing (3rd Edition Draft) - Daniel Jurafsky, James H. Martin (PDF)
- The Elements of Statistical Learning - Trevor Hastie, Robert Tibshirani, and Jerome Friedman
- The LION Way: Machine Learning plus Intelligent Optimization - Roberto Battiti, Mauro Brunato (PDF)
- The Python Game Book
Mathematics
- A First Course in Linear Algebra - Robert A. Beezer
- Advanced Algebra - Anthony W. Knapp (PDF)
- An Introduction to the Theory of Numbers - Leo Moser (PDF)
- Basic Algebra - Anthony W. Knapp (PDF)
- Basics of Algebra, Topology, and Differential Calculus (PDF)
- Bayesian Methods for Hackers - Cameron Davidson-Pilon
- Book of Proof - Richard Hammack (PDF)
- Calculus - Gilbert Strang (PDF)
- Calculus Made Easy - Silvanus P. Thompson (PDF)
- Category Theory for the Sciences
- CK-12 Probability and Statistics - Advanced
- Collaborative Statistics
- Computational and Inferential Thinking. The Foundations of Data Science
- Computational Geometry
- Concepts & Applications of Inferential Statistics
- Differential Equations - Paul Dawkins (PDF, use download menu to download)
- 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 Proofs - Jim Hefferon
- 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, Sukant Pati (PDF) (🚧 in process)
- Linear Algebra (PDF)
- Linear Algebra by Jim Hefferon - Jim Hefferon
- Mathematical Logic - an Introduction (PDF)
- Mathematics, MTH101A - P. Shunmugaraj, IIT Kanpur
- Non-Uniform Random Variate Generation - Luc Devroye (PDF)
- Number Theory - Holden Lee MIT
- OpenIntro Statistics
- Ordinary Differential Equations - Wikibooks
- Power Programming with Mathematica - David B. Wagner
- Probability and Statistics Cookbook
- Probability and Statistics EBook
- Seven Sketches in Compositionality: An Invitation to Applied Category Theory - Brendan Fong and David I. Spivak (PDF)
- 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
Misc
- 2016 European Software Development Salary Survey (email address requested, not required)
- 2016 Software Development Salary Survey (email address requested, not required)
- 97 Things Every Programmer Should Know - Extended (Leanpub account or valid email requested)
- A MACHINE MADE THIS BOOK ten sketches of computer science - JOHN WHITINGTON (PDF)
- A Mathematical Theory of Communication - Claude E.Shannon
- Ansible Up & Running (first three chapters) (account required)
- Asterisk™: The Definitive Guide
- Barcode Overview (PDF)
- Bitcoin and Cryptocurrency Technologies - Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller, Steven Goldfeder (PDF)
- Blockchain By Example - Bellaj Badr, Richard Horrocks, Xun (Brian) Wu (Packt account required)
- Come, Let's Play: Scenario-Based Programming Using Live Sequence Charts
- Communicating Sequential Processes - Tony Hoare (PDF)
- Computer Musings (lectures by Donald Knuth)
- Confessions of an Unintentional CTO: Lessons in Growing a Web App - Jack Kinsella
- CS For All
- Culture & Empire: Digital Revolution (PDF)
- Design With FontForge
- 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 Cookbook, Second Edition - Ken Cochrane, Jeeva S. Chelladhurai, Neependra K Khare (Packt account required)
- Docker Jumpstart
- "DYNAMIC LINKED LIBRARIES": Paradigms of the GPL license in contemporary software - Luis A. Enríquez
- Effective DevOps with AWS, Second Edition - Yogesh Raheja, Giuseppe Borgese, Nathaniel Felsen (Packt account required)
- Essential Image Optimization - Addy Osmani
- 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 - R. Young
- How to Become a Programmer (PDF)
- How to Think Like a Computer Scientist - Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers
- Image Processing in C: Analyzing and Enhancing Digital Images - Dwayne Phillips
- Industrial Cybersecurity - Pascal Ackerman (Packt account required)
- Information Technology and the Networked Economy (PDF)
- IRPF90 Fortran code generator - Anthony Scemama
- Kubernetes Cookbook, Second Edition - Hideto Saito, Hui-Chuan Chloe Lee, Ke-Jou Carol Hsu (Packt account required)
- Learn Programming - Antti Salonen
- 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
- Mastering Bitcoin - Unlocking digital currencies - Andreas M. Antonopoulos
- Mastering ROS for Robotics Programming, Second Edition - Lentin Joseph, Jonathan Cacace (Packt account required)
- Mobile Developer's Guide to the Galaxy (Leanpub account or valid email requested)
- 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 (Leanpub account or valid email requested)
- Philosophy of Computer Science (PDF)
- PNG: The Definitive Guide
- Pointers And Memory (PDF)
- Principles of Computer System Design (PDF)
- Procedural Content Generation in Games - Noor Shaker, Julian Togelius, Mark Nelson
- Programming with Unicode
- Real-World Maintainable Software (email address requested, not required)
- Record-Playback Test Automation: Sahi & Selenium IDE: Critical Evaluation of Record-Playback Automation Tools - Shashikant Jagtap (Leanpub account or valid email requested)
- Security Engineering
- Small Memory Software
- The Quest for Artificial Intelligence: A History of Ideas and Achievements - Nils J. Nilsson (PDF)
- Trends Shaping the London Tech Scene (email address requested, not required)
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)
- Computer Networks: A Systems Approach - Larry Peterson and Bruce Davie (HTML, epub, mobi, PDF)
- High-Performance Browser Networking - Ilya Grigorik
- HTTP Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- HTTP2 Explained - Daniel Stenberg
- IPv6 for IPv4 Experts - Yar Tikhiy (PDF)
- The TCP/IP Guide
- Understanding IP Addressing: Everything you ever wanted to know (PDF)
- ZeroMQ Guide
Open Source Ecosystem
- Data Journalism Handbook
- Fintech, Open Source, and Emerging Markets Digital Banking for Everyone (email address requested, not required)
- Free as in Freedom: Richard Stallman and the free software revolution - Sam Williams (PDF)
- Free for All - Peter Wayner
- Free Software, Free Society: Selected Essays of Richard M. Stallman
- Getting Started with InnerSource (email address requested, not required)
- Getting started with Open source development (PDF)
- GitLab Handbook
- How to get started with open source (ePub & ODT)
- Innovation Happens Elsewhere - Ron Goldman, Richard P. Gabriel
- Open Advice: FOSS: What We Wish We Had Known When We Started
- Open by Design (email address requested, not required)
- Open Source in Brazil (email address requested, not required)
- Producing Open Source Software - Karl Fogel
- 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 - Jonathan Zittrain
- The Open Source Way
- The Wealth of Networks: How Social Production Transforms Markets and Freedom - Yochai Benkler
Operating systems
- A short introduction to operating systems (2001) - Mark Burgess (PDF)
- Computer Science from the Bottom Up
- How to Make a Computer Operating System (🚧 in process)
- How to write a simple operating system in assembly language - Mike Saunders (HTML)
- Operating Systems and Middleware (PDF and LaTeX)
- Operating Systems: Three Easy Pieces (PDF)
- Practical File System Design: The Be File System - Dominic Giampaolo (PDF)
- Project Oberon: The Design of an Operating System, a Compiler, and a Computer - Niklaus Wirth & Jürg Gutknecht (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)
- Writing a Simple Operating System from Scratch - Nick Blundell (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)
- 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 Kerridge (PDF) (email address requested, not required)
- The OpenCL Programming Book
- Using Concurrency and Parallelism Effectively – I - Jon Kerridge (PDF) (email address requested, not required)
- Using Concurrency and Parallelism Effectively – II - Jon
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
- Clean Code Developer: An initiative for more professionalism in software development (🚧 in process)
- Confessions of an IT Manager - Phil Factor (PDF)
- Don't Just Roll the Dice - Neil Davidson (PDF)
- How to Do What You Love & Earn What You’re Worth as a Programmer - Reginald Braithwaite
- Professional Software Development For Students - Mike G. Miller
- What I've Learned From Failure - Reginald Braithwaite
Programming Paradigms
- Introduction to Functional Programming - J. Harrison
- Mostly Adequate Guide to Functional Programming
- Type Theory and Functional Programming
Regular Expressions
- RexEgg
- The 30 Minute Regex Tutorial - Jim Hollenhorst
- The Bastards Book of Regular Expressions: Finding Patterns in Everyday Text - Dan Nguyen (Leanpub account or valid email requested)
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
- A Graduate Course in Applied Cryptography
- 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 Mobile Security Testing Guide - Bernhard Mueller et al.
- OWASP Testing Guide 4.0 (PDF)
- 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
- Developing Reactive Microservices (email address requested, not required)
- Domain Driven Design Quickly
- DSL Engineering: Designing, Implementing and Using Domain-Specific Languages - Markus Voelter
- Evolving Architectures of FinTech (email address requested, not required)
- Exploring CQRS and Event Sourcing - (EPUB, PDF)
- 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 - Nick Oostvogels (Leanpub account or valid email requested)
- Microservice Databases: Migrating from Relational Monolith to Distributed Data (email address requested, not required)
- Microservices AntiPatterns and Pitfalls (PDF)
- Microservices in Production (email address requested, not required)
- Microservices vs. Service-Oriented Architecture (PDF)
- Migrating to Cloud-Native Application Architectures (email address requested) (PDF)
- Naked objects - Richard Pawson (PDF)
- OAuth - The Big Picture
- Object-Oriented Reengineering Patterns - S. Demeyer, S. Ducasse and O. Nierstrasz
- Practicing Domain-Driven Design - Part 1 - Scott Millett (Leanpub account or valid email requested)
- Reactive Microservices Architecture (email address requested)
- Reactive Microsystems: The Evolution of Microservices at Scale (email address requested)
- Scrum and XP from the Trenches
- Serverless apps: Architecture, patterns, and Azure implementation
- Serverless Design Patterns and Best Practices - Brian Zambrano (Packt account required)
- Site Reliability Engineering
- Software Architecture Patterns (email address requested, not required)
- Software Engineering for Internet Applications
- Test Driven Development, Extensive Tutorial - Grzegorz Gałęzowski
- Web API Design - Brian Mulloy (PDF)
- Working with Web APIs - Launch School
- Your API Is Bad - Paddy Foran
Standards
Theoretical Computer Science
- Building Blocks for Theoretical Computer Science - Margaret M. Fleck
- Category Theory for Computing Science (PDF)
- Category Theory for Programmers - Bartosz Milewski (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
- 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) - Shriram Krishnamurthi
- Programming Languages: Theory and Practice - Robert Harper (PDF)
- Semantics with Applications: A Formal Introduction - Hanne Riis Nielson, Flemming Nielson (PDF)
- Structure and Interpretation of Computer Programs
- Structure and Interpretation of Computer Programs
- The Black Art of Programming - Mark McIlroy
- The Craft of Programming - John C. Reynolds
- Think Complexity - Allen B. Downey
Web Performance
- Book of Speed - Stoyan Stefanov
- High Performance Accelerated Websites - Anshul (HTML) (🚧 in process)
- High Performance Browser Networking - Ilya Grigorik
- Mature Optimization - Carlos Bueno (PDF)
ABAP
Ada
- A Guide to Ada for C and C++ Programmers (PDF)
- Ada Distilled (PDF)
- Ada for the C++ or Java Developer - Quentin Ochem (PDF)
- Ada Programming - Wikibooks
- Ada Reference Manual - ISO/IEC 8652:2012(E) Language and Standard Libraries (PDF)
- The Big Online Book of Linux Ada Programming
Agda
- Agda Tutorial
- Programming Language Foundations in Agda - Philip Wadler and Wen Kokke
Alef
Android
- Agile Android Software Development - Etienne Savard (PDF, epub, mobi)
- Android 4 App Development Essentials
- Android 5 Programming by Example - Kyle Mew, Packt. (email address requested, not required)
- Android NDK Beginner's Guide - Second Edition - Sylvain Ratabouil, Packt. (email address requested, not required)
- Android NDK Game Development Cookbook - Sergey Kosarevsky & Viktor Latypov, Packt. (email address requested, not required)
- Android Notes (PDF)
- Android Programming Guide for Beginners (PDF - need email confirmation)
- Android Programming Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- CodePath Android Cliffnotes
- Coreservlets Android Programming Tutorial
- Expert Android and Eclipse development knowledge
- Google Android Developer Training
- RxJava for Android App Development (email address requested, not required)
- 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 - Graeme Donald Robertson (PDF)
- A Practical Introduction to APL3 & APL4 - Graeme Donald Robertson (PDF)
- Mastering Dyalog APL (PDF)
Arduino
- Arduino Programming Notebook - Brian Evans
- C Programming for Arduino - Julien Bayle, Packt. (email address requested, not required)
- 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 - Dennis Yurichev (PDF)
- Assembly Language Succinctly (PDF)
- PC Assembly Language - P. A. Carter
- Professional Assembly Language (PDF)
- Programming from the Ground Up - Jonathan Bartlett (PDF)
- Ralf Brown's Interrupt List
- Software optimization resources - A. Fog
- x86-64 Assembly Language Programming with Ubuntu - Ed Jorgensen (PDF)
- x86 Assembly - Wikibooks
Non-X86
- Easy 6502 - Nick Morgan
- Machine Code for Beginners [Z80 and 6502 CPUs] - Lisa Watts and Mike Wharton (PDF) (Scroll to bottom and click on book cover)
- Machine Language for Beginners - Richard Mansfield [6502 CPU]
- Programmed Introduction to MIPS Assembly Language
- The Second Book of Machine Language
AutoHotkey
Autotools
Awk
- A User's Guide for GNU AWK
- An Awk Primer - Wikibooks
- Awk - Bruce Barnett
Bash
- Advanced Bash-Scripting Guide - M. Cooper (HTML)
- Bash Guide for Beginners (2008) - M. Garrels (HTML)
- Bash Notes (PDF)
- Bash Notes for Professionals - Compiled from StackOverflow documentation (3.x) (PDF)
- BASH Programming (2000) - Mike G. (HTML)
- Bash Reference Manual (HTML)
- Bash tutorial - Anthony Scemama (PDF)
- BashGuide - Maarten Billemont (HTML) (PDF)
- Conquering the Command Line - Mark Bates (HTML)
- Getting Started with BASH (HTML)
- Google Shell Style Guide - Paul Armstrong (HTML)
- Introduction to the Command Line - Launch School (HTML)
- Linux Fundamentals - Paul Cobbaut (PDF)
- Linux Shell Scripting Tutorial - A Beginner's Handbook (2002) - Vivek G. Gite (HTML)
- Linux Shell Scripting Tutorial (LSST) v2.0 - Vivek Gite (HTML)
- Slackbook (2005) - Alan Hicks, Chris Lumens, David Cantrell and Logan Johnson (HTML, DocBook, Postscript, PDF)
- The Bash Academy - Maarten Billemont (HTML)
- The Linux Command Line - William E. Shotts, Jr. (PDF)
- Writing Shell Scripts - William E. Shotts, Jr. (HTML)
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 - John W. Rittinghouse (PDF)
- 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
- 256-Color VGA Programming in C - David Brackeen
- A Tutorial on Pointers and Arrays in C - Ted Jensen (PDF)
- An Introduction to C & GUI Programming - Simon Long (PDF)
- Bare-metal programming for ARM - Daniels Umanovskis (PDF)
- Beej's Guide to C Programming - B. Hall
- Beej's Guide to Network Programming - Using Internet Sockets - B. Hall
- Build Your Own Lisp - Daniel Holden
- C Elements of Style - Steve Oualline
- C for Python Programmers - Carl Burch
- C Notes (PDF)
- C Programming - Wikibooks
- C Programming Boot Camp - Paul Gribble
- Deep C
- Essential C (PDF)
- Everything you need to know about pointers in C - Peter Hosey
- Functional C (1997) - Pieter H. Hartel, Henk Muller (PDF)
- Learn to Code With C - The MagPi Essentials (PDF)
- Modeling with Data - Ben Klemens (PDF)
- Modern C - Jens Gustedt (PDF)
- Object-Oriented Programming With ANSI-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 Current C Programming Language Standard – ISO/IEC 9899:202x (C2x) - Open Standards Org - www.open-std.org (PDF)
- The GNU C Programming Tutorial (PDF)
- The little book about OS development - Erik Helin, Adam Renberg
- The New C Standard - An Economic and Cultural commentary (2009) - Derek M. Jones (PDF)
- TONC GBA Programming - Game Boy Advance Development
C Sharp
- C# Essentials
- C# Notes (PDF)
- C# Notes for Professionals - Compiled from StackOverflow documentation (3.x)
- C# Programming - Wikibooks
- C# Yellow Book (intro to programming)
- Creating Mobile Apps with Xamarin.Forms C#
- Daily Design Patterns - Matthew P Jones (PDF)
- Data Structures and Algorithms with Object-Oriented Design Patterns in C# - Bruno Preiss
- Dissecting a C# Application - Christian Holm, Bernhard Spuida, Mike Kruger
- Fundamentals of Computer Programming with C# - Svetlin Nakov
- High level asynchronous programming with Reactive Extensions - Emil Petro
- Introduction to Rx
- Mastering Xamarin UI Development, Second Edition - Steven F. Daniel (Packt account required)
- Object Oriented Programming using C# - Simon Kendal, Bookboon. (email address requested, not required)
- Threading in C#
- Xamarin Cross-Platform Development Cookbook - George Taskos, Packt. (email address requested, not required)
- Xamarin.Forms Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
C++
- C++ Annotations
- C++ Core Guidelines - Editors: Bjarne Stroustrup, Herb Sutter
- C++ GUI Programming With Qt 3
- C++ Language
- C++ Notes (PDF)
- C++ Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- C++ Today (email address requested, not required)
- C++ Tricks
- CS106X Programming Abstractions in C++
- Elements of Programming - Alexander Stepanov and Paul McJones - (PDF)
- Financial Numerical Recipes in C++ - Bernt Arne Ødegaard
- Game Programming Patterns
- Google's C++ Style Guide
- Hands-On System Programming with C++ - Dr. Rian Quinn (Packt account required)
- How to make an Operating System - Samy Pesse
- 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)
- Practical C++ Metaprogramming (email address requested, not required)
- 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)
- The Ultimate Question of Programming, Refactoring, and Everything
- Thinking in C++, Second Edition, Vol. 1. - Bruce Eckel (Vol. 2)
Chapel
Cilk
Clojure
- A Brief Beginner’s Guide To Clojure
- Clojure - Functional Programming for the JVM - R. Mark Volkmann
- Clojure by Example - Hirokuni Kim
- Clojure Cheat Sheet
- Clojure community-driven documentation
- Clojure Cookbook
- Clojure Distilled Beginner Guide
- Clojure for the Brave and True
- Clojure in Small Pieces - Rich Hickey (PDF)
- Clojure Koans
- Clojure Programming - Wikibooks
- ClojureScript Koans
- ClojureScript Unraveled (HTML)
- 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 (Leanpub account or valid email requested)
- Smooth CoffeeScript
- The Little Book on CoffeeScript
ColdFusion
- CFML In 100 Minutes - J. Casimir
- Learn CF in a Week
Component Pascal
- Computing Fundamentals - Stan Warford (PDF)
Cool
Coq
Crystal
CUDA
- CUDA C Best Practices Guide (PDF)
- CUDA C Programming Guide (PDF)
- OpenCL Programming Guide for CUDA Architecture (PDF)
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
- Essential Pascal Version 1 and 2 - M. Cantù
- Expert Delphi - Paweł Głowacki (Packt account required)
DTrace
Elasticsearch
Eiffel
- A Functional Pattern System for Object-Oriented Design - Thomas Kuhne (PDF)
Elixir
- 30 Days of Elixir - Tim Morgan (HTML)
- Elixir School (HTML)
- Elixir Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- Études for Elixir (HTML)
- Getting Started Guide (HTML) (PDF, MOBI, EPUB)
- Joy of Elixir - Ryan Bigg (HTML) - Source (🚧 in process)
- Learning Elixir - Joseph Kain Blog (HTML)
- The Ultimate Guide To Elixir For Object-Oriented Programmers - Bruce Park (HTML)
Ecto
- Ecto Getting Started Guide (HTML)
Phoenix
- Phoenix v1.3.0 Guide (HTML)
- Versioned APIs with Phoenix - Elvio Vicosa (PDF)
Emacs
- An Introduction to Programming in Emacs Lisp, 3rd Edition
- GNU Emacs Lisp Reference Manual
- GNU Emacs Manual (PDF)
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 - Wikibooks (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)
ESP8266
- Kolban's book on the ESP32 & ESP8266 (Leanpub account or valid email requested)
F Sharp
- Analyzing and Visualizing Data with F# (PDF)
- F# for fun and profit (ePub)
- F# Programming - Wikibooks
- F# Succinctly, SyncFusion (PDF, Kindle) (email address requested, not required)
- Functional Programming Textbook - Yusuf M Motara (PDF)
- Programming Language Concepts for Software Developers
Firefox OS
Flutter
- Cookbook
- Flutter Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- Flutter Tutorials Handbook
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 - J.V. Noble
- And so Forth... (PDF)
- Programming Forth (PDF)
- Starting Forth
- Thinking Forth
- Thoughtful Programming and Forth
Fortran
- Introduction to fortran 95 and numerical computing: a jump-start for scientists and engineers (PDF)
- Self Study Guide: Programming in Fortran 95 (PDF)
FreeBSD
- Books and Articles from FreeBSD Site
- The Complete FreeBSD
- Using C on the UNIX System - David A. Curry
Git
- A Visual Git Reference - Mark Lodato
- Conversational Git
- git - the simple guide
- Git for Computer Scientists
- Git From The Bottom Up - J. Wiegley
- 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) (email address requested, not required)
- Git Workflows
- GitHub Cheat Sheet - Tim Green (Markdown)
- How to Collaborate on Github - André J
- Intoduction to Git and Github - Launch School
- Intoduction to Git and Github - Tutorial - Dr. Chris Bourke (PDF)
- Learn Git - Learn Version Control with Git - Tobias Günther
- Pro Git - Scott Chacon
- Pro Git Reedited - Jon Forrest
- Ry's Git Tutorial - Ryan Hodson
- Think Like (a) Git: A Guide for the Perplexed
Go
- An Introduction to Programming in Go
- Build Web Application with Golang
- Building Web Apps with Go
- Effective Go
- Go 101 - @TapirLiu
- Go Bootcamp - Matt Aimonetti
- Go by Example
- Go for Javascript Developers
- Learning Go
- Let's learn Go!
- Practical Cryptography With Go - Kyle Isom
- The Go Tutorial
- The Little Go Book
- Web apps in Go, the anti textbook
Groovy
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
Hack
Hadoop
- Big Data Analytics with Hadoop 3 - Sridhar Alla (Packt account required)
- Cloudera Impala - John Russel
- Data-Intensive Text Processing with MapReduce (Jimmy Lin and Chris Dyer) (PDF)
- Hadoop Explained - Aravind Shenoy, Packt. (email address requested, not required)
- 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)
- Happy Learn Haskell Tutorial
- Haskell - Wikibooks
- 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
- Parallel and Concurrent Programming in Haskell - Simon Marlow
- Real World Haskell
- Speeding Through Haskell
- Wise Man's Haskell - Andre Popovitch
- 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
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
- CSS Animation 101
- Dive Into HTML5 - Mark Pilgrim (PDF)
- GA Dash
- Google's HTML/CSS Style Guide
- How to Code in HTML5 and CSS3 - Damian Wielgosik (PDF)
- 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 Graphing and Data Visualization Cookbook - Ben Fhala, Packt. (email address requested, not required)
- HTML5 Notes for Professionals - Compiled from StackOverflow documentation (3.x)
- HTML5 Shoot 'em Up in an Afternoon - Bryan Bibat
- Learn CSS Layout
- Learn CSS Layout the pedantic way
- Learn to Code HTML & CSS - Shay Howe
- MaintainableCSS
- Pro HTML5 Programming - Jen Simmons, Chris O'Connor, Dylan Wooters, Peter Lubbers
- Scalable and Modular Architecture for CSS - Jonathan Snook
- Understanding Flexbox: Everything you need to know - Ohans Emmanuel
- Web Audio API - Boris Smus
Bootstrap
- Twitter Bootstrap 3 Succinctly (PDF, Kindle) (email address requested, not required)
- Twitter Bootstrap Succinctly (PDF, Kindle) (email address requested, not required)
HTTP
- Introduction to HTTP - Launch School
Idris
- Gentle Introduction to Dependent Types with Idris - Boro Sitnikovski (Leanpub account or valid email requested)
Icon
iOS
- Cocoa Dev Central
- iOS 8 App Development Essentials
- iOS Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- Mastering iOS Game Development - Miguel DeQuadros, Packt (email address requested, not required)
- NSHipster (Resource)
- Start Developing iOS Apps (Swift) (HTML)
- Start Developing iOS Apps Today (Objective-C) - Last updated 22.10.2013 (PDF)
IoT
- IoT in five days- V1.1 (PDF, EPUB)
- Mastering Internet of Things - Peter Waher (Packt account required)
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
- J Primer
- 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 (2010) - David Poole and Alan Mackworth
- Category wise tutorials - J2EE - Yong Mook Kim
- Core Servlets and JavaServer Pages, 2nd Ed. (2003) - Marty Hall and Larry Brown
- Data Structures in Java for the Principled Programmer (2007) - Duane A. Bailey (PDF)
- Google's Java Style Guide
- Introduction to Computer Science "booksite" - by Robert Sedgewick and Kevin Wayne (HTML)
- Introduction to Computer science using Java - Bradley Kjell
- Introduction to Programming in Java - Robert Sedgewick and Kevin Wayne
- Introduction to Programming Using Java - David J. Eck
- Java Application Development on Linux (2005) - Carl Albing and Michael Schwarz (PDF)
- Java, Java, Java Object-Oriented Problem Solving - R. Morelli and R.Walde
- Java Language and Virtual Machine Specifications - James Gosling, et al
- Java Notes for Professionals - Compiled from StackOverflow documentation (3.x)
- Java Programming for Kids - Yakov Fain
- Java Projects, Second Edition - Peter Verhas (Packt account required)
- Java: The Legend - Ben Evans (email address requested, not required)
- Learning Java (4th Edition) - Patrick Niemeyer and Daniel Leuck
- Microservices Best Practices for Java (PDF)
- Microservices for Java Developers - Christian Posta (email address requested, not required)
- Modern Java EE Design Patterns - Markus Eisele (email address requested, not required)
- Neural Network Development with Java - Alan M. F. Souza and Fabio M. Soares (email address requested, not required)
- Object-Oriented Programming in JavaTM Textbook - Rick Halterman (PDF per Chapter)
- Object Oriented Programming using Java - Simon Kendal (PDF) , Bookboon. (email address requested, not required)
- OOP - Learn Object Oriented Thinking & Programming - Rudolf Pecinovsky (PDF)
- Open Data Structures (in Java) - Pat Morin (PDF)
- Processing XML with Java (A Guide to SAX, DOM, JDOM, JAXP, and TrAX) (2002) - Elliotte Rusty Harold
- The ABC of PDF with iText: PDF Syntax essentials - Bruno Lowagie (Leanpub account or valid email requested)
- The Java EE6 Tutorial (PDF)
- The Java EE7 Tutorial - Eric Jendrock, et al (PDF)
- The Java Tutorials
- Think Java: How to Think Like a Computer Scientist - Allen B. Downey and Chris Mayfield
- Welcome to Java for Python Programmers - Brad Miller
- Welcome to the Java Workshop (2006) - Trevor Miller
Codename One
- Codename One Developer Guide (PDF)
- Create an Uber Clone in 7 Days (first 2 chapters) - Shai Almog (PDF)
JasperReports
Spring
- Building Applications with Spring 5 and Vue.js 2 - James J. Ye (Packt account required)
- Software Architecture with Spring 5.0 - René Enríquez, Alberto Salazar (Packt account required)
- Spring Framework Reference Documentation - Rod Johnson et al.
Spring Boot
- Spring Boot Reference Guide - Phillip Webb et al. (PDF)
Spring Data
- Spring Data Reference - Oliver Gierke, Thomas Darimont, Christoph Strobl, Mark Paluch, Jay Bryant
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
- Directory of free Javascript ebooks
- 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 Challenges Book
- JavaScript Enlightenment - Cody Lindley
- JavaScript ES6 and beyond - Alberto Montalesi (PDF, epub)
- 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) (email address requested, not required)
- 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
- Let's Learn ES6 - Ryan Christiani (Superbook format)
- Managing Space and Time with JavaScript - Book 1: The Basics - Noel Rappin
- Marionette Exposé: Learn to write modular Javascript applications using Backbone Marionette and RequireJS/AMD - Jack Killilea (Leanpub account or valid email requested)
- Mastering JavaScript High Performance - Chad R. Adams, Packt. (email address requested, not required)
- Mozilla Developer Network's JavaScript Guide
- O'Reilly Programming JavaScript Applications
- Object-Oriented JavaScript - Stoyan Stefanov, Kumar Chetan Sharma (email address requested, not required)
- Oh My JS - Azat Mardanov
- Patterns For Large-Scale JavaScript Application Architecture - Addy Osmani
- Speaking JavaScript - Dr. Axel Rauschmayer
- The JavaScript Tutorial
- The JavaScript Way - Baptiste Pesquet
- The Problem with Native JavaScript APIs
- Understanding ECMAScript 6 - Nicholas C. Zakas
- Understanding JavaScript OOP (Sorella)
- You Don't Know JS
Angular.js
- Angular for the jQuery developer
- Angular.js Guide
- Angular.js Material Designing
- Angular.js Tutorial
- AngularJS - Step by Logical Step
- AngularJS Essentials - Rodrigo Branas, Packt (email address requested, not required)
- AngularJS Succinctly (PDF, Kindle) (email address requested, not required)
- AngularJs vs EmberJs
- AngularJS with Ruby on Rails
- Developing with Angular - Denys Vuika (Leanpub account or valid email requested)
- Practical Angular: Build your first web apps with Angular 8 - Ahmed Bouchefra (Leanpub account or valid email requested)
- Recipes with Angular.js - Frederik Dietz
- Seven-Part Introduction to Angular
- Unit Testing Best Practices in AngularJS
Aurelia
- Beginning Aurelia - behzad (Leanpub account or valid email requested)
Backbone.js
- A Complete guide for learning Backbone.js
- A pragmatic guide to Backbone.js apps
- Backbone Tutorials: Beginner, Intermediate and Advanced - Thomas Davis (Leanpub account or valid email requested)
- Backbone.js + Require.js, Modularization and Just in Time Dependency Loading, part 1 part 2
- Backbone.js and socket.io
- Backbonejs Tutorials
- Building Single Page Web Apps with Backbone.js (🚧 in process)
- Developing Backbone.js Applications
- Getting Started with Backbone.js
- How to share Backbone.js models with node.js
Booty5.js
D3.js
- D3 Tips and Tricks - Malcolm Maclean
- Dashing D3.js Tutorial
- Interactive Data Visualization for the Web
- Interactive Data Visualization with D3
Dojo
- Dojo: The Definitive Guide - Matthew A. Russell
Elm
- An Introduction to Elm (HTML)
- Beginning Elm - Pawan Poudel (HTML)
- Building a Live-Validating Signup Form in Elm
- Elm Accelerated - James Porter
- Elm Programming Language (HTML)
- Elm Tutorial
- Learn You an Elm (HTML)
- The Elm Architecture
Ember.js
- AngularJs vs EmberJs
- DockYard Ember.js Style Guide
- Ember App with RailsApi
- Ember.js - Getting started
- Vic Ramon's Ember Tutorial
Express.js
- Express.js Guide - Azat Mardanov
jQuery
- JavaScript Fundamentals, Plus a Dash Of JQuery - for dinner ladies
- jQuery Novice to Ninja (PDF)
- jQuery Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
Meteor
- BulletProof Meteor
- Your First Meteor Application, A Complete Beginner’s Guide to the Meteor JavaScript Framework
Node.js
- An Introduction to libuv - Nikhil Marathe (PDF - ePub)
- Mixu's Node Book
- Node Documentation
- Node: Up and Running - Tom Hughes-Croucher
- Node.js Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- The Node Beginner Book
- What You Need To Know About Node.js - Bruno Joseph Dmello, Packt (email address requested, not required)
Om
React
- Free React on Rails course
- Full-Stack React Projects - Shama Hoque (Packt account required)
- Hacking with React
- Intro to the React Framework
- Learning React.js: Getting Started and Concepts
- React-Bits (vasanthk)
- React Enlightenment
- React In-depth: An exploration of UI development
- React Primer Draft
- React Tutorial
- React Tutorial by Josh Finnie
- React with ASP.NET Core Tutorial
- React.js Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- React.js Tutorial: Now is Your Time to Try It, Right in Your Browser
- SurviveJS - Webpack and React
- The Road to learn React - Build a Hacker News App along the Way - Robin Wieruch (Leanpub account or valid email requested) markdown
React Native
- Programming React Native (Leanpub account or valid email requested)
- React Native Animation Book
- React Native Express
- React Native Training
Redux
- Full-Stack Redux Tutorial
- SoundCloud Application in React + Redux
- The Complete Redux Book - Boris Dinkevich and Ilya Gelman (Leanpub account or valid email requested)
Vue.js
- Vue.js 2 Design Patterns and Best Practices - Paul Halliday (Packt account required)
Jenkins
Julia
- Introducing Julia - Wikibooks
- Julia by Example - Samuel Colvin (GitHub repo)
- Julia language: a concise tutorial - Antonello Lobianco (GitBook)
- Learn Julia in Y minutes - Leah Hanson
- Quantitative Economics with Julia - Jesse Perla, Thomas J. Sargent and John Stachurski (PDF)
- The Julia Express - Bogumił Kamiński (PDF)
- Think Julia - Ben Lauwens and Allen Downey (GitBook)
Kotlin
- Kotlin Notes for Professionals book - Compiled from StackOverflow documentation
- Kotlin Official Documentation
LaTeX / TeX
LaTeX
- Arbitrary LaTex Reference
- Begin Latex in minutes
- LaTeX - Wikibooks
- The Not So Short Introduction to LaTeX (PDF)
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 - Wikibooks
- Advanced Linux Programming (PDF)
- Automated Linux From Scratch
- Getting Started with Ubuntu
- GNU Autoconf, Automake and Libtool
- GTK+/Gnome Application Development
- Hardened Linux From Scratch
- Kali Linux 2018: Assuring Security by Penetration Testing, Fourth Edition - Shiva V. N Parasram, Alex Samm, Damian Boodoo, Gerard Johansen, Lee Allen, Tedi Heriyanto, Shakeel Ali (Packt account required)
- Kali Linux: Professional Penetration-Testing Distribution
- Learning Debian GNU/Linux
- Linux 101 Hacks - Ramesh Natarajan (PDF)
- Linux Administrator's Security Guide
- Linux Advanced Routing & Traffic Control HOWTO
- Linux Device Drivers, Third Edition - Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman
- Linux from Scratch
- Linux Inside
- Linux Kernel in a Nutshell
- Linux Newbie Administrator Guide
- Linux Security for Beginners
- Linux Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- OpenVZ Linux virtualization (PDF)
- Red Hat Enterprise Linux 6 Essentials
- Secure Programming HOWTO - Creating Secure Software - D. A. Wheeler (HTML, PDF)
- Ten Steps to Linux Survival: Bash for Windows People - Jim Lehmer
- 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
- Ubuntu Pocket Guide and Reference
- Ubuntu Server Guide (PDF)
- Understanding the Linux Virtual Memory Manager - Mel Gorman (HTML, PDF)
- UNIX Systems Programming for SVR4 - David A. Curry
- 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 (PDF, PS)
- 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 - D. Hoyte
- Lisp Hackers: Interviews with 100x More Productive Programmers - Vsevolod Dyomkin
- Lisp Koans
- Lisp Web Tales - Pavel Penev (Leanpub account or valid email requested)
- On Lisp - P. Graham
- Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp - Peter Norvig (PDF, epub, markdown)
- Practical Common Lisp - P. Seibel
- SOLID Design Principles in Common Lisp - Momozor (PDF)
- Successful Lisp: How to Understand and Use Common Lisp - David Lamkins (PDF)
- The Common Lisp Cookbook
- The Evolution of Lisp - Guy L. Steele Jr., Richard P. Gabriel (PDF)
Livecode
- LiveCode userguide (PDF)
Lua
Make
- Managing Projects with GNU Make - Robert Mecklenburg
Markdown
- Learn Markdown - Sammy P., Aaron O. (PDF) (EPUB) (MOBI)
Mathematica
- 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 - Wikibooks
- MATLAB Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- 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
- HGInit - Mercurial Tutorial - Joel Spolsky
- Mercurial: The Definitive Guide
- Mercurial: The Definitive Guide 2nd edition (source repository) (🚧 in process)
Mercury
- The Mercury Users' Guide (PDF)
Modelica
MySQL
Neo4J
- Graph Databases (PDF)
- Graph Databases 2nd edition (account required)
.NET Framework
- Clean Code .NET
- Entity Framework
- Game Creation with XNA - Wikibooks
- .NET for Visual FoxPro Developers
- .NET Performance Testing and Optimization - The Complete Guide - Paul Glavich, Chris Farrell (PDF)
- Under the Hood of .NET Memory Management - Chris Farrell, Nick Harrison (PDF)
- Visual Studio .NET Tips and Tricks (VS 2003-2005 only)
Nim
NoSQL
- CouchDB: The Definitive Guide
- Extracting Data from NoSQL Databases: A Step towards Interactive Visual Analysis of NoSQL Data - Petter Nasholm (PDF)
- Graph Databases
- Instant MongoDB - Amol Nayak, Packt. (email address requested, not required)
- MongoDB Koans
- MongoDB Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- NoSQL Databases - Christof Strauch (PDF)
- The Little MongoDB Book
- The Little Redis Book - K. Seguin (PDF, Epub)
Oberon
- Algorithms and Data-Structures - Niklaus Wirth (PDF)
- Object-Oriented Programming in Oberon-2 - Hanspeter Mössenböck (PDF)
- Programming in Oberon - Niklaus Wirth (PDF)
Objective-C
- Google's Objective-C Style Guide
- Object-Oriented Programming with Objective-C
- Objective-C Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- Programming With Objective-C
- Try Objective-C Book
OCaml
- Developing Applications With Objective Caml
- Real World OCaml
- Think OCaml - Allen B. Downey and Nicholas Monje
- Unix System Programming in OCaml Github Repo
- Using, Understanding, and Unraveling The OCaml Language: From Practice to Theory and vice versa - Didier Rémy
Octave
- Octave Programming - Wikibooks
OpenGL ES
OpenMP
- A Guide To OpenMP
- OpenMP Application Programming Interface Standard Version 4.0 (PDF)
- OpenMP Application Programming Interface Standard Version 5.0 (PDF)
OpenResty
OpenSCAD
- OpenSCAD User Manual - Wikibooks
TrueOS
Perl
- Beginning Perl
- Data Munging with Perl (PDF)
- Embedding Perl in HTML with Mason - D. Rolsky, K. Williams
- Essential Perl (PDF)
- Exploring Programming Language Architecture in Perl
- Extreme Perl - R. Nagier (HTML, PDF)
- Higher-Order Perl - M. J. Dominus (PDF)
- Impatient Perl
- Learning Perl The Hard Way
- Mastering Perl - brian d foy
- Modern Perl 5
- Perl & LWP
- Perl 5 Internals
- Perl for the Web - C. Radcliff
- Perl Training Australia - Course Notes
- Plack Handbook
- SDL::Manual Writing Games in Perl
- Template Toolkit Documentation
- The DBIx-Class Book
- The PDL Book (PDF)
- Web Client Programming with Perl
Perl 6 / Raku
- Perl 6 at a Glance - Andrew Shitov (HTML) (PDF)
- Perl 6 Introduction
- Perl 6 Programming - Wikibooks
- Raku One-Liners - Andrew Shitov (PDF)
- Think Perl 6 - Laurent Rosenfeld, with Allen B. Downey (PDF)
- Using Perl 6 (🚧 project is dead)
PHP
- PHP 5 Power Programming (PDF)
- PHP Best Practices
- PHP Internals Book
- PHP Pandas - Dayle Rees
- PHP Programming - Wikibooks
- PHP Security Guide
- PHP: The Right Way
- PHPUnit Manual - Sebastian Bergmann (PDF)
- Practical PHP Programming
- Practical PHP Testing
- Survive The Deep End: PHP Security
- Using Libsodium in PHP Projects
CakePHP
- CakePHP Cookbook 2.x (PDF)
CodeIgniter
Drupal
- The Tiny Book of Rules (PDF)
Laravel
- Laravel 5.x Official Documentation. Synced Daily (Leanpub account or valid email requested)
- Laravel Best Practices
- Laravel: Code Bright - Dayle Rees
- Laravel: Code Happy - Dayle Rees
- Laravel: Code Smart - Dayle Rees
- Laravel Collections Unraveled - Jeffrey Madsen (Leanpub account or valid email requested)
Symfony
- The Symfony Best practices 4.1.x (PDF)
- The Symfony Book 2.8.x
- The Symfony Book 3.4.x
- The Symfony Book 4.4.x
Zend
PicoLisp
PostgreSQL
- Postgres Official Documentation
- Postgres Succinctly (PDF, Kindle) (email address requested, not required)
- Practical PostgreSQL
- The Internals of PostgreSQL for database administrators and system developers
PowerShell
- Creating HTML Reports in PowerShell (PDF,ePub,HTML)
- DevOps: The Ops Perspective (PDF, ePub, MOBI)
- Ditch Excel: Making Historical & Trend Reports in PowerShell (PDF, ePub, MOBI)
- Introduction to PowerShell for Unix People (PDF, ePub, HTML)
- Layman’s Guide to PowerShell 2.0 remoting (PDF)
- Learn PowerShell Core 6.0 - David das Neves, Jan-Hendrik Peters (Packt account required)
- Mastering PowerShell v2
- PowerShell 2.0 – One CMDLET At A Time (PDF)
- PowerShell Notes for Professionals - Compiled from StackOverflow documentation (3.x)
- PowerShell Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- PowerShell Tips to Write By - Adam Bertram (Leanpub account or valid email requested) (🚧 in process)
- Secrets of PowerShell Remoting (PDF, ePub, MOBI)
- The Big Book of PowerShell Error Handling (PDF, ePub, MOBI)
- The Big Book of PowerShell Gotchas (PDF, ePub, MOBI)
- The DSC Book (PDF, ePub, HTML)
- The Monad Manifesto - Annotated (PDF, ePub, MOBI)
- Why PowerShell? (PDF, ePub, MOBI)
- Windows PowerShell Networking Guide (PDF, ePub, MOBI)
Processing
Prolog
- Adventure in Prolog
- Applications of Prolog - Attila Csenki, Bookboon. (email address requested, not required)
- Coding Guidelines for Prolog - Michael A. Covington, Roberto Bagnara, Richard A. O'Keefe, Jan Wielemaker, Simon Price
- Concise Intro to Prolog
- Expert Systems in Prolog
- GNU Prolog Manual (PDF)
- Introduction to Prolog for Mathematicians - J. Ireson-Ireson-Paine
- Learn Prolog Now!
- Logic, Programming and Prolog (2ed)
- Natural Language Processing Techniques in Prolog - P. Blackburn, K. Striegnitz
- Prolog and Natural - Language Analysis - Fernando C. N. Pereira, Stuart M. Shieber
- Prolog for Programmers
- Prolog Problems - Werner Hett
- Prolog Techniques - Attila Csenki, Bookboon. (email address requested, not required)
- Prolog Tutorial
- The Art of Prolog, Second Edition - Leon S. Sterling, Ehud Y. Shapiro (Open Access)
- 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
- 20 Python Libraries You Aren't Using (But Should) (email address requested, not required)
- A Beginner's Python Tutorial - Wikibooks
- A Byte of Python (3.x) (HTML, PDF, EPUB, Mobi)
- A Guide to Python's Magic Methods - Rafe Kettler
- A Whirlwind Tour of Python - Jake VanderPlas (PDF) (EPUB, MOBI)
- Automate the Boring Stuff - Al Sweigart
- Biopython (PDF)
- Build applications in Python the antitextbook (3.x) (HTML, PDF, EPUB, Mobi)
- Building Skills in Object-Oriented Design (Python) - Steven F. Lott (PDF) (2.1.1)
- Building Skills in Python - Steven F. Lott (PDF) (2.6)
- Code Like a Pythonista: Idiomatic Python - David Goodger
- CodeCademy Python
- Composing Programs (3.x)
- Data Structures and Algorithms in Python - B. R. Preiss (PDF)
- Dive into Python 3 - Mark Pilgrim (3.0)
- Dive into Python - Mark Pilgrim (2.3)
- From Python to NumPy
- Full Stack Python
- Functional Programming in Python (email address requested, not required)
- Fundamentals of Python Programming - Richard L. Halterman (PDF) (🚧 in process)
- Google's Python Class (2.4 - 2.x)
- Google's Python Style Guide
- Hacking Secret Cyphers with Python - Al Sweigart (3.3)
- Hadoop with Python (email address requested, not required)
- Hands-On Natural Language Processing with Python - Rajesh Arumugam, Rajalingappaa Shanmugamani (Packt account required)
- Hitchhiker's Guide to Python! (2.6)
- How to Make Mistakes in Python - Mike Pirnat (PDF) (1st edition)
- How to Think Like a Computer Scientist: Learning with Python, Interactive Edition (3.2)
- How to Think Like a Computer Scientist: Learning with Python - Allen B. Downey, Jeff Elkner and Chris Meyers (2.4)
- Think Python - Allen B. Downey (2.x & 3.0)
- Intermediate Python - Muhammad Yasoob Ullah Khalid (1st edition)
- Introduction to Programming with Python (3.3)
- Introduction to Programming Using Python - Cody Jackson (1st edition) (2.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 Programming, Second Edition - Fabrizio Romano (Packt account required)
- Learn to Program Using Python - Cody Jackson (PDF)
- Learning to Program
- Lectures on scientific computing with python - J.R. Johansson (2.7)
- Making Games with Python & Pygame - Al Sweigart (2.7)
- Math for programmers (using python)
- Modeling Creativity: Case Studies in Python - Tom D. De Smedt (PDF)
- Natural Language Processing with Python (3.x)
- Non-Programmer's Tutorial for Python 3 - Wikibooks (3.3)
- Non-Programmer's Tutorial for Python 2.6 - Wikibooks (2.6)
- Picking a Python Version: A Manifesto (email address requested, not required)
- 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 Structures 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 - John W. Shipman (PDF) (2.7)
- Python 3 Official Documentation (PDF, EPUB, HTML, TEXT) (3.x)
- Python 3 Tutorial
- Python Data Science Handbook - Jake VanderPlas (HTML, Jupyter Notebooks)
- Python for Everybody Exploring Data Using Python 3 - Charles Severance (PDF, EPUB, HTML)
- Python for you and me (2.7.3)
- Python for you and me (3.x)
- Python Idioms (PDF)
- Python in Education (email address requested, not required)
- Python in Hydrology - Sat Kumar Tomer
- Python Koans (2.7 or 3.x)
- Python Machine Learning By Example - Yuxi (Hayden) Liu (Packt account required)
- Python Module of the Week (3.x)
- Python Notes for Professionals - Compiled from StackOverflow documentation (3.x)
- Python Practice Book (2.7.1)
- Python Practice Projects
- Python Programming - Wikibooks (2.7)
- Python Programming - Wikibooks (PDF) (2.6)
- Scipy Lecture Notes
- SICP in Python (3.2)
- Suporting Python 3: An In-Depth Guide (2.6 - 2.x & 3.1 - 3.x)
- Test-Driven Web Development with Python - Harry Percival (3.3 - 3.x)
- Text Processing in Python - David Mertz (2.3 - 2.x)
- The Coder's Apprentice: Learning Programming with Python 3 - Pieter Spronck (PDF) (3.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
- The Python GTK+ 3 Tutorial
- The Standard Python Library - Fredrik Lundh
- Think Complexity - Allen B. Downey (2nd Edition) (PDF, HTML)
- Tiny Python 3.6 Notebook - Matt Harrison (3.6)
- Web2py: Complete Reference Manual, 6th Edition (pre-release) (2.5 - 2.x)
Django
- Django Girls Tutorial (1.11)
- Django Official Documentation (PDF) (1.5)
- Django Official Documentation (PDF) (1.7)
- Django Official Documentation (PDF) (1.9)
- Django Official Documentation (PDF) (1.10)
- Django Official Documentation (PDF) (2.2)
- Django RESTful Web Services - Gaston C. Hillar (Packt account required)
- Djen of Django
- Effective Django (1.5)
- How to Tango With Django (1.7)
Flask
- Explore Flask - Robert Picard
- The Flask Mega-Tutorial - Miguel Grinberg (0.9)
Kivy
Pandas
- Learn Pandas - Hernan Rojas (0.18.1)
Pyramid
Tornado
QML
- Qt5 Cadaques - Juergen Bocklage-Ryannel and Johan Thelin (HTML, PDF, ePub) (🚧 in process)
R
- Advanced R Programming - Hadley Wickham
- An Introduction to Statistical Learning with Applications in R - Gareth James, Daniela Witten, Trevor Hastie and Robert Tibshirani (PDF)
- Cookbook for R - Winston Chang
- Data Analysis for the Life Sciences - Rafael A Irizarry, Michael I Love (Leanpub account or valid email requested)
- Exploratory Data Analysis with R - Roger D. Peng (Leanpub account or valid email requested)
- Introduction to Probability and Statistics Using R - G. Jay Kerns (PDF)
- Learning Statistics with R - Daniel Navarro
- Machine Learning with R - Brett Lantz, Packt. (email address requested, not required)
- ModernDive - Chester Ismay and Albert Y. Kim
- Practical Regression and Anova using R - Julian J. Faraway (PDF)
- R for Data Science - Garrett Grolemund and Hadley Wickham
- R for Spatial Analysis (PDF)
- R Language for Programmers - John D. Cook
- R Packages - Hadley Wickham
- R Practicals (PDF)
- R Programming - Wikibooks
- R Programming for Data Science - Roger D. Peng (Leanpub account or valid email requested)
- R Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
- The caret Package - Max Kuhn
- The R Inferno - Patrick Burns (PDF)
- The R Language
- The R Manuals
- Tidy Text Mining with R - Julia Silge and David Robinson
Racket
Raspberry Pi
- Raspberry Pi Cookbook for Python Programmers - Tim Cox, Packt. (PDF) (email address requested, not required)
- Raspberry Pi: Measure, Record, Explore - Malcolm Maclean (HTML)
- Raspberry Pi Users Guide - (2012) - Eben Upton (PDF)
- The Official Raspberry Pi Project Book (PDF)
REBOL
- Learn REBOL - Nick Antonaccio
Ruby
- A community-driven Ruby style guide
- CodeCademy Ruby
- Developing Games With Ruby - Tomas Varaneckas
- I Love Ruby
- Introduction to Programming with Ruby - Launch School
- Just Enough Ruby to Get By
- Learn Ruby First - Frederick John
- Learn Ruby the Hard Way - Zed Shaw
- Learn to Program - 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
- Ruby Web Dev: The Other Way - Yevhen Kuzminov
- Rubyfu
- The Bastards Book of Ruby
- The Definitive Ruby Tutorial For Complete Beginners - Jesus Castello
- The Unofficial Ruby Usage Guide (at Google) - Ian Macdonald
- Using Blocks in Ruby - Jay McGavren (email address requested)
- 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 - Reg Braithwaite
- Learn Ruby on Rails as You Modify a Craigslist Clone
- Objects on Rails - Avdi Grimm
- 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 (Rails 5): Learn Web Development with Rails - Michael Hartl
- Upgrading to Rails 4
Sinatra
Rust
- Rust by Example
- Rust for Rubyists - Steve Klabnik
- The Rust Programming Language
- The Rustonomicon
- Why Rust? (PDF)
Sage
- Sage for Power Users - William Stein (PDF)
- The Sage Manuals
Scala
- A Scala Tutorial for Java programmers (PDF)
- Advanced Scala with Cats - Noel Welsh and Dave Gurnell (PDF, HTML, EPUB) (email address requested, not required)
- Another tour of Scala - David Copeland
- Creative Scala - Noel Welsh and Dave Gurnell (PDF, HTML, EPUB) (email address requested, not required)
- EAI Patterns with Actor Model - Vaughn Vernon
- Effective Scala
- Essential Scala - Noel Welsh and Dave Gurnell (PDF, HTML, EPUB) (email address requested, not required)
- Functional Programming for Mortals - Sam Halliday
- Functional Programming, Simplified (Scala edition) - Alvin Alexander (free preview (400 pages from 595), PDF)
- Hello, Scala - Alvin Alexander (free preview (120 pages from 257), PDF)
- Learning Scala in small bites
- Learning Scalaz
- Pro Scala: Monadic Design Patterns for the Web
- Programming in Scala, First Edition - by M. Odersky, L. Spoon, B. Venners
- PythonToScala - Rob Story
- S-99: Ninety-Nine Scala Problems - Phil! Gold
- Scala & Design Patterns: Exploring Language Expressivity - Fredrik Skeel Løkke (PDF)
- Scala By Example - M. Odersky (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
- The Type Astronaut's Guide to Shapeless - Dave Gurnell (PDF, HTML, EPUB) (email address requested, not required)
- 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
- Essential Play - Dave Gurnell (PDF, HTML, EPUB) (email address requested, not required)
- Play Framework Recipes - Alvin Alexander
Scheme
- A Pamphlet Against R. Computational Intelligence in Guile Scheme
- An Introduction to Scheme and its Implementation
- Concrete Abstractions: An Introduction to Computer Science Using Scheme - M. Hailperin, B. Kaiser, K. Knight
- How to Design Programs
- Scheme Tutorial
- Simply Scheme: Introducing Computer Science - B. Harvey, M. Wright
- 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 - Wikibooks
Scilab
Scratch
Sed
Self
Smalltalk
- Deep into Pharo
- Dynamic Web Development with Seaside - S. Ducasse, L. Renggli, C. D. Shaffer, R. Zaccone
- Enterprise Pharo: a Web Perspective
- Numerical Methods with Pharo
- Pharo by Example (Smalltalk Implementation and IDE)
- Squeak By Example (Smalltalk Implementation and IDE)
- Stef's Free Online Smalltalk Books (meta-list)
Snap
- Snap! Reference Manual - B. Harvey, J. Mönig (PDF)
Spark
Splunk
- Splunk 7.x Quick Start Guide - James H. Baxter (Packt account required)
SQL (implementation agnostic)
- Developing Time-Oriented Database Applications in SQL
- SQL For Web Nerds
- SQL Notes for Professionals
- 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 - Brad McGehee (PDF) (email address requested)
- Defensive Database Programming - Alex Kuznetsov (PDF)
- Fundamentals Of SQL Server 2012 Replication - Sebastian Meine (PDF) (email address requested)
- How to Become an Exceptional DBA, Second edition - Brad McGehee (PDF)
- Inside the SQL Server Query Optimizer - Benjamin Nevarez (PDF) (email address requested)
- Introducing Microsoft SQL Server 2008 R2
- Introducing Microsoft SQL Server 2012
- Introducing Microsoft SQL Server 2014
- Mastering SQL Server Profiler - Brad McGehee (PDF)
- Microsoft SQL Server Notes for Professionals (Compiled from StackOverflow documentation)
- Performance Tuning with SQL Server Dynamic Management Views - Tim Ford, Louis Davidson (PDF)
- Protecting SQL Server Data - John Magnabosco (PDF)
- SQL Server 2012 Tutorials: Reporting Services
- SQL Server 2017 Administrator's Guide - Marek Chmel, Vladimír Mužný (Packt account required)
- SQL Server Backup and Restore - Shawn McGehee (PDF) (email address requested)
- SQL Server Execution Plans, Third Edition - Grant Fritchey (PDF)
- SQL Server Hardware - Glenn Berry (PDF)
- SQL Server Internals: In-Memory OLTP - Kalen Delaney (PDF)
- SQL Server Source Control Basics - Rob Sheldon, Rob Richardson, Tony Davis (PDF)
- SQL Server Statistics - Holger Schmeling (PDF)
- SQL Server Stumpers Vol.5 (PDF)
- SQL Server Tacklebox - Rodney Landrum (PDF)
- SQL Server Transaction Log Management - Tony Davis, Gail Shaw (PDF)
- The Art of SQL Server FILESTREAM - Jacob Sebastian, Sven Aelterman (PDF)
- The Art of XSD - Jacob Sebastian (PDF)
- The Best of SQLServerCentral.com Vol 7 (PDF)
- The Redgate Guide to SQL Server Team-based Development - Phil Factor, Grant Fritchey, Alex Kuznetsov, Mladen Prajdić (PDF)
- Troubleshooting SQL Server: A Guide for the Accidental DBA - Jonathan Kehayias, Ted Krueger (PDF)
Standard ML
- Introduction to Standard ML - Atsushi Ohori (PDF)
- Programming in Standard ML '97 - Stephen Gilmore, University of Edinburgh
- Programming in Standard ML, DRAFT - Robert Harper (PDF)
- SML# Document - Atsushi Ohori, Katsuhiro Ueno
- The Definition of Standard ML (Revised) - SMLFamily GitHub project (PDF)
Subversion
Swift
- Hacking with Swift
- Learn Swift
- Swift Pocket Reference (email address requested, not required)
- Test-driven iOS Development with Swift - Dr. Dominik Hauser, Packt. (email address requested, not required)
- The Swift Programming Language (HTML) (iBook)
- Using Swift with Cocoa and Objective-C (HTML) (iBook)
Vapor
- Vapor 3 Tutorial For Beginners - Tibor Bödecs
- Vapor Official Docs
Tcl
- Tcl Programming - Richard.Suchenwirth, et. al.
- TclWise - Salvatore Sanfilippo
TEI
- What is the Text Encoding Initiative? - Lou Bernard
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
- Making games with TypeScript - Øyvind (HTML) (🚧 in process)
- TypeScript Accelerated - James Porter
- TypeScript Deep Dive
- TypeScript for C# Programmers
- TypeScript Succinctly, Syncfusion (PDF, Kindle) (email address requested, not required)
Unix
- An Introduction to Unix
- Commentary on the Sixth Edition UNIX Operating System - J. Lions
- Unix as IDE - Tom Ryder (epub, mobi)
- 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: Learn By Example
Vim
- A Byte of Vim
- Learn Vim Progressively
- Learn Vimscript the Hard Way
- Use Vim Like A Pro - Tim Ottinger (Leanpub account or valid email requested)
- 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
- Windows Phone 8 Development Succinctly - Matteo Pagani (PDF)
- Windows Phone 8.1 Development for Absolute Beginners
- Windows Phone Programming Blue Book