Hacker News new | ask | show | jobs
by commandlinefan 2257 days ago
I'll just second the Stevens book (TCP/IP Illustrated, volume 1). But get a used copy of the first edition, NOT the second edition that was desecrated by that other author, it's awful. Although the first edition is decades out of date, it still does a great job of explaining WHY things are designed the way they are, and you'll easily be able to make sense of the newer stuff on your own.
1 comments

I miss the days of books like that. They seem much rarer for today's technology.

By "books like that", I mean a book that is well-written, detailed, gets you will up to speed on the topic, and does not assume you will be reading the thing while sitting at a computer.

For example, in college I got a part time job doing programming for the physics department in C. I bought K&R, and read it in the evenings. Maybe every couple of chapters or so I'd go to the computer center and write a program to test out what I'd read.

This was before personal computer were common, so the authors could not assume you were at a computer while reading...thus avoiding the fate of far too many modern books that end up more of a "how to use this particular tool set to compile and run X code" book than a "how to write programs in language X" book.

At a later job I was going to need to write router and bridge firmware. I bought and read the Stevens books and Tanenbaum's computer networking book. That got me sufficiently up to speed to cover most of what I needed for my firmware and gave me enough background to read specs and standards for whatever more I needed.

In the '70s, '80s, and much of the '90s that is how it went for every technical thing I needed to learn.

It's harder to find those kinds of resources today. Two things have changed.

First, as computing became more mainstream, a lot more people jumped in to do books. Instead of only one or two good books, like K&R and Harbison & Steel for C, there would be dozens of books and most of them were poor at best. The good books were still there, but harder to find.

Second, as more and more documentation moved to the web authors and site designers seem to have forgotten that we read and learn linearly. I want the site to tell me a good starting point, and provide "next" links on each page that will take me through the whole topic in a good learning order.

Too often each article just has a set of links to various related articles, and it is easy to end up in some closed subset of the articles and no idea you've missed anything unless you remember that the article you read 10 articles back had links to X, Y, and Z, you followed X, and Y eventually came up again and you read it, but you haven't seen a link to Z for a while, and so you go back to the top of the site and start looking for Z.