5 ms·
Simplicity is something that got completely lost in most (not all) modern Internet protocols. As an example you might look at QUIC & HTTP/3 and its many extensi
by ThePhysicist 4y ago
Simplicity is something that got completely lost in most (not all) modern Internet protocols. As an example you might look at QUIC & HTTP/3 and its many extensions. The IETF draft of the QUIC specification is already many times longer than the one for TCP, and then there are the many extensions like MASQUE, HTTP3-DATAGRAMS etc. that are themselves quite complex. This complexity makes it in turn quite hard to implement these protocols completely and correctly. For example, Cloudflare's official QUIC implementation still lacks support for TLS key updates, which leads to QUIC connections simply timing out after the server requests a key update. So if you use a quic-go QUIC server and a QUICHE based client you're currently out of luck unless you patch the server to not perform any key updates (which is really bad for long-lived connections due to lack of forward secrecy).
- Flowdalic 4y agoQUIC does a lot more than "the one for TCP". While I also believe that modern TCP consists of more than just one RFC (which you already hinted at). I guess the art in protocol design is to have as few as possible mandatory-to-implement parts, which are itself minimized in complexity, so that a minimal implementation is doable with a reasonable amount of effort while already achieving a good result (and UX). Then the optional parts can be added piece-by-piece, after the implementation was already published/released.
- 1vuio0pswjnm7 4y ago"The goals of completeness and diversity are sometimes in tension. If a standard is extremely complex, it may discourage implementation diversity because the cost of a complete implementation is too high (consider: Web browsers). On the other hand, if the specification is too simple, it may not offer enough functionality to be complete, and the resulting proprietary extensions may make switching difficult (see Section 4.6)." Noncommercial internet user here. I will gladly trade "functionality" for simplicity and implementation diversity, i.e., choice. Often "functionality" is not something internet users ask for, but something standards authors want, where either the authors are commercial entities purporting^1 to act on behalf of internet users or they are under pressure from commercial interests wanting to exploit internet users, i.e., internet traffic. 1. In truth they act on their own behalf and to satisfy their paying customers, e.g., advertisers or other "tech" companies, not internet users.
- ksec 4y agoSimplicity is something that got completely lost in all modern computing.
- cle 4y agoSimplicity is something lost in society. Most software complexity stems from that IMO.
- api 4y agoThat may be a factor, but I think a lot of it just comes from the tendency of sophomore engineers to want to use all the things in as many ways as possible. https://www.smart-jokes.org/programmer-evolution.html https://www.smart-jokes.org/programmer-evolution.html
- mwcampbell 4y agoI saw a version of that joke on a BBS in the 90s. I definitely remember the manager progression at the end. But the 90s version I saw also had a very over-engineered Windows version. I wish I remembered more about it than that.
- deleted 4y ago[deleted]