When I was at university I wanted to take a class that had 'introduction to computer networks' as a prerequisite, but I didn't want to wait 2 semesters for it to come around again after taking networks first. I spoke to the professor and he said he'd let me enroll in the course if I promised to carefully read Beej's guide first, since it contains all the essentials I'd <i>really</i> need for this follow-on. So, this saved me 6 months, what a golden nugget!
Still not updated to mention anything more than select() as far as non-blocking IO is concerned, like poll, epoll, or, god no, using an abstract event loop. Nobody who cares about their code and sanity does blocking I/O with sockets.<p>But then, I must confess I too started network programming with this guide :) It presents the basics nicely, but there's a lot more you should learn about network programming.
it's a shortcut to learn basic network programming with sockets, without spending too much time on it. Anyone more than casually serious about it should consider looking at Richard Stevens books, Unix network programming and TCP/IP illustrated (esp. volume 2).
This was an absolute lifesaver when I was thrown into the deep end writing a high-performance TCP server from scratch. I think it's so effective because it's "highly opinionated", which is to say, he points out "Foo does this, but don't use it because that's just silly" or "don't use bar, use baz instead because it handles qux more easily" and so on.
If I'm not mistaken this original document was on Chico State's computer science domain. It was my understanding Beej went to Chico; does anyone know for sure? This was around long before 2006, I remember reading it around the year 2000 when I was first getting into C++. (miracle this quality of a document escaped anyone's brain in Chico -- I know, I went to CSUC. Let's just say it was hard to concentrate there :)
lol soooo retro! brings back memories almost 10 years old.
i used it as a guideline for writing an SMS notifier on incoming e-mails through free HTTP SMS service. with auth. ;)
+1 !!<p>This is the number one thing that got me through network class back in university. Next to that is the professor's office hour. I don't think I even touched the textbook.
Is there an even better, more modern networking guide that's free (or not)? Does anyone have a list of networking reference/tutorial/introduction material?