Hacker News new | ask | show | jobs
by sunahsuh 5074 days ago
The kinds of questions you're asking aren't necessarily covered systematically in CS curricula either unless you specifically take a networking course, and even then, depending on the class/professor, specific application-level protocols like HTTP might not be covered in depth. I didn't really get a deep understanding of the networking stack (especially specific application-level protocols) until I started working on networking products, despite taking and doing well in a 400-level networking class at my university.

I honestly think Wikipedia is a fantastic and fairly in-depth resource for technical topics. I would start here and follow as many links as you need to get a better understanding of what's going on: http://en.wikipedia.org/wiki/OSI_model Protocol specifications are also surprisingly readable. Here's the HTTP protocol RFC (request for comments): http://www.w3.org/Protocols/rfc2616/rfc2616.html

As a newer programmer recently remarked to me, it's tough when you get going because you don't even know where to look. It's a lot like learning a new (spoken) language: immerse yourself, understand that bewilderment and frustration is normal in the beginning, and keep at it until you hit that inflection point where it starts making sense. The fact that you even want to get from "phrase book" to "fluent speaker" is a good sign.