views:

137

answers:

1

I recently came across a good book by Richard Stevens, his "UNIX Network Programming, Volume 1, 2nd Edition" (in C), published 1998. I was reading it for the past week & realized while practicing some of the programs, that several methods used in it are not compliant to the standards or have a bit different approach. Also reproducing the code exactly doesn't work as expected either. Is it still worthwhile to continue, or are there better substitutes?

I would like to read good books, but on the same time have a better grasp on the basics or the underlying things. Another question is how much does these sort of books help in the long run, for a programmer. Especially the fact though C exposes a lot, but more & more companies are preferring Java, C#, etc for faster development (I guess).

+2  A: 

Which edition? (Ah, the 2nd Edition...from 1998).

UNIX Network Programming Volume 1, 3rd Edition is pretty good. If that's what you've got, can you illustrate where there is a problem? Since it is not what you've got, then you need to get the updated version. For learning, the outdated edition is more of a hindrance than a help.

The third edition - which is no longer maintained by Stevens himself since he died a few years ago - is a very good book. His other books are also worth reading; they too have been revised.


Subject-wise: I make my living programming in C, sometimes doing network programming. I use Stevens to back up my knowledge, and to gain ideas. I think it was well worth my time learning C, but I did that over 25 years ago. I still think that it helps me understand modern computing languages better - in the same way that having worked with 8-bit microprocessors like the Z80 helps me understand what goes on at the hardware level better. Sure, the modern languages (C#, Java, etc) provide extra facilities, but they have to be written in some language in the first place (and that generally isn't assembler).

I can't predict for you reliably what will happen over your career; I can reasonably confidently predict things will be very different in 20 years, but I don't have a good insight into the details. I can also predict that a lot of things will be remarkably similar to now too - inertia applies. There will be networks in the future; people will have to provide the functionality that provides and supports the network, as well as the functionality that exploits the network. The TCP/IP protocol - likely IPv6 - will probably still be the dominant protocol on the network. So, knowing how it works will be beneficial.

Jonathan Leffler
loxxy
The second edition is pretty archaic; it probably doesn't cover IPv6, or - if it does - it covers the old interfaces etc. Save yourself the pain; get the third edition.
Jonathan Leffler
thank you. I would have probably spent another 2 weeks with this 2nd edition....I guess I'll get the newer one.
loxxy
I recently found TAOCP vols 1-3 and TCP/IP Illustrated vols 1-3 at an antique store for $5 each! yay me!
Ether