Ask HN: What's the best technical eBook you have read?

193 points by davidshariff ↗ HN

85 comments

[ 4.3 ms ] story [ 171 ms ] thread
I'm not sure if it counts as a book, but the Django docs are amazing. I learned a lot about web-dev by printing out the docs (500pp at the time) and reading them cover to cover.
I second your praise of Django docs. They're a good example of how technical docs should be written. I think the team behind Django even wrote an article on how to write good docs. My gut feeling is that the docs is part of the reason Djangos is so popular because anyone new to web frameworks would find it easiest to pick up Django.
I believe it totally counts. I learned so much about database relationships from the Django docs.
Eloquent Javascript : A Modern Introduction to Programming by Marijn Haverbeke http://eloquentjavascript.net

Imho, the first chapter is a must-read for anyone in the industry, even and maybe especially if not a developer.

"When a program works, it is beautiful. The art of programming is the skill of controlling complexity. The great program is subdued, made simple in its complexity."

... and also, maybe not as "mindblowing" as Eloquent Javascript, but really good for diving deep in a low-level land (yet made very accessible in this book) that is probably overlooked by most of us when optimizing a web app for speed :

High-Performance Browser Networking by Ilya Grigorik http://chimera.labs.oreilly.com/books/1230000000545/index.ht...

Linux kernel development
This book profoundly changed how I look at computers (and other things).

http://www.charlespetzold.com/code/

Petzold's style is narrative, but make no mistake: every sentence is carefully chosen. I recommend resisting the urge to skim, lest you have to backtrack later...

NB the diagrams weren't legible in the Kindle version I paid for (some years ago; hopefully it's been updated). The diagrams were fine in the PDF version that I found somewhere.
Thanks for reminding me of this one. I had a brief skim of this years ago when I was short on money and time. Now with a bit more of both I have ordered a paperback copy.
I concur, as strongly as I can, with this. This book gave me sight in a lot of areas I in which I was previously blind. Also, I couldn't put it down. I was high on insight the entire time I read it. I should point out, though, that while I did already program when I read this, I hadn't taken any CS courses, so YMMV. That being said, this book was enough to get me on the path to self-taught assembly and embedded programming.
Beautifully crafted book, i've read it a few months ago and i would have loved something like this when i was in high school (i still enjoyed it, even if there wasn't much i didn't already know).
100%. The advice against skimming is sound. Read this like you would read the bible if you were a priest.
I never got all the way through this book. Started reading it and loved it. The narrative and conversational style is very welcoming. At the time I had a friend who was starting to learn programming so I loaned it to him hoping it would help/inspire him.

I had completely forgot I owned this book, thanks for reminding me! My friend has since given up on programming so I'll definitely get it back :)

God yes. This is the only book about computers that I recommend to my non-technical family and friends. It is the only way I've found for people to understand the love of computing as opposed to just understanding why it may be a good job.
A Sane Approach to Database Design by Mark Johansen

http://www.electrictactics.com/book/sanedb.html

The book is really accessible and helpful. SaneDB helped me survive a development project when I was new to many things and beat some sense into me about what databases (and DBAs) are for that still comes in handy every week.

Hackers in-depth interviews: « Coders at Work »

General topic: « The Pragmatic Programmer: From Journeyman to Master »

Java and more: « Effective Java » 2nd edition

About unit testing with Java tools: « Practical Unit Testing with Mockito and JUnit »

The Pragmatic Programmer. My suggestion: don't read another book until you've read this.
About to finish Snow Crash and looking for a new book. I think I'll make it this one.
Sandi Metz's Practical Object-Oriented Design in Ruby.
+1 for Practical Object-Oriented Design in Ruby. I'm admittedly a relative novice (my background is in finance, but I've been learning to program through books and online resources for about a year now).

Reading this book led to many "Aha" moments where I really started to understand the benefits of OOP. Great read.

K&R, the white book. There are few books that match it in conciseness and elegance.
Two books

1. Learn you some erlang (http://learnyousomeerlang.com/)

Why?

Because it is written in a style in which technical books are rarely written. It has cartoons, jokes, references to pop culture but still it conveys the core subject exceedingly well. I understand that this is written in style of learn you some haskell so I am going to read that as well at some point. The best part is you can read the book second or third time and still have fun.

2. Joe Armstrong's thesis(http://www.erlang.org/download/armstrong_thesis_2003.pdf)

Yes it is another erlang book but it is written so well! I don't read thesis (or to be perfectly honest I try reading them but I can't understand most of them and lose interest after some time) but somehow I Joe's thesis made sense to me. It might be because of his clear writing style I can't say. But every time I read this book I find a certain phrase that sticks with me while I am writing programmes. Joe is a quote machine :)

3. Essays in the art of writing by R.L stevenson (http://www.gutenberg.org/files/492/492-h/492-h.htm)

Just read the opening paragraph and see for yourself if you don't want to read any more :)

thanks for the pointer to the thesis. stared in '81 and submitted in 2003, wowza !!!
Discover Meteor

Multi-Format: epub/pdf/html, great use of Middleman, being internationalised, interesting & useful videos (but more might perhaps be made of the premium end)

Content: really well matched to target audience. Ongoing updates.

Design: Very attractive countenance

Surprised it hasn't been mentioned yet. Hands down the most eye opening technical book I've read is SICP.

http://mitpress.mit.edu/sicp/

http://sicpebook.wordpress.com/ebook/

thank you for the second link :)
Code Complete 2nd edition

Super hands-on book. Since reading it, I'm writing better programs faster.

This book when combined with "The Clean Coder", and "Refactoring: Improving the design of existing code" completely changed how I thought about programming. It "levelled me up" so to speak. Even though I'm as far from being good as it gets, I still know I improved significantly from reading these three books.