Sep 7, 2010
Free Computer Science Electronic Books
This is just a resource post about Free Computer Science Electronic Books with open-source licenses. Please share your favorite books.Graphics Programming
- Nvidia GPU Gems 1
- Nvidia GPU Gems 2
- Nvidia GPU Gems 3
- Graphics Programming Black Book
Language Agnostic
- Foundations of Programming by Karl Seguin
- Computer Musings (Lectures by Donald Knuth)
- The Cathedral and the Bazaar (Introduction to Open Source Software)
- Patterns and Practices: Application Architecture Guide 2.0
- Security Engineering
- Digital Signal Processing For Engineers and Scientists
- Getting Real (Courtesy 37 Signals)
- Structure and Interpretation of Computer Programs
- Domain Driven Design Quickly
- OO Design
- Best Kept Secrets of Peer Code Review
- NASA Software Measurement Handbook
- NASA Manager Handbook for Software Development
- Introduction to Functional Programming - Class Lectures and Slides
- How to Design Programs - MIT Press
- Guide to the Software Engineering Body of Knowledge - IEEE Computer Society Press
- Online Course Materials - MIT
- Algorithms (Draft Copy)
- Data Structures and Algorithms
- Essential Skills for Agile Development
- Programming Languages: Application and Interpretation
- Learn to Program
- Patterns of Software: Tales from the Software Community
- How to write Unmaintainable Code
- The Art of Unix Programming
- The Definitive Guide to Building Code Quality
- How to Think Like a Computer Scientist
- Planning Algorithms
- The Little Book of Semaphores
- Mathematical Logic - an Introduction
- An Introduction to the Theory of Computation
- Developers Developers Developers Developers
- Linkers and loaders
- Beej's Guide to Network Programming
- Domain Driven Design Quickly
- Let's Build a Compiler
- Producing Open Source Software
- How to Write Parallel Programs
- Don't Just Roll the Dice
- 97 Things Every Programmer Should Know
ASP.NET MVC
Assembly Language
- ProgrammingGroundUp
- Paul Carter's Tutorial on x86 Assembly
- Software optimization resources by Agner Fog
C/C++
- The new C standard - an annotated reference
- The C book
- Thinking in C++, Second Edition
- C++ Annotations
- Software optimization resources by Agner Fog
- Introduction to Design Patterns in C++ with Qt 4
Git
Java
- Sun's Java Tutorials
- Thinking in Java
- How to Think Like a Computer Scientist
- Java Thin-Client Programming
- OSGi in Practice (CreativeCommons Attribution Non-commercial Share Alike License)
JavaScript
- Eloquent JavaScript
- Crockford's JavaScript
- jQuery Fundamentals (starts with JS basics)
Linux
Lisp
- Practical Common Lisp
- On Lisp
- ANSI Common Lisp
- Common Lisp the Language, 2nd Edition
- Successful Lisp
- Let Over Lamda - 50 Years of Lisp
.NET (C#)
- Free C# Book Covers C#1.0 and 2.0 (Courtesy of Programmers Heaven)
- Visual Studio Tips and Tricks
- Entity Framework (514 pages)
- Charles Petzold's .Net Book 0
- Threading in C#
- C# Yellow Book (Intro to programming)
- C# Programming - Wikibook
- C# Essentials
- Data Structures and Algorithms with Object-Oriented Design Patterns in C#
- O'Reilly's C# Pocket Reference Manual (Free Ebook courtesy of Red Gate Software) [dead link]
Perl
- Higher Order Perl
- Perl The Hard Way
- Extreme Perl
- Perl Free Online EBooks Meta-List
- The Mason Book
- Practical mod_perl
- Beginning Perl
- Embedding Perl in HTML with Mason (Open Publication License)
- Perl & LWP
- Perl for the Web
- Web Client Programming with Perl
- Modern Perl 5 (Work in progress)
PHP
- Practical PHP Programming (Wiki that contains O'Reilly's PHP In a Nutshell)
- Zend Framework: Survive the Deep End
PHP Essentials
Prolog
- Building Expert Systems in Prolog
- Adventure in Prolog
- Prolog Programming A First Course
- Logic, Programming and Prolog (2ed)
- Introduction to Prolog for Mathematicians
- Learn Prolog Now!
- Natural Language Processing Techniques in Prolog
Python
- Dive Into Python
- Dive Into Python 3
- Byte of Python
- Building Skills in Python Version 2.5
- Python Free Online Ebooks Meta-List
- Python Bibliotheca
- Think Python
- Data Structures and Algorithms in Python
- How to Think Like a Computer Scientist: Learning with Python
- Python for Fun
- Invent Your Own Computer Games With Python
- Thinking in Python
- The Django Book
- Snake Wrangling For Kids
Ruby
- Programming Ruby
- Why's (Poignant) Guide to Ruby (Mirror via Scribd)
- Mr. Neighborly's Humble Little Ruby Book
- Ruby Best Practices
- MacRuby: The Definitive Guide
- Ruby on Rails Tutorial: Learn Rails By Example
Mixed
- How to Design Programs
- Graphics Programing Black Book
- Real World Haskell
- Let Over Lambda
- Starting Forth
- List of Free Online Python Books
- List of Free Online Perl Books
- Squeak by Example
- C# Essentials
- List of Free Online Smalltalk Books
- Successful Lisp
- Introduction to Functional Programming
- C Sharp Programming
- Data Structures and Algorithms with Object-Oriented Design Patterns in C#
- Programmer's Heaven C# School Book
- .NET Book Zero
- C# Yellow Book
- Threading in C#
- C# Essentials
- The Art of Unix Programming
- Advanced Linux Programming by CodeSourcery LLC
- Java Application Development on Linux by Carl Albing and Michael Schwarz(PDF)
- Writing GNOME Applications
- Advanced Linux Programming
- Secure Programming for Linux and Unix
- The Linux Development Platform
- Secure Programming for Linux and Unix HOWTO
- C++ GUI Programming With Qt 3
- Linux Kernel Module Programming Guide by Ori Pomerantz
- KDE 2.0 Development
- GTK+/Gnome Application Development
- GNU Autoconf, Automake and Libtool
- The Linux Kernel Module Programming Guide
JavaScript Essentials
- Visual Basic Essentials
- Thinking In Java
- Thinking In C++
- C Sharp Programming
- Data Structures and Algorithms with Object-Oriented Design Patterns in C#
- Programmer's Heaven C# School Book
- .NET Book Zero
- C# Yellow Book
- Threading in C#
- C# Essentials
- Programming in Emacs Lisp (Second Edition)
- Programming in Lua (first edition)
- How to Design Worlds: Imaginative Programming in DrScheme
- Data Structures Indian Institute of Science
- Teach Yourself Scheme in Fixnum Days
- Common Lisp: A Gentle Introduction
- Common Lisp: A Gentle Introduction to Symbolic Computation by Dave Touretzky
- Successful Lisp by David Lamkins
- Common Lisp Quick Reference
- Let Over Lambda
- Concrete Abstractions,
- The Scheme Programming Language
- Sketchy Lisp by Nils Holm
- Simply Scheme
Labels: resource
By : Motyar+ @motyar