List of Completely Free Programming Books
Thursday, September 26, 2013
Richard Harris |
Learn to code for free with these great free books and resources for programmers, developers, app designers, and more. Each of these resources has been hand-picked.
Developers and programmers alike need resources, and if you are looking for a free way to dive into programming, I've got the source for you. Head on over to stackoverflow and check out this growing list of books online or offline that you can use to either get started with or sharpen your app development mastery.
Everything from C# essentials to Learning Node.JS is there, free to grab and enjoy!
The list of free programming books
- 97 Things Every Programmer Should Know
- O'Reilly's Open Books Project
- How Computers Work
- Building Android Apps with HTML, CSS, and JavaScript
- Essential C
- The Little Book on CoffeeScript
- Dive Into HTML5
- C# Programming - Wikibook
- The Objective-C Programming Language
I'm copying the entire list below just for sake of putting the list somewhere else..
Meta-Lists
- 25 Free Computer Science Ebooks
- Book Training - On Video
- Cheat Sheets (Free)
- CodePlex List of Free E-Books
- Free Tech Books
- Galileo Computing (German)
- How to Design Programs: An Introduction to Computing and Programming
- Microsoft Press: Free E-Books
- MindView Inc
- O'Reilly's Open Books Project
- Sofware Program Managers Network
- TechBooksForFree.com
- Theassayer.org
- Wikibooks: Programming
Graphics Programming
- DirectX manual (draft)
- Learning Modern 3D Graphics Programming (draft)
- GPU Gems
- GPU Gems 2 - ch 8,14,18,29,30 as pdf
- GPU Gems 3
- Graphics Programming Black Book
- ShaderX series
Language Agnostic
- 97 Things Every Programmer Should Know
- Algorithms and Data-Structures (PDF)
- Algorithms (draft)
- The Architecture of Open Source Applications
- The Art of Unix Programming
- Best Kept Secrets of Peer Code Review
- Binary Trees
- The Cathedral and the Bazaar
- Clever Algorithms
- Communicating Sequential Processes (PDF) - Tony Hoare
- Compiler Construction (PDF)
- Computer Musings (lectures by Donald Knuth)
- Data Structures and Algorithms: Annotated Reference with Examples
- Database Fundamentals (PDF)
- Data-Intensive Text Processing with MapReduce (PDF)
- The Definitive Guide to Building Code Quality
- Designing Interfaces by Jennifer Tidwell
- Digital Signal Processing For Engineers and Scientists
- Domain Driven Design Quickly
- Don't Just Roll the Dice
- Essentials of Metaheuristics by Sean Luke
- Essential Skills for Agile Development
- A Field Guide To Genetic Programming
- Flow based Programming
- Foundations of Computer Science - Al Aho and Jeff Ullman
- Foundations of Programming
- Getting Real
- Getting started with Open source development (PDF)
- The Great Tree List Recursion Problem
- Guide to the Software Engineering Body of Knowledge
- How Computers Work
- How to Design Programs
- How to Think Like a Computer Scientist
- How to Write Parallel Programs
- How to write Unmaintainable Code
- I Am a Bug
- An Introduction to the Theory of Computation
- Introduction to Functional Programming (class lectures and slides)
- Introduction to Information Retrieval
- Is Parallel Programming Hard, And, If So, What Can You Do About It?
- Learn to Program
- Let's Build a Compiler
- Linkers and loaders
- Linked List Basics
- Linked List Problems
- Mathematical Logic - an Introduction (PDF)
- Matters Computational
- Mining of Massive Datasets
- NASA Manager Handbook for Software Development (PDF)
- NASA Software Measurement Handbook
- Object-Oriented Reengineering Patterns
- Online Course Materials
- OO Design
- Operating Systems and Middleware (PDF and LaTeX)
- Patterns and Practices: Application Architecture Guide 2.0
- Patterns of Software: Tales from the Software Community (PDF)
- Planning Algorithms
- PNG: The Definitive Guide
- Pointers And Memory
- Producing Open Source Software
- Programming Languages: Application and Interpretation
- Programming Methodology
- Programming Pearls
- Project Oberon (PDF)
- Seamless Object-Oriented Software Architecture
- Security Engineering
- Structure and Interpretation of Computer Programs
- Summary of the GoF Design Patterns
- The Little Book of Semaphores
- The TCP/IP Guide
- Think Stats: Probability and Statistics for Programmers (PDF, code written in Python)
- Type Theory and Functional Programming
- Understanding IP Addressing: Everything you ever wanted to know (PDF)
Android
Autotools
ASP.NET MVC
Assembly Language
- Programming from the Ground Up (PDF)
- Paul Carter's Tutorial on x86 Assembly
- Software optimization resources by Agner Fog
Bash
- Advanced Bash-Scripting Guide
- Bash Guide for Beginners by Machtelt Garrels
- Lhunath's Bash Guide
- The Command Line Crash Course (also a Powershell reference)
C / C++
- Beej's Guide to Network Programming
- Beej's Guide to C Programming
- The C book
- C++ Annotations
- C++ GUI Programming With Qt 3
- CS106X Programming Abstractions in C++
- Essential C
- Introduction to Design Patterns in C++ with Qt 4 (PDF)
- Learn C the hard way
- Matters Computational: Ideas, Algorithms, Source Code, by Jorg Arndt
- The new C standard - an annotated reference
- Object Oriented Programming in C (PDF)
- Software optimization resources by Agner Fog
- Thinking in C++, Second Edition
- Also see: The Definitive C++ Book Guide and List
C#
- See .NET below
Clojure
CoffeeScript
ColdFusion
DB2
- Getting started with DB2 Express-C (PDF)
- Getting started with IBM Data Studio for DB2 (PDF)
- Getting started with IBM DB2 development (PDF)
Delphi / Pascal
Django
Emacs
Erlang
Flex
F#
- The F# Survival Guide
- F Sharp Programming in Wikibooks
- Real World Functional Programming (MSDN Chapters)
Forth
Git
Go
Grails
Haskell
HTML / CSS
Java
- Java Application Development on Linux by Carl Albing and Michael Schwarz(PDF)
- How to Think Like a Computer Scientist
- The Java EE6 Tutorial (PDF)
- Java Thin-Client Programming
- Sun's Java Tutorials
- Thinking in Java
- OSGi in Practice (PDF)
- Category wise tutorials - J2EE
- Introduction to Programming Using Java - David J. Eck
JavaScript
- Crockford's JavaScript
- Eloquent JavaScript
- Essential Javascript & jQuery Design Patterns for Beginners
- JavaScript Essentials
- jQuery Fundamentals (starts with JavaScript basics)
- Mozilla Developer Network's JavaScript Guide
JavaScript (Node.js specific)
LaTeX
Linux
- Advanced Linux Programming
- GNU Autoconf, Automake and Libtool
- GTK+/Gnome Application Development
- The Linux Development Platform (PDF)
- Linux Device Drivers by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman
- The Linux Kernel Module Programming Guide
- Secure Programming for Linux and Unix
Lisp
- Common Lisp the Language, 2nd Edition
- Common Lisp: A Gentle Introduction to Symbolic Computation - David S. Touretzky
- Common Lisp Quick Reference
- Let Over Lambda - 50 Years of Lisp
- Natural Language Processing in Lisp
- On Lisp
- Practical Common Lisp
- Successful Lisp: How to Understand and Use Common Lisp - David Lamkins
- Sketchy LISP - Nils Holm
Lua
- Programming In Lua (for version 5)
Mathematica
Maven
- Better Builds with Maven
- Maven by Example
- Maven: The Complete Reference
- Repository Management with Nexus
- Developing with Eclipse and Maven
Mercurial
Nemerle
- See .NET below
.NET (C# / VB / Nemerle / Visual Studio)
- C# Essentials
- C# Programming - Wikibook
- C# Yellow Book (intro to programming)
- Charles Petzold's .NET Book Zero
- Data Structures and Algorithms with Object-Oriented Design Patterns in C#
- Entity Framework
- Moving to Microsoft Visual Studio 2010
- Nemerle
- Programmer's Heaven C# School Book (covers C# 1.0 and 2.0)
- Threading in C#
- Visual Basic Essentials
- Visual Studio Tips and Tricks (VS 2003-2005 only)
NoSQL
Oberon
- Programming in Oberon (PDF)
Objective-C
OCaml
- Introduction to Objective Caml (PDF)
- Objective Caml for Scientists (first chapter only)
- Unix System Programming in OCaml
- Developing Applications With Objective Caml
Oracle Server
- Oracle's Guides and Manuals
Oracle PL/SQL
- PL/SQL Language Reference
- PL/SQL Packages and Types Reference
- Steven Feuerstein's PL/SQL Obsession - Videos and Presentations
Parrot / Perl 6
- Using Perl 6 (work in progress)
Perl
- Beginning Perl
- Embedding Perl in HTML with Mason
- Essential Perl
- Extreme Perl
- Higher-Order Perl
- The Mason Book
- Modern Perl 5
- Perl & LWP
- Perl for the Web
- Perl Free Online EBooks (meta-list)
- Perl The Hard Way
- Practical mod_perl
- Web Client Programming with Perl
PHP
- PHP Essentials
- Practical PHP Programming (wiki containing O'Reilly's PHP In a Nutshell)
- Symfony2
- Zend Framework: Survive the Deep End
PowerShell
Prolog
- Adventure in Prolog
- Applications of Prolog
- Building Expert Systems in Prolog
- Introduction to Prolog for Mathematicians
- Learn Prolog Now!
- Logic, Programming and Prolog (2ed)
- Natural Language Processing in Prolog
- Natural Language Processing Techniques in Prolog
- Prolog Programming A First Course
- Prolog Techniques
- Simply Logical
- Visual Prolog 7.2 for Tyros
PostgreSQL
Python
- Building Skills in Python Version 2.5
- Byte of Python
- Data Structures and Algorithms in Python
- Dive into Python
- Dive into Python 3
- The Django Book
- How to Think Like a Computer Scientist: Learning with Python
- Invent Your Own Computer Games With Python
- Learn Python The Hard Way
- Natural Language Processing with Python
- Python Bibliotheca
- Python for Fun
- Snake Wrangling For Kids
- Think Python (PDF)
- Thinking in Python
R
Ruby
- Learn Ruby the hard way
- MacRuby: The Definitive Guide
- Mr. Neighborly's Humble Little Ruby Book
- Programming Ruby
- Ruby Best Practices
- Why's (Poignant) Guide to Ruby (mirror)
Ruby on Rails
Scala
- Exploring Lift (published earlier as "The Definitive Guide to Lift", PDF)
- Lift
- Pro Scala: Monadic Design Patterns for the Web
- Programming in Scala, First Edition
- Programming Scala
- Scala By Example (PDF)
- A Scala Tutorial for Java programmers (PDF)
- Xtrace
Scheme
- Concrete Abstractions: An Introduction to Computer Science Using Scheme
- The Scheme Programming Language Edition 3, Edition 4
- Simply Scheme: Introducing Computer Science
Sed
Smalltalk
- Dynamic Web Development with Seaside
- Free Online Smalltalk Books (meta-list)
- Squeak By Example (Smalltalk IDE)
Subversion
SQL (implementation agnostic)
- Developing Time-Oriented Database Applications in SQL
- Use The Index, Luke!: A Guide To SQL Database Performance
- Learn SQL The Hard Way
Teradata
Vim
- A Byte of Vim
- Vim Recipes
- Vi Improved -- Vim by Steve Oualline
Websphere
Windows Phone
|
|
Read more: http://stackoverflow.com/questions/194812/list-of-...
Become a subscriber of App Developer Magazine for just $5.99 a month and take advantage of all these perks.
MEMBERS GET ACCESS TO
- - Exclusive content from leaders in the industry
- - Q&A articles from industry leaders
- - Tips and tricks from the most successful developers weekly
- - Monthly issues, including all 90+ back-issues since 2012
- - Event discounts and early-bird signups
- - Gain insight from top achievers in the app store
- - Learn what tools to use, what SDK's to use, and more
Subscribe here