Ask HN: Fun Tech Book Recommendations?

139 points by chrisshroba ↗ HN
I'm currently reading Seven Databases in Seven Weeks [1] and finding it to be a really fun and interesting look at some tech I don't know much about. I'm wondering what other interesting books there are out there that focus less on teaching you all the technical details of a technology, and more on what makes it exciting and interesting.

What books do you suggest?

[1]: https://www.goodreads.com/book/show/13130963-seven-databases-in-seven-weeks

45 comments

[ 3.5 ms ] story [ 107 ms ] thread
Oh, I really like this one! Thank you, this looks like a very fun project.
The same author Jamis Buck also recently came out with a book called The Ray Tracer Challenge [1]. He came to my University’s Game Dev class while I was there and he showed us all about maze algorithms and such. I thought one of the more interesting applications he brought up was over world (a.k.a. map/game world) generation using a maze algorithm. Which is awesome, because maze algorithms primarily try and create a single path between any two points which seems like a great property to have in a traversable game world. You could then choose to open up additional paths to your liking.

[1]: https://pragprog.com/book/jbtracer/the-ray-tracer-challenge

Thats an absolute classic that reads like a spy novel detective story, and, at times, Unix manual. Perfect.
you'll never see a pack of benson and hedges and think of anything else again.
Excellent book and I later realized that the author is the Klein bottle guy from numberphile.
funny, when i saw that i thought “hey the cuckoo’s egg guy is making klein bottles!”

I’m so happy that he’s got himself a weird and cool life and hasn’t lost that exuberance at figuring esoteric stuff out.

CODE by Charles Petzold
Fantastic book. I learned everything it covers in college, but the way it masterfully connects them all together is incredible and made connections in my brain that I didn't have before.

There's also something satisfying about seeing incremental abstractions develop in an intuitive way.

Side question: Do people read dense technical books for fun?
I have a hard time making it through one not for fun.
For me a fun book has to be clearly written and present new (for me) ideas in a somewhat aesthetic way. Density I suppose is secondary. SICP is one of the best examples of the right balance, also Elements of Computing Systems.
The dense, technical books I've read, I've done so because I wanted a deep understanding of whatever the book's about. I want that understanding because I believe it will somehow lead to good things, like being able to accomplish certain goals, or build stuff that will benefit me. I guess I may get something of a thrill when understanding certain things, and when later I'm able to build or do things I couldn't before. I guess that's fun.

However, while I read for fun, I don't find reading fun. Even for story books, I read because the content is fun, not because visually parsing ink on paper is fun.

Hm - maybe “fun” isn’t the right word, but I do find it mostly relaxing and pleasant to work through one as long as I’m not under any time pressure. I enjoyed TAOCP, for example, but I’ve definitely tried to read other books that I ended up giving up on, too.
"Things to Make and Do in the Fourth Dimension" is really fun, but it's not really tech, it's more just math. But I do a lot of work with scientific / numerical computing so some may group them together. In addition to math, it covers some interesting algorithms and fun ways to use spreadsheets for images, etc.

I also really enjoy books about the tech used in the early space program. "Digital Apollo" is probably the one that makes the best light / easy reading.

There aren't many tech books I've read front to back and done pretty much all exercises. Exceptions include "The Little Schemer" and "The Seasoned Schemer".

Importantly, they really up one's ability to write higher order functional (and pure functional) code leaning heavily on a style that would help in any functional language with tail call optimization.

LOL (Let Over Lambda) is fun to read if you are not try to get the information in your head as fast as possible but rather read two or three pages a day very carefully and feel how your brain bends :) It is a hardcore technical book, but the language (Common Lisp) will not make you more money in 2020 or boost your new startup faster to market. So, read it to entertain your brain, it is worth it!

https://letoverlambda.com/

Soul of a New Machine by Tracy Kidder. Pulitzer Prize winner for non-fiction in 1982.
Haven’t read Soul, but I read and very highly recommend one of his other books, Mountains beyond mountains. Incredible story about how much one person can impact the world.
Seconded! This is a great read. No mode bit!
Can recommend Ge Wang's Artful Design. Dense, photo-graphic-novel hybrid you can sample for hours. And low-key it's an encyclopedic History of Computer Music ;)

https://artful.design/

"Learn You a Haskell" by Miran Lipovača: http://learnyouahaskell.com/

"Learn You Some Erlang for great good" by Fred Hebert: https://learnyousomeerlang.com/

"If Hemingway Wrote JavaScript" by Angus Croll: https://nostarch.com/hemingway

"Clojure for the Brave and True" by Daniel Higginbotham: https://www.braveclojure.com/clojure-for-the-brave-and-true/

Anything by Gerald Weinberg is great. The technology is dated but the insights about working as a programmer are as relevant as ever, and the writing style is so enjoyable that my ex girlfriend who hates computers wanted to read it.
+1, Weinberg's "An Introduction to General Systems Thinking" [0] blessed me with the Systems Triumvirate:

1. Why do I see what I see?

2. Why do things stay the same?

3. Why do things change?

I notice that I am very often using these questions to get a general grasp of something I don't understand. I think this book is considered a classic in the systems thinking field by many.

0: https://www.goodreads.com/book/show/583766.An_Introduction_t...

"The Signal and the Noise" might qualify. How to reason about systems of messy data.... like the weather for example. Very well written and entertaining.
Unity in 24 hours is pretty cool. If you haven't done game development before this will open up a lot of possibilities for you and it's pretty fun. For example, not only will it show you how to create 2D and 3D games but it's pretty easy to turn a 3D game into a virtual reality game. But especially with virtual reality it doesn't have to be a game. So it's actually super practical in my opinion.

https://www.amazon.com/Unity-Development-Hours-Teach-Yoursel...