Hacker News new | ask | show | jobs
by jasode 1474 days ago
>THE WEB WAS born to publish documents—in particular, physics papers from CERN, the great laboratory where Tim Berners-Lee, [...] I have argued many times, to the despair of anyone within range, that the <form> element was a pivot point for the entire technology industry. It is what changed the web from a read-only medium for physics papers into a read-write medium for anything.

Tim Berners-Lee also invented the HTTP protocol. HTTP 1.0 had the "POST" method and HTPP 1.1 added "PUT". So the read-write capability of the web was there from the beginning. TBL also said the web was meant to be read-write: "I hope I do not have to motive here the fact that the Web in general should be read-write."[1]

If we use Paul Ford's framework that the "web" was meant to be read-only documents, what's the correct intended uses for POST and PUT? The writeback specification was already present at a lower level than the <FORM> element in HTML.

But we have to look at the macro forces beyond HTTP+HTML and consider if a read-only web was realistic. Before 1989 Tim Berners-Lee protocols, older online services like Compuserve and Prodigy already let users do shopping and buy airline tickets. The underlying desire for bi-directional flow of read+write to enable transactions was proven before the www was invented. Therefore, even if TBL himself didn't put write capabilities into the spec, others (maybe Netscape Navigator or Microsoft IE) would have added that capability in as an extension which becomes a defacto standard that everyone adopts. (E.g. Industry adopts MS IE's XMLHttpRequest())

Would the world really want an open platform like HTTP+HTML to have less functionality than the closed commercial services like CompuServe and Prodigy that already had read+write?

[1] https://www.w3.org/DesignIssues/ReadWriteLinkedData.html

3 comments

An alternative history without <form> would likely have involved far more <applet> than the one that actually happened. Still talking through those http verbs you mention and not through custom protocols I think, because proxies were so common.
>HTTP 1.0 had the "POST" method and HTPP 1.1 added "PUT". So the read-write capability of the web was there from the beginning.

HTTP 0.9 (1991) only had GET. HTTP 1.0 is from 1996.

Imagine instead of HTML, we had something like GIT... a collection of elements that make up a document, possibly spread across many files. When you loaded a page, it was like git clone. Your form would be locally saved (git commit), and you could optionally push those changes back (to give them your filled in form). Future updates to that same local form could be pushed at any future time.

--- Better yet

Imagine if the form element only took a URL of the completed form. You'd get the form, fill it out, save it on a server, and push that repository address to the form's input handler on it's original server. (Much like a pull request)