The other day a colleague of mine asked me about finding software books on the Internet – he was talking about some of the books I had listed in my previous post. Now, that post referred mainly to books that are published and distributed on paper as physical books (some of them are available for sale in other formats like PDF, Mobi and Kindle as well).
However, there are a lot of books on the Internet and even more lists of books. I think we sometimes forget, that, besides being a directory of books, the Internet is itself a huge repository of amazing content. So caught up are we nowadays – in the real-time fire-hose of social networks and status updates – we have started overlooking some of the really good articles out there. So, in the interests of providing everyone (and myself) some links to leverage I thought I’d write a post about some of the great content available out there from the software programming perspective …
The best way to get a good list of books about software is to go where software geeks congregate and search. Almost invariably, someone would have asked or talked about the best software books and sparked off the list mania :-) Go to a few websites like this and look for the names that pop-up again and again. Stack Overflow is a great example of this – it is a forum for software related questions and though, of late, they have started discouraging open-ended and subjective questions, there are some really great list of books out here. A few of my favorite lists are –
Of course, like all on-line lists these are updated from time to time so you need to keep going back from time to time to get the latest lists.
The next place I go to are websites that are book repositories and directories. One of the biggest out there is the Wiki Books project – they have a great listing of open books and an entire section is devoted to Computing . There are other websites that specialize in technical books – a couple I go to are –
Another meta-list I go to is my own :-). I leverage on-line bookmarking (I use Delicious) extensively – I tag my entries profusely and you can slice and dice my list across quite a few dimensions – feel free to do this and pick your favorite lists :-)
An example of an extremely influential article is, the Agile Manifesto, that provided so much momentum to the agile methodologies and the establishment of agile as an alternate development methodology in use today. One person whose articles have influenced a whole generation is Richard Stallman – his articles are available here. I am also a fan of Eric S Raymond’s writing – keeper of the Jargon file – most of his articles have turned to books –
There are some great on-line tutorials on various topics –
- Mercurial Source Control Tool
- Learning Haskell
- How to think like a Computer Scientist
- Thinking in Java
There are a lot more – I haven’t listed then explicitly here so feel free to post comments on what you think I should have added.
Some other influential blogs and articles include –
A couple of the links in the list above are to blogs rather than individual articles – this is because I believe those blogs to have a lot of influential articles :-)
Obviously this is an incomplete list – I have written only of the content that I know of today. I hope to be able to add to it and update it with your help :-) Please post your suggestions and links to improve it :-)
Here is a list by Martin Fowler of books he participated in creating.