4 ms·
>In the interest of making the topic easier to comprehend, we will start with a fairly high-level overview, and then dive into each individual component as we g
by jasode 11y ago
>In the interest of making the topic easier to comprehend, we will start with a fairly high-level overview, and then dive into each individual component as we go along. Our journey starts with a user called Alice. Alice owns a laptop, and wants to send e-mail to a person called Bob. ... [wall of text...]
I understand the enthusiasm to spread knowledge but a wall of text like that isn't going to be helpful for novices. When technical people try to impart knowledge, the text they write usually suffers from the Curse of Knowledge[1]. For example, "DHCP" and "UDP" is mentioned several times which is a level of detail that is not necessary for an introductory overview.
Instead, to explain how the internet works would require lots of diagrams, pictures, videos, etc. illustrating different scenarios. E.g., sending SMTP is different from HTTP and both use DNS. All these "mental buckets" (and many others) are difficult to separate for novices. Instead of drilling into a timeline of bytes sent from Alice to Bob, new concepts can be taught as "progressive layers" of detail (with the timeline rewound each time.) Answering the question of "how the internet works" is so open-ended that apparently, some tech interviewers like to use it for evaluating job candidates.
[1]https://en.wikipedia.org/wiki/Curse_of_knowledge https://en.wikipedia.org/wiki/Curse_of_knowledge
- Jonhoo 11y agoI see your point, but I think it's still important to give an end-to-end description, allowing people to tie it all together. The wall of text, if you'd read it, uses progressive layers in several places (like core Internet routing), specifically to try and avoid information overload for the reader. If a reader were to actually use networks for something (like try to write a program that uses TCP), they would obviously need much more detailed knowledge. At that point, diagrams become necessary, as do much deeper explanations, but the goal of this post was to give an overview of what things are needed to provide end-to-end communication, and why.
- fumar 11y agoAgree on all your points. I also think the general structure can be improved by adding a table of contents. This will better guide the user through the wall of text.
- rahimnathwani 11y agoI like this version: https://github.com/alex/what-happens-when https://github.com/alex/what-happens-when It doesn't address the 'progressive layers' issue, but it _does_ include a TOC. I have been asked this question before, and my answer was definitely biased towards the networking parts (DNS, TCP/IP, HTTP/S, certificates ...), and I provided absolutely no detail about keyboard/mouse/monitor I/O, parsing or rendering.
- Frqy3 11y agoIt is getting a bit old now, but I showed the Warriors of the Net[0] video in the past to a few non-technical people who wanted to better understand things. [0] http://warriorsofthe.net/index.html http://warriorsofthe.net/index.html
- rXoX 11y ago>Answering the question of "how the internet works" is so open-ended that apparently, some tech interviewers like to use it for evaluating job candidates. I assume they hand the candidate several different coloured pens and pencils, so the candidate can draw pictures and avoid confusing them with their 'wall' of words.