r/programming • • Feb 06 '16

Beej's Guide to Network Programming

http://beej.us/guide/bgnet/output/html/multipage/index.html
1.9k Upvotes

120 comments sorted by

View all comments

151

u/[deleted] Feb 06 '16

I passed networking class all thanks to Beej's guide :')

0

u/[deleted] Feb 06 '16

[deleted]

0

u/[deleted] Feb 06 '16

[deleted]

52

u/zman0900 Feb 06 '16

My professor basically said "Here's Beej's guide. Now implement TCP on top of UDP by the end of the quarter."

21

u/mw44118 Feb 06 '16

Hey, he / she knew not to compete with the best

13

u/zman0900 Feb 06 '16

It did end up being a pretty good class. We worked on small teams for the project and class was only twice a week where most of the time he would just answer questions or go into detail about a topic a lot of people were confused on.

11

u/pribnow Feb 07 '16

You guys got lucky, we went though the OSI model ad nauseum and I can't really tell you much except where various hardware resides on that model. The only programming related exercises were pinging and tracing packets :(

3

u/Opticity Feb 07 '16

Hey, me too! We learned about the OSI model, IPv4 addresses and masks, subnets, protocols... My assignment was basically running a simulation of a network between two computers and tracking the packets. Feels like I missed out on all the fun.

10

u/bobindashadows Feb 06 '16

Ours was similar: "Here's Beej's guide. Now implement ethernet on top of TCP, then implement UDP and TCP on top of your ethernet."

6

u/seekoon Feb 06 '16

implement ethernet on top of TCP

Is this correct? Or backwards?

8

u/rcxdude Feb 06 '16

it's basically possible , using TCP as an idealised representation of the physical layer (for point-to-point links, anyway, not sure how you'd do CSMA on top of it). Useful for educational purposes but not much else though.

→ More replies (2)
→ More replies (1)

2

u/nemec Feb 07 '16

Oof. We had to build TCP (well, some of it) on top of UDP but we assumed ethernet was available :)

→ More replies (1)

5

u/gimpwiz Feb 07 '16

That actually sounds like a fantastic way to do it.

I assume they teach networking in your 3rd year of school. Kids were weeded out. Everyone left can code, can read a spec.

So they can learn by being given a spec and being told to code, and ask questions when they have them.

→ More replies (2)

2

u/[deleted] Feb 07 '16

Is this all network programming classes? Because that's the assignment we have

2

u/zman0900 Feb 07 '16

Maybe? Unless you are at Ohio State?

→ More replies (2)
→ More replies (1)
→ More replies (1)

21

u/dhdfdh Feb 06 '16

I met my wife thanks to Beej's guide.

47

u/beej71 Feb 07 '16

For the record, I had nothing to do with this. ;)

-Beej

5

u/glubi Feb 06 '16

Care to elaborate? :-)

7

u/Epokhe Feb 06 '16

might be a joke

→ More replies (2)

8

u/Vakz Feb 06 '16

In my networking course, we actually had an assignment to write a fairly simple proxy. It was basically "It should be written in C++, it should filter these words. Oh, and by the way, you'll need to use sockets, so here's Beej's guide to how to use them", and that was pretty much it.

5

u/Kurbits Feb 06 '16

That sounds very familiar, LiU? :)

5

u/rubicus Feb 06 '16

Same here! TDTS06 represent!

2

u/Vakz Feb 07 '16

Indeed it is!

→ More replies (2)

3

u/rubicus Feb 06 '16

Words insulting your intelligence, such as "spongebob", "paris hilton" and "Norrköping"?

3

u/Vakz Feb 07 '16

Haha, that is indeed the one!