Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
The Internet It's funny.  Laugh.

'I'm a Teapot' Error Code Saved From Extinction By Public Outcry (gizmodo.com.au) 111

An anonymous reader quotes Gizmodo: An anonymous reader quotes Gizmodo: It started back in 1998 as an April Fool's Day gag. Written up by Larry Masinter of the Internet Engineering Task Force (IETF), error code 418 -- "I'm a teapot" -- was nothing more than a poke at the "many bad HTTP extensions that had been proposed". Despite its existence as a joke, a number of major software projects, including Node.js, ASP.NET and Google's Go language, implemented it as an Easter egg. A recent attempt to excise the fictitious code from these projects ended up doing the opposite, cementing it as a "reserved" error by the IETF...

Australian programmer Mark Nottingham flagged the code's removal as an "issue" for Google's Go language, the Node.js Javascript runtime and Microsoft's ASP.NET... Nottingham's argument was that 418 was "polluting [the] core protocol" of these projects... It didn't take long for a "Save 418" website to go live and through the efforts of interested internet historians (and jokers), all three of the aforementioned projects have decided to keep the code as it is, though Google will "revisit" the situation with the next major version of Go.

The Save 418 site argued that "the application of such an status code is boundless. Its utility, quite simply, is astonishingly unparalleled. It's a reminder that the underlying processes of computers are still made by humans. It'd be a real shame to see 418 go."

'I'm a Teapot' Error Code Saved From Extinction By Public Outcry

Comments Filter:
  • Mark Nottingham is a douche bag

    • Re:It's official (Score:5, Informative)

      by Anonymous Coward on Saturday August 12, 2017 @06:57PM (#55000421)
      To be fair, Nottingham also wrote the draft that's now reserving the error code.

      He recognized there was popular support for the error code, and revised his position to remove the error code only if every other three-digit error code starting with 4 is taken.
      • by Anonymous Coward

        \Which is good reason for keeping it around, to remind us not to create stupid error codes that cannot be handled in the current ones, if not create an entirely new group.
        It helps to remind people of these things. Just because you can doesn't mean you should.

        We could always go nuts and start using letters after x99.
        Base62 that badboy.

      • by dohzer ( 867770 )

        We're talking Russell's teapot, right?!

      • by RDW ( 41497 )

        To be fair, Nottingham also wrote the draft that's now reserving the error code.

        He recognized there was popular support for the error code, and revised his position to remove the error code only if every other three-digit error code starting with 4 is taken.

        Yes, a classy response to the issue, unlike the humourless maintainer who removed the ddate (Discordian Date) tool from util-linux: https://bugzilla.redhat.com/sh... [redhat.com]

        • Re: (Score:2, Funny)

          by Anonymous Coward

          Yes, a classy response to the issue, unlike the humourless maintainer who removed the ddate (Discordian Date) tool from util-linux: https://bugzilla.redhat.com/sh... [redhat.com]

          Eh? (checks.....)
          WTF man?, no ddate? ok, so the last time I used it in anger was in a server added header on the MTAs I used to look after many, many years ago...
          them: we got spam from your servers..
          me: No worries, got an example in front of you?, good, tell me the contents of the X-MTA-FNORD header...
          them:(typie typity type....)Errr, what X-MTA-FNORD header?
          me: there's your problem, not my circus, monkeys etc. etc..

          Really, again, WTF?, you know I'm now in the crazy position that the only machines that have

  • by Zero__Kelvin ( 151819 ) on Saturday August 12, 2017 @06:56PM (#55000417) Homepage
    This was just very forward thinking in preparation for IoT. Now, when your teapot can't connect to cloud it can tell you what the problem is ... "I am trying to connect to the internet and E418"
    • Actually, it could have been used almost from the start of the web. As a grad student at CERN, I was introduced to the web very early on in its history and what was possibly the worlds first webcam was used to monitor the coffee pot in the Cambridge Computer Science department [wikipedia.org]. I even surprised one of my friends when I got back to the UK by asking to see it - he was amazed anyone over in physics had heard of it!.
      • Yes, and there have been other similar projects like the CMU coke machine. I omitted the full disclosure that I am actually pro thing connectivity just so long as it is done right. That why I threw in the part about the cloud. Teapots on a LAN is fine, as is controlling it securely, but let's not get carried away and let corporations gather data on our tea habits, and by logical extension, everything else.
    • by shanen ( 462549 ) on Saturday August 12, 2017 @10:54PM (#55001303) Homepage Journal

      "It appears that you are trying to get mod points. Would you like help in writing a funny or insightful comment?"

      Thank gawd Clippy is dead, eh?

      Seriously, your basic premise was good, but you got it backwards. Your IOT teapot is supposed to have a built in webserver for configuration and comments. The 418 error is for cases when you try to send it commands that are not appropriate for an IOT teapot. Easy to understand how the 418 mistake will occur, because the commodity chips that include the webserver will be used in all kinds of things, not just teapots.

      • "It appears you misinterpreted what you read in your zeal to prove someone wrong. Would you like help with basic reading comprehension? " - Flippy Clippy

        I didn't get it backwards. It is the webserver configuration page that throws the E418 when trying to get it to connect to the cloud. Read my post again.
  • It's a reminder that the underlying processes of computers are still made by humans.

    Not for long ...

  • Banned in Van Halen's standard performance contract. Not because they didn't like brown M&Ms. But as a test to see if the contract specifications had in fact been read and carried out.

    No error code 418 implementation means that we can reject the use of Go, Node.js and ASP.NET for not properly implementing IETF standards.

  • by Daltorak ( 122403 ) on Saturday August 12, 2017 @07:12PM (#55000501)

    The work that software developers do is extremely mentally challenging. We're often under pressure to not only create a product that is good enough to be profitable (or at least helpful), but also to not make extremely subtle mistakes that results in security vulnerabilities, information exposure, or denial of service.

    That's why we like putting little jokes in our software. It helps us cope with the pressure. It's why song lyrics, movie quotes and ASCII art find their way into code comments. It's why JIRA's about page is presented as an 8-bit video game. It's why we have an RFC describing an "evil bit". It's why error pages for popular source code repository have anthropomorphic robots. Hell, even MS Excel had a freakin' flight simulator built into it at one point!

    The world is bad enough as it is without the misery-mongers demanding we excise all forms of fun from our line of work. Leave us alone. Let us have our fun. We know what we're doing.

    • I agree with fun in a software level. Not sure how I feel about it in a specification level or a protocol level.

      • by The Evil Atheist ( 2484676 ) on Saturday August 12, 2017 @08:00PM (#55000739) Homepage
        Given that 418's purpose was to make fun of the sheer amount of bad proposals, it's actually a good idea for it to remain to remind people to actually think more about their crappy proposals. Those crappy proposals, because they weren't jokes, would have actually needed to be supported with development effort. Sometimes shame and ridicule goes a long way than some rule book no one reads.
        • Agreed, and while the 418 code wasn't serious in a general sense (because frankly who actually looks to implement all the codes) it is still dangerous in general sense having "fun" on the protocol or specification level as it has real world consequences. Every piece of paper generated for a protocol or a specification has real world expenses associated with it, worse if someone humourless dolt doesn't understand it and tries to implement it.

          Easter eggs in software on the other hand don't affect anyone.

          • It also seems like actually a pretty useful error code to implement for use as a fallback for when the problem is roughly "Request was nonsense," on the general theory that the person should know if, in fact, the machine in question is a teapot or at all likely to be a teapot...
            • by thegarbz ( 1787294 ) on Saturday August 12, 2017 @10:45PM (#55001271)

              Maybe we should rename it:

              418 - Software written by millenial as part of an agile team in a startup made entirely of UX designers has operated as expected.

              • "I'm a teapot" for such errors has being very great benefit of ensuring that such individuals will be kept busy trying to figure out why their program is talking to an actual teapot. People who will know this is a non sequitur will understand that whatever went wrong, it went quite horribly wrong.

            • by tlhIngan ( 30335 )

              It also seems like actually a pretty useful error code to implement for use as a fallback for when the problem is roughly "Request was nonsense," on the general theory that the person should know if, in fact, the machine in question is a teapot or at all likely to be a teapot...

              But... what about the Internet of Things? What if you really do have a webserver on your teapot? Is is going to just give you 418 errors or is it going to try to be useful?

              Or is it simply saying we can't use HTTP(S) with teapots? I s

              • I would think it generally reasonable to expect you to know if you're trying to contact a teapot. This would also effectively improve the security on IoT teapots to above any other thing on the IoT because you'd have to figure out if it's really a teapot or is lying to you.

    • by gweihir ( 88907 )

      Indeed. Well said!

    • by Kjella ( 173770 )

      Whatever you do in comments, easter eggs and joke RFCs, fine. Polluting communication protocols with your in-jokes is crossing the line IMHO. I don't want Chrome, Safari, Edge, Apache, IIS, nginx and all sorts of cache/proxy solutions have to deal with 418 "I'm a teapot" just because somebody found it funny. There's a time and a place for humor, this is not it. I'm not going to complain about custom texts for errors though, as long as they can be safely ignored you can claim lp0 is on fire for all I care.

    • Putting jokes in your software isn't an issue. Putting jokes in a specification or in a protocol on the other hand can have long lasting consequences. Worse still if someone doesn't understand the joke and actually tries to implement it.

      This specific case doesn't really matter much as very if any people would actually implement all the error codes and a lot of software cherry picks only the ones that the developers expect. However in general if you put a joke in an specification, someone will read it on the

      • by Anonymous Coward

        Good grief, broham. Get a grip on yourself. Let's not try to make our work more joyless than it need be. Lighten up a little and try to have fun once in a while.

  • by Anonymous Coward

    ...the ddate removal from util linux. Another Karel Zak has arisen. Light the Beacons.

  • by Anonymous Coward

    Tune2fs in Unix (dunno about Linux) used to have a manpage line saying, "You can tune a filesystem, but you can't tune a fish."

    It was removed at the behest of PHBs since "the humor did not translate beyond English."

    • I remember during the "configure" stage of building one particular piece of software - while it was checking for the existence of various libraries, it would also "check the fridge for beers".

      I believe it was Enlightenment 0.16, but it may very well have been something else. In any case, it made me laugh.

      • by armanox ( 826486 )

        Quite a few projects still have humor in configure - I learned that compiling *EVERYTHING* to make my IRIX install have somewhat modern software run on it. Check out PERL sometime, I remember that being a good one.

  • by seoras ( 147590 ) on Saturday August 12, 2017 @09:42PM (#55001067)

    Seeing ICBM [wikipedia.org] in a web page header, giving the geolocation of the website/server, always made me chuckle.

  • by Anonymous Coward

    It's the Canary in the machine.
    If it goes then you know we have gone.
    It was SkyNet.

  • While I applaud the effort, attempting to clean up HTTP at this point seems blasphemous. I mean how many unused codes would remain if this one was removed? We only use like 5 right now anyway. I say keep it because it is a scar and you should be proud of your scars, HTTP. Leper protocols are people, too.

  • by Anonymous Coward

    Tim then asks "Who thinks we should panic now?" All three raise their hands, and proceed to panic, with lots of screeching and Tim crying "I'm a teapot!" repeatedly, with the attendant teapot pose.

    https://en.wikipedia.org/wiki/The_End_(The_Goodies)

  • Surely you know Error 419: Funds not found (because some scammer ran off with them).

  • Prior to this, the status code registry officially listed for 418 has been "unassigned." This meant that there was objectively a gap between what IETF considered to be standard, and what actual widely-deployed software considered to be standard. Something needed to change. I guess this guy just wanted to make it consistent, and for one reason or another decided to start by putting the objective technical needs above our own human desire for fun.

  • What else is your teapot supposed to reply with when sent a request that was meant to go to your fridge?

  • (facepalm) Ok, ok, remove 418. Fine! But you should have defined 420 - "Like wow, man. You requested some special stuff we don't have man".
  • Error code 2014: I am Groot.

  • Deprecate the GO Language ?

  • Let me make myself clear: I am NOT, repeat, NOT, a supporter of such foolishness. But since you all haven't gotten around to making me Imperator yet [hint], there actually might be a USE for such an error code ... for the teapot purists, that is. Like these guys:
    https://smarter.am/ikettle/ [smarter.am]
    https://www.techdirt.com/artic... [techdirt.com]

Algol-60 surely must be regarded as the most important programming language yet developed. -- T. Cheatham

Working...