
A list of free programming books - vhf
https://github.com/vhf/free-programming-books/blob/master/free-programming-books.md
======
staunch
mjd's Higher Order Perl should be on most people's must-read list:
[http://hop.perl.plover.com/book/](http://hop.perl.plover.com/book/)

~~~
kamaal
This is one book, you absolutely must read. Even if you don't program in Perl.

This is basically the equivalent of SICP for the scripting world.

~~~
thewarrior
I checked it out after you recommended it in another thread. Its great. Any
other recommendations ?

------
justin66
It seems worth mentioning specific books by name, since lists of lists don't
help people differentiate the great from the good. Algorithms by S. Dasgupta,
C.H. Papadimitriou, and U.V. Vazirani looks really promising as an
introductory algorithms textbook. I wonder if anyone has experience using it
in class?

[http://www.cs.berkeley.edu/~vazirani/algorithms.html](http://www.cs.berkeley.edu/~vazirani/algorithms.html)

I wonder a little about that text's status as a freely available draft and
whether it would be kosher to distribute the pdf if that site disappears.

~~~
tikhonj
It's basically just the lecture notes for their class bundled up into a book.
I took the class it was based off, and, well, it was _okay_ but not _great_.

It lacks any sort of underlying narrative or structure--I think this is common
with algorithms texts in general. Probably why I didn't like the course much.
It feels like a bunch of disjoint topics held together _very_ loosely by some
techniques that get repeated a bit.

I compare it very unfavorably to Sispser's _Introduction to the Theory of
Computation_ which, I felt, was much more coherent as a book. It's not a fair
comparison at all because they're about different (although related) subjects,
but I think it neatly illustrates my point.

Also, I don't believe Sipser's book is free, so it's not entirely relevant in
that sense either. I just brought it up because I think it's the best example
of the underlying narrative and structure I was talking about.

~~~
LeafStorm
Two and a half years into my bachelor's, Sipser's _Introduction to the Theory
of Computation_ is the only computer science textbook I've had so far that I'd
say I really found useful for anything beyond the homework problems, besides
K.N. King's _C Programming: A Modern Approach_.

(To keep this on topic, my assembly instructor -- the legendary [to NC State
students] Dana Lasher -- posts his course pack online. [1] It's a
comprehensive introduction to computer architecture topics and original 8086
assembly programming.)

[1]
[http://courses.ncsu.edu/csc236/lec/001/cops.htm](http://courses.ncsu.edu/csc236/lec/001/cops.htm)

~~~
justin66
How does Sipser's content compare to Ullman's (free) Foundations of Computer
Science?

[http://i.stanford.edu/~ullman/focs.html](http://i.stanford.edu/~ullman/focs.html)

As far as x86 assembly goes, I found Kip Irvine's book to be pretty great.
(not free) It's not a subject I would want to spend more time on, though.

~~~
Fixnum
They're not similar at all. _FoCS_ is mostly about introductory programming
and data structures (with a tiny bit about automata). Sipser's book is about
computation and complexity - it's comparable to Hopcroft and Ullman's _Intro
to automata theory, languages, and computation_ , for which Ullman recommends
_FoCS_ or equivalent as a prerequisite.

~~~
justin66
Interesting. Thanks.

Coincidentally I just signed up for Ullman's Automata course at Coursera. The
description makes it seem pretty basic but I'm interested to see what he does
with it.

------
aram
It's interesting to see how git/Github as a platform replaces Wikipedia in
certain cases for collecting information and enabling people to contribute.

~~~
guynamedloren
Yep. There are huge advantages to a GitHub model over Wikipedia for collecting
information.

Shameless plug, but highly relevant: I'm trying to make 'git as a platform'
more accessible for non-programmers with a project I'm working on -
[http://www.penflip.com](http://www.penflip.com). Wrote about it in detail
here: [http://madebyloren.com/github-for-
writers](http://madebyloren.com/github-for-writers)

Glad to discuss it further if anybody's interested.

~~~
sygma
Have you seen Draft [0]? It seems fairly close to your concept of "github for
writers".

[0] [https://draftin.com](https://draftin.com)

~~~
guynamedloren
Indeed I have. Nate's got something great going with Draft, but I don't know
if I don't think he's shooting for a github-esque platform.

------
dreen
Similar lists/sites:

[http://www.coderheya.com](http://www.coderheya.com)

[http://hackershelf.com](http://hackershelf.com)

[http://pineapple.io](http://pineapple.io)

~~~
cjstewart88
Hah! Thanks for the link, didn't think anyone remembered it. Coder Heya was
fun to build, I wish a community would have built around it though.

------
ohblahitsme
Similar list with more differences than the Stack Overflow one:
[http://programming-motherfucker.com/become.html](http://programming-
motherfucker.com/become.html)

------
john_hamsters
[http://programming-motherfucker.com/become.html](http://programming-
motherfucker.com/become.html)

Another great list of books for programming languages/tools/frameworks/gen dev

------
blinkingled
This one about building Android apps using HTML/JS/CSS isn't free anymore -
[http://ofps.oreilly.com/titles/9781449383268/](http://ofps.oreilly.com/titles/9781449383268/)
\- itwas in Open Feedback Publishing System some time ago. Now you'd need to
buy it. (BTW, it has 2.5 stars on Oreilly site.)

~~~
Splendor
That's already been identified as an issue in the github repo.

------
brothmc
[http://addyosmani.github.io/backbone-
fundamentals/](http://addyosmani.github.io/backbone-fundamentals/)

------
denzil_correa
Here's a nice collection about the same on Stack Overflow as well -
[http://stackoverflow.com/questions/194812/list-of-freely-
ava...](http://stackoverflow.com/questions/194812/list-of-freely-available-
programming-books)

~~~
raganwald
I discovered that when I Read The Fine Article directly. I also discovered
that the original list os frozen and out-of-date. It includes at least one
book that is no longer freely available, and omits my own JavaScript Allongé,
which was made free this month.

~~~
buckbova
I just started on "JavaScript Allongé" and am really enjoying your prose and
working through the examples. Good job!

I had to look up what _allongé_ meant as I've never heard it ordered. It
sounds like the perfect drink.

"coffee beverage made by using an espresso machine to make an espresso (single
or double dose or shot) with much more water (generally twice as much),
resulting in a stretched espresso"

[http://en.wikipedia.org/wiki/Lungo](http://en.wikipedia.org/wiki/Lungo)

------
blueblob
I like how this is nearly exactly the text from the stack overflow question...

[http://stackoverflow.com/questions/194812/list-of-freely-
ava...](http://stackoverflow.com/questions/194812/list-of-freely-available-
programming-books)

~~~
vhf
README.md says : " This list initially was a clone of stackoverflow - List of
freely available programming books by George Stocker. Now updated, with dead
links gone (hopefully) and new content. "

I've had this SO list in my bookmarks for long enough, and there were more and
more dead links in it. I felt the need to move it to github in order to keep
it up-to-date and to augment it.

I apologize if the intention or original source were not made clear.

~~~
raganwald
This is the right thing to do. SO has a very specific vision, that of finding
and displaying the definitive answer to an objective question.

A resource like this doesn't fit their model, even if you strain it by trying
to invent a question that appears to fit their format.

 _" This question exists because it has historical significance, but it is not
considered a good, on-topic question for this site, so please do not use it as
evidence that you can ask similar questions here. This question and its
answers are frozen and cannot be changed."_

~~~
guiambros
This is thing I hate about SO. Its view of what is _on-topic_ is completely
arbitrary and narrow-minded. I understand that Jeff's initial vision was to
create a site for _objective_ questions & answers, but over time SO mods have
taken it to the extreme.

The list of _best_ programming books may not be totally objective, but the
wisdom of the crowds just should be enough to filter out what's good from
what's bad. When mods lock the allegedly non-objective questions, they force
content to become stale and rot - but still showing up at the top of search
engines.

------
buckbova
Red-gate has some decent and current t-sql programming books and mssql dev
books available for free.

[http://www.red-gate.com/community/books/](http://www.red-
gate.com/community/books/)

------
mck-
Reminds me of [http://stackoverflow.com/questions/194812/list-of-freely-
ava...](http://stackoverflow.com/questions/194812/list-of-freely-available-
programming-books)

------
th3byrdm4n
Yes, this is basically a carbon copy of other lists, but I found at least one
resource that was new to me -
[http://refcardz.dzone.com/](http://refcardz.dzone.com/) So cool.

Thanks :D

------
JustinBlaird
[http://www.gnu.org/software/emacs/emacs-lisp-
intro/](http://www.gnu.org/software/emacs/emacs-lisp-intro/) 404

~~~
Jtsummers
[http://www.gnu.org/software/emacs/manual/eintr.html](http://www.gnu.org/software/emacs/manual/eintr.html)

This is where the resources has moved to.

------
Deelux
Great list. Thanks a lot!

I couldn't find this url in this post and it made me pretty happy when I found
it. A website full of IT book which can be downloaded for free.

[http://www.it-ebooks.info/](http://www.it-ebooks.info/)

------
simgidacav
Semi-OT: For e-book reader owners: you can use pandoc to convert from HTML to
ePub.

~~~
fest
Full-OT: pandoc requires ghc, which takes about 1GiB of disk space, which I
found very odd, given that gcc is about 75 MiB.

~~~
simgidacav
Yeah, but dude, it's fukken haskell :D. Good comment anyway, I didn't realize
the drawback...

------
frncscgmz
It seams the Learning Android book was removed by O'Reilly.

------
LoneWolf
Now all I need is an automated way to download them all

~~~
bbx
I used to have the same reaction when stumbling upon lists like this. But it
has never proved to be a great idea. You get easily overwhelmed by the amount
and variety of content available. Before even starting reading one of these
books, you need to filter them by topic, by scope, by usefulness, and by
quality. You inevitably end up starting none of them.

I prefer focusing on one subject or programming language, search the internet
for feedbacks and reviews, select the _one_ book (free or not) that fits my
needs and read that one. I'm consequently more informed about what my further
needs are: do I want to learn more about this programming language? Or about a
different but complementary one? Or do I need to reach for a more language-
agnostic topic?

It's the usual "quality over quantity" issue, that prevents yourself from
taking no decision at all when facing too many options.

~~~
jrs99
i had that same experience. most books are good but are usually replaceable.
some books i can't understand how good they are because they're beyond my
level. And a few are just right, and also take you to that "a-ha moment."

you need to do your research and select that one right book and work through
it. If in the middle of a book you think you're not making good progress, you
should just drop it and find another one.

------
granttimmerman
The biggest question now is, where do we start?

~~~
simgidacav
From a topic you deem interesting of course. But be aware of the fact a book
does not give the experience you gain by working hands-on to something.

------
rmrfrmrf
Thank you!

------
puzanop
wish there was a list of !!!good!!! programming book, not even free. Like,
book that would make you a better dev.

~~~
pekk
Can you point out at least one programming book which makes you a worse
developer?

Doesn't it depend on what specifically you are trying to learn?

~~~
malexw
I think the point is that there are only so many hours in a human lifespan.
While I'd love to read everything that the world has to say on the subject,
I'd like to focus on books that will be the most enlightening (or
entertaining).

------
AsymetricCom
Aren't they all free?

