We are still actively working on the spam issue.
Difference between revisions of "Programming resources"
(Talk page suggestion to move to Programming resources) |
m (→God-tier books: Added Some Unix books that were recommended by esr) |
||
Line 14: | Line 14: | ||
== God-tier books == | == God-tier books == | ||
− | These books are essential books that people should have, or at least know about: | + | These books are essential books that people should have, or at least have read or know about: |
* [http://en.wikipedia.org/wiki/Compilers:_Principles,_Techniques,_and_Tools Compilers: Principles, Techniques and Tools] (a.k.a The Dragon Book) | * [http://en.wikipedia.org/wiki/Compilers:_Principles,_Techniques,_and_Tools Compilers: Principles, Techniques and Tools] (a.k.a The Dragon Book) | ||
Line 21: | Line 21: | ||
* [http://books.cat-v.org/computer-science/unix-programming-environment/ The UNIX Programming Environment] | * [http://books.cat-v.org/computer-science/unix-programming-environment/ The UNIX Programming Environment] | ||
* [http://books.cat-v.org/computer-science/mythical-man-month/tmmm.pdf The Mythical Man Month: Essays on Software Engineering] | * [http://books.cat-v.org/computer-science/mythical-man-month/tmmm.pdf The Mythical Man Month: Essays on Software Engineering] | ||
+ | * [http://en.wikipedia.org/wiki/Design_Patterns Design Patterns: Elements of Reusable Object-Oriented Software] | ||
* [http://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar The Cathedral and the Bazaar] | * [http://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar The Cathedral and the Bazaar] | ||
− | * The C Programming Language, mentioned below | + | * The C Programming Language, mentioned below. Also known as K&R because it was written by the founders of C, Brian '''K'''ernighan and Dennis '''R'''itchie. |
* Structure and Interpretation of Computer Programs, listed below | * Structure and Interpretation of Computer Programs, listed below | ||
+ | * [http://en.wikipedia.org/wiki/The_Unix_Programming_Environment The UNIX Programming Environment, 2nd edition] An excellent introductory *nix book. Written by Brian Kernighan (of K&R) and Rob Pike (invented Golang), both core UNIX devs. | ||
+ | * [http://basepath.com/aup/ Advanced UNIX Programming, 3rd Edition] Recommended as a follow on book from The UNIX Programming Environment. Contains information on over 300 syscalls. | ||
== C == | == C == |
Revision as of 04:53, 18 February 2014
The following is a list of recommended books for learning how to program:
First, check GitHub's extensive list of free programming books: https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md
Second, a very comprehensive list: http://programming-motherfucker.com/
The gentoomen have also provided a torrent at http://books.gentoomen.org/ which has a metric fuckton of books, and if you prefer actual physical books, you can get them for really cheap from http://abebooks.com
If you don't see the book you're looking for listed, search the following lists for other sources of books:
Contents
God-tier books
These books are essential books that people should have, or at least have read or know about:
- Compilers: Principles, Techniques and Tools (a.k.a The Dragon Book)
- Operating Systems: Design and Implementation (a.k.a the MINIX book). This is one of the books Linus Torvalds used to write the original Linux kernel.
- The Art of Computer Programming by Donald Knuth (essentially the holy grail of Computer Science literature.)
- The UNIX Programming Environment
- The Mythical Man Month: Essays on Software Engineering
- Design Patterns: Elements of Reusable Object-Oriented Software
- The Cathedral and the Bazaar
- The C Programming Language, mentioned below. Also known as K&R because it was written by the founders of C, Brian Kernighan and Dennis Ritchie.
- Structure and Interpretation of Computer Programs, listed below
- The UNIX Programming Environment, 2nd edition An excellent introductory *nix book. Written by Brian Kernighan (of K&R) and Rob Pike (invented Golang), both core UNIX devs.
- Advanced UNIX Programming, 3rd Edition Recommended as a follow on book from The UNIX Programming Environment. Contains information on over 300 syscalls.
C
- The C Programming Language by Brian Kernighan and Dennis Ritchie
- O'Reilly - Practical C Programming
C++
C#
Forth
- Thinking Forth (PDF download)
Haskell
Lisp
Scheme
- Structure and Interpretation of Computer Programs (Read it online)
- The Little Schemer
- The Seasoned Schemer
- The Reasoned Schemer
Common Lisp
- Common Lisp: A Gentle Introduction to Symbolic Computation (PDF download)
- Practical Common Lisp (Read it Online)
- On Lisp (PDF and Postscript download)
- Let Over Lambda
Pascal
Ruby
- The Ruby Programming Language by David Flanagan and Yukihiro Matsumoto
- Ruby In A Nutshell by Yukihiro Matsumoto
- Programming Ruby 1.9 & 2.0 (4th edition) (a.k.a. The Pickaxe) by Dave Thomas, Chad Fowler and Andy Hunt
- Metaprogramming Ruby by Paolo Perrotta
- Eloquent Ruby by Russ Olsen
- The Well-Grounded Rubyist by David A. Black