Imran Nazar
Brewing Tea over the Internet
#1about 3 minutes
The early design and limitations of HTTP 0.9
The initial HTTP protocol only had a single 'GET' verb and lacked status codes, making it difficult to programmatically distinguish between successful responses and errors.
#2about 3 minutes
Standardizing HTTP 1.0 with verbs and status codes
HTTP 1.0 formalized the protocol by adding multiple verbs like POST and PUT, standardized status codes for programmatic error handling, and headers like the misspelled 'Referer'.
#3about 4 minutes
The challenge of submitting complex form data over HTTP
To handle file uploads in web forms, developers reused email standards, forcing web servers to parse email-formatted requests sent over HTTP.
#4about 4 minutes
Satirizing protocol extensions with the coffee pot protocol
RFC 2324, an April Fools' standard, satirized inappropriate HTTP extensions by creating the Hyper Text Coffee Pot Control Protocol (HTCPCP) with a 'BREW' verb and the famous '418 I'm a teapot' error.
#5about 2 minutes
Extending the coffee pot protocol to support brewing tea
RFC 7168 extends the coffee pot protocol for tea, using the '300 Multiple Options' status code to allow a client to select from a list of available teas.
#6about 2 minutes
Evaluating REST APIs and proper use of status codes
While REST is a logical extension of HTTP's verbs for database operations, returning a 200 OK status with an error in the body undermines the purpose of status codes.
#7about 2 minutes
Exploring other notable April Fools' internet standards
Other humorous yet insightful April Fools' RFCs include specifying an 'evil bit' in TCP packets for firewalls and defining IP over Avian Carriers.
#8about 1 minute
Physical implementations of the coffee pot control protocol
While no fully compliant HTCPCP coffee pots exist due to the protocol's joke nature, many systems implement the '418 I'm a teapot' response and a hackathon project built a working device.
#9about 3 minutes
Q&A on IP over Avian Carriers and HTTP/2
The Q&A session addresses the practical limitations of IP over Avian Carriers, such as high latency and packet loss, and touches on the non-human-readable nature of HTTP/2.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
47:05 MIN
Bringing a real-world developer voice to the W3C TAG
WeAreDevelopers LIVE – Guten TAG, Web Standards, AI and more
55:27 MIN
Defending the open web and shaping future browser APIs
WeAreDevelopers LIVE – Guten TAG, Web Standards, AI and more
05:03 MIN
Designing the core protocols of the early web
Opening Keynote by Sir Tim Berners-Lee
37:07 MIN
Q&A: Who designs web APIs and why use them over libraries
Web APIs you might not know about
25:53 MIN
Q&A on specifications, legacy systems, and tooling
Specifications as the better way of software development
13:01 MIN
Implementing DDD with a Request for Comments (RFC) process
Documentation as a Tool: Introducing Documentation Driven Development
07:47 MIN
Deconstructing REST for a future API wishlist
REST in Peace? What does the API protocol of the future look like? Or do we have it already?
23:17 MIN
Q&A on mocking tools and handling API versioning
Contract Testing - How do you tame an external API that constantly breaks your tests
Featured Partners
Related Videos
Awful APIs: A History Lesson in Industry Mistakes and Mishaps
James Seconde
API = Some REST and HTTP, right? RIGHT?!
Rustam Mehmandarov
Coffee with Developers: David Heinemeier Hansson
David Heinemeier Hansson
REST in Peace? What does the API protocol of the future look like? Or do we have it already?
Simon Auer
The year 3000, a brief history of Web Development
Lorenzo Pieri
The State Of The Web
Jeremy Keith
Designing gRPC APIs - The things they don't tell you
Bastian Eicher
The Resilience of the World Wide Web
Niels Leenheer
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.



Java Software Engineer - Tech for Good
Client Server
Charing Cross, United Kingdom
Remote
£85-100K
Java
Ruby
REST
+6


Java Developer Mid - APIs - API First - scrum,agile - remoto (*A)
BETWEEN TECHNOLOGY
Municipality of Madrid, Spain
API
Java
gRPC
Scrum
Redis
+3


C++ ClickHouse Internals Engineer - Remote
Crane Venture Partners
Municipality of Madrid, Spain
Remote
€62-109K
C++


Remote Systems Software Engineer (C++/Rust) for AI Tasks
Crossing Hurdles
Municipality of Madrid, Spain
Remote
C++
Rust