Where to study Computer Networking from?
Below is the list of Computer Networking resources that I use. These can be useful to everyone. No matter if you are a beginner, intermediate, or expert in the subject.
All of these are free except the last one.
These are in no particular order.
1. Hussein Nasser - YouTube
This YouTube channel covers a wide range of topics. Some of them are:
- Databases
- Computer Networking
- General Software Engineering
- Career Advice
There are playlists such as beginners, intermediate and advanced. This gives an idea of where to start. There are other playlists as well for specific topics. The author also has many videos where he discusses the architecture and outages of tech companies.
There are practical examples along with the theory part. For example, a video explaining Nginx has a section of "making our own proxy using Nginx". This is my favorite thing about the channel.
The coding part is very helpful. I really like the energy of this guy and the content is understandable. This channel is what got me interested in Computer Networking in the first place.
2. Eli the Computer Guy - YouTube
This channel has a variety of content, from web development to Computer Networking. Here we'll only focus on the Networking part.
In many videos, alongside theory, the author also tells about the hardware component used with it. For example, when explaining a router, the author shows various physical router devices.
This helps us to fill a lot of gaps in our knowledge. Like identifying all the network-related physical devices.
The videos might be a little old but are still valid as concepts never change.
This channel is for all levels as well. There is a playlist for Networking. It starts with basics and then progresses to advanced stuff.
3. PacketLife - Blogs
This blog covers various Networking topics. We can browse by category if we want to learn about a particular niche.
The writing style is such that the blogs are very easy to understand. The blogs usually start with an introduction and then proceed with an example. The examples are very detailed. There are step-by-step explanations and it feels like we are performing the example with him.
This is one of my favorite blogs in PacketLife. As a beginner, this helped me to get a hold of the concepts.
4. Network - WikiUniversity
Wikipedia is one of the best resources out there. The Network WikiUniversity is a curated list of Computer Networking topics. It's structured like an online course.
Wikipedia gives everything there is to know about a topic.
There are definitions, examples, diagrams, advantages, disadvantages, timelines, and much more. This gives an overview of the subject and we can deep dive into any specific area that we like.
There are also references in the form of videos, RFCs, published technical papers, etc.
One of my favorite thing about Wikipedia is, it gives unopinionated information. For a specific topic, it not only gives the advantages but also disadvantages as well. This helps in understanding when and when not to use that specific technology.
5. Sunny Classroom - YouTube
This channel has amazing videos. Again there is a wide range of topics covered.
There are animated diagrams in the videos. This helps to visualize how data flows from one device to another. The roles of every entity like a router, ISP, switch, DNS, etc becomes crystal clear.
The videos are also clubbed together under various playlists so it's easy to navigate.
6. A Top-Down Approach Featuring the Internet - Book
This is one of the classic books out there for Computer Networking. The concepts are very well explained.
The fact that it's available as web pages on the internet for free is a bonus.
I have not read the whole book yet. I usually jump to the chapter that I want to read about, instead of the chronological order.
7. CertBros - YouTube
Another amazing YouTube channel.
This is structured more like a video course. This channel also covers various topics.
The videos have high production value. The sequence of videos in the playlist is ordered. That's a plus for beginners.
8. Grokking Computer Networking - Educative.io
This course is not free. Students with Student Github Pack can enroll in it for free.
This is a text-based course as opposed to a video-based. That being said, this is one of the best courses I have ever studied. The amount of knowledge it provides is seamless. Everything is connected and well put together.
It takes time to finish it and that's a good thing. It means we are getting the information we hoped for. This makes the course worth it. This introduced me to various aspects of Computer Networking.
It also has quizzes, a final assessment, and a forum for doubts.
I am yet to complete the whole course. At the time of writing this blog, I've gone through the first half.
Honorable Mentions
Below are the websites that often open up in the search engine results, whenever I search my Computer Networking doubts. They are mostly the lecture notes in the form of pdfs, slides, web pages, etc. These lecture notes are part of some university courses.
I often refer to them.
RFCs
Last but not least, there are the RFCs (Request for Comments) documents. They are like technical documents but specific to the internet. Some of them are really detailed and it takes time to read them, but the information it provides is amazing. The community is also very active.
This concludes all the resources. ๐๐
Advice
Computer Networking is a vast subject. One can feel overwhelmed during learning it. I definitely was overwhelmed when I first started it and I still do sometimes.
My advice would be to not dwell on the fact that there is too much to learn. We don't have to learn everything out there. Focusing only on one thing at a time helps.
I maintain a casual journal for tracking my weekly progress. If you feel too stressed out or overwhelmed, you can try this method. It may help you also.
Final Note
Thank you for reading this article. If you enjoyed it, consider sharing it with other people.
If you find any mistakes, please let me know.
Feel free to share your opinions below.