this post was submitted on 06 Jul 2023
9 points (100.0% liked)

Asklemmy

47281 readers
615 users here now

A loosely moderated place to ask open-ended questions

Search asklemmy πŸ”

If your post meets the following criteria, it's welcome here!

  1. Open-ended question
  2. Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
  3. Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
  4. Not ad nauseam inducing: please make sure it is a question that would be new to most members
  5. An actual topic of discussion

Looking for support?

Looking for a community?

~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~

founded 6 years ago
MODERATORS
 

Let's get the AMAs kicked off on Lemmy, shall we.

Almost ten years ago now, I wrote RFC 7168, "Hypertext Coffeepot Control Protocol for Tea Efflux Appliances" which extends HTCPCP to handle tea brewing. Both Coffeepot Control Protocol and the tea-brewing extension are joke Internet Standards, and were released on Apr 1st (1998 and 2014). You may be familiar with HTTP error 418, "I'm a teapot"; this comes from the 1998 standard.

I'm giving a talk on the history of HTTP and HTCPCP at the WeAreDevelopers World Congress in Berlin later this month, and I need an FAQ section; AMA about the Internet and HTTP. Let's try this out!

(page 2) 42 comments
sorted by: hot top controversial new old
[–] Clav64@lemmy.ml 1 points 2 years ago* (last edited 2 years ago) (1 children)

I loved sharing this with my senior who hadn't seen it before, and it gave our small team a Ggod chuckle one afternoon. Thanks for your creation.

With the absence of a crystal ball, but with excellent inner knowledge, what future standards could you see being implemented in the next 10 years for internet?

[–] Two9A@lemmy.world 1 points 2 years ago

As it turns out, one of the Apr 1st RFCs for this year covers AI Sarcasm Detection, but I can see more serious protocols arising for the transfer of AI model data and/or training procedures in the coming years.

I'd also hope ActivityPub reaches Internet Standard level, though it may fall outside the IETF's scope of operations.

[–] iamak@infosec.pub 1 points 2 years ago (1 children)

What other such joke standards (by you or others) do you like?

[–] Two9A@lemmy.world 1 points 2 years ago (5 children)

A little lower down the stack, I always liked the Evil Bit in TCP, a standard which removes all need for firewalls heuristics by requiring malware or packets with evil intent to set the Evil Bit. The receiver can simply drop packets with the Evil Bit set, and thus be entirely safe forever from bad traffic.

At the physical interface layer where data meets real life, I especially enjoy IP over Avian Carrier; that link in particular is to the QoS definition which extends the original spec for carrying packets by carrier pigeon.

[–] iamak@infosec.pub 1 points 2 years ago

Wow. Never knew about these :)

[–] LeberechtReinhold@lemmy.world 1 points 2 years ago (1 children)

With the advances on SDcards, IPoAC is getting better and better.

[–] Two9A@lemmy.world 1 points 2 years ago

As the saying goes, "for bandwidth, nothing beats a truck full of ~~tapes~~ 1TB MicroSDs hurtling down the highway".

load more comments (3 replies)
[–] Deebster@lemmy.ml 1 points 2 years ago (1 children)

Thank you for fixing a critical flaw in the original RFC.

What did you think about the Save 418 Movement? Were you involved in it in any way?

[–] Two9A@lemmy.world 1 points 2 years ago (1 children)

My endorsement is at the bottom of that page, in fact. I wasn't an active campaigner, but a word in favor was the least I could do.

[–] Deebster@lemmy.ml 1 points 2 years ago

Oops, RTFM. Well, thanks for fighting the good fight with the power of your reputation.

[–] fidodo@lemm.ee 1 points 2 years ago* (last edited 2 years ago) (1 children)

We're there any early internet standards you were super bullish on at the time that didn't get picked up? In retrospect, if it had been adopted do you think it would have had the impact you were hoping for

[–] Two9A@lemmy.world 1 points 2 years ago

That's a tough one: most standards are codified as such because they're already seeing wide use. The major example of one that's been worked the other way around is IPv6: it's been a standard for a very long time, and still doesn't seem to be seeing adoption.

Of course, I wouldn't say I was bullish on IPv6. 32 bits is enough for anyone, right.

[–] 200ok@lemmy.world 1 points 2 years ago (2 children)

Every once and a while I'd just like to see 200 get some love, but no. It's all 404 this, 502 that.

I'm just "OK". It's like being the middle child of response codes.

[–] ramplay@lemmy.ca 1 points 2 years ago (1 children)

200 is probably the most common status no? Many successful responses will give 200 in the backend

load more comments (1 replies)
[–] Fenzik@lemmy.ml 1 points 2 years ago* (last edited 2 years ago) (1 children)

What’s the most impactful 418-related incident you’ve witnessed? I remember a few years ago npm went down and was returning 418 which spawned jokes and chaos across the web

[–] Two9A@lemmy.world 1 points 2 years ago (2 children)

The incident you mention is probably the most impactful, but there's also the time the Russian military blocked IPs outside Russia by returning 418 instead of the more logical 403.

[–] Cqrd@lemmy.dbzer0.com 1 points 2 years ago* (last edited 2 years ago) (1 children)

Yeah, I’ve seen people refer to this as the β€œfuck off” of response codes, especially during that incident. How does that make you feel?

[–] Two9A@lemmy.world 1 points 2 years ago (2 children)

It's not up to Mr Masinter or myself to police the usage of anything defined in the standard; if people feel like being assholes regarding the issuance of 418 errors, at least they're being whimsical assholes.

Could be worse; could be 200 with an error message inside, negating the entire point of error codes. I see that all the time.

[–] Cqrd@lemmy.dbzer0.com 1 points 2 years ago* (last edited 2 years ago)

Yeah, GraphQL has adopted this practice as a standard and it’s kind of sad.

load more comments (1 replies)
load more comments (1 replies)
[–] boonhet@lemm.ee 2 points 2 years ago* (last edited 2 years ago) (1 children)

I have no questions, but I want to let people here know that there are two excellent websites related to this: http.cat and http.dog, for looking up HTTP status codes.

For an example, if http.cat/418 doesn't brighten your day, I don't think there's much that can.

[–] pacjo@lemmy.world 2 points 2 years ago (1 children)

I love this. Thank you so much.

[–] boonhet@lemm.ee 2 points 2 years ago

You're welcome! I try to share this with people whenever I can, hoping that it makes someone's day better. It certainly gives me a lot of joy when I can respond to something with a relevant http cat, though the few people I do it to might be getting a little annoyed.

[–] rikudou@lemmings.world 1 points 2 years ago (1 children)

Not a question, but we use 418 in production! We have a nginx router that routes pages based on its path to either old frontend or new frontend. I wanted some easy way to handle the routing (and to not repeat myself), so I set the new frontend as a handler for 418 error and then just return 418 in the nginx for any page I want on new UI. I chose 418 because the others could be actually used by the old frontend and it could get all weird.

[–] Two9A@lemmy.world 1 points 2 years ago (1 children)

This is actually a good use of 418 in production, and one I've come across before: if you need to perform some custom handling and throwing a HTTP error is the only sensible way to do it, 418 is always available.

Unless your server really is a coffeepot, which is ...unlikely.

Getting more likely with each passing year.

[–] PetrichorBias@lemmy.one 1 points 2 years ago (1 children)

Was it hard to get this standardized back in the good ol' days?

Do you think it would be as easy to do it now? If not, what challenges and hurdles would a RFC have to overcome?

The last thing I know that was pretty "significant" is the GNU Terry Pratchett header (https://en.m.wikipedia.org/wiki/Terry_Pratchett#Death) and that was a community effort.

[–] Two9A@lemmy.world 1 points 2 years ago

There are joke RFCs almost every year, so it's not unprecedented to add to the standards. This year, one of the additions was a Death Flag to TCP, to indicate when a connection is about to terminate. The RFC Editors are very approachable when it comes to the Apr 1st RFCs: a "real" standard would need to be drafted by someone actually in the field, but the Apr 1st's are open to public submissions as long as you're willing to redraft/edit in accordance with the documentation standards.

It's worth noting that the Clacks header is an unofficial campaign, and hasn't been standardised; the 'Pedia states that some 84,000 sites return X-Clacks-Overhead, and my own is one.

[–] kromem@lemmy.world 1 points 2 years ago (1 children)

What's the funniest legitimate non-joke standardization detail you've come across?

[–] Two9A@lemmy.world 1 points 2 years ago (2 children)

I enjoy that the original draft for the Referer header spelled it wrong, and now we're all stuck with the typo forever...

[–] spindrift@lemmy.world 1 points 2 years ago* (last edited 2 years ago)

Can someone elaborate on this please?

Edit: oh jeez. I'm so used to reading "referer" I didn't even realize it was a typo.

load more comments (1 replies)
[–] z3rOR0ne@lemmy.ml 1 points 2 years ago (2 children)

I just found out about this on Brodie Robertson’s yt channel! I am not a teapot btw!!

[–] ndr@lemmy.world 1 points 2 years ago

Haha, same here! I was so proud I knew what the title was referring to before reading the post. Lol

[–] Two9A@lemmy.world 1 points 2 years ago (1 children)

Glad to hear it, you should walk around with a HTTP 418 hat so more people know you're not a teapot.

[–] boonhet@lemm.ee 1 points 2 years ago

But then people would think they are a teapot

[–] christophski@feddit.uk 1 points 2 years ago (1 children)

What code should be used if we are expecting something to be a teapot? In this scenario it seems a 4XX is inappropriate because there is no error

[–] Two9A@lemmy.world 1 points 2 years ago

If you're writing a TEA-compliant client, you'd send the BREW request and expect a 300 Multiple Options back, whereby the server will tell you which teabags are installed. You're correct that there'll be no error, unless all the bag stocks are out server-side.

That'd return 503 Service Unavailable, of course.

[–] j4k3@lemmy.world 2 points 2 years ago (1 children)

What's your take on the fediverse frontier?

[–] Two9A@lemmy.world 2 points 2 years ago (1 children)

I think it's excellent out here. I was stuck on Reddit for the longest time, and this recent debacle has pushed me to explore the networks at the edge; this feels a lot more like the Internet of old. The analogy of email is apt, I think, with the accounts on multiple servers and the interplay between.

[–] tias@discuss.tchncs.de 2 points 2 years ago (2 children)

You awaken my nostalgia, curiosity and sense of adventure when you say "explore the networks at the edge". Are there any other networks than lemmy / mastodon that you would suggest checking out?

[–] anon_cloud@lemmy.dbzer0.com 1 points 2 years ago

Are you tingly anywhere?

[–] Two9A@lemmy.world 2 points 2 years ago (2 children)

Internet Relay Chat's been one of those things that's always felt out on the edge. I've been on EFnet since perhaps '03, and it's a lot quieter than it was...

With people moving en masse away from the centralized sites and their Firebase-implemented chats, we may see a pick up in traffic on the IRC networks, which would be good to see.

load more comments (2 replies)
load more comments