7 ms·
I think we could learn from an old (gone?!) Google+ post from Ian Hickson on what could possibly replace HTML but a lot of the criteria applies to Web/Internet
by oso2k 3mo ago
I think we could learn from an old (gone?!) Google+ post from Ian Hickson on what could possibly replace HTML but a lot of the criteria applies to Web/Internet as a whole (https://www.sitepoint.com/will-html-ever-be-replaced/ https://www.sitepoint.com/will-html-ever-be-replaced/).
Ian Hickson (“Hixie” — WHATWG specification editor, CSS2.1 co-editor and Google’s W3C representative) recently published an interesting post on Google+. He’s occasionally contacted by people suggesting a better alternative to HTML but, in all cases, none have come close. Ian states that any technology would need to satisfy at least five objectives to displace existing web technologies:
Be devoid of licensing requirements.
Be vendor-neutral and accept input from everyone.
Be device and media-neutral; it should work on PCs, TVs, mobiles, tablets, screen readers and any future hardware.
Be content-neutral and not restrict itself to types of document or application.
Be radically better than the existing web in every way; faster, more usable, more features, easier to develop, easier to monetize, etc.
HTML can fail objectives two and three. Technologies such as XHTML2 and XForms only satisfied one and three. Java and Flash struggle in all areas — and I’d also add Google’s Dart to that list.
Maybe this all means there’s a place on the net for gopher, Gemini protocol, or tilde.town or ssh BBSes?
- initramfs 3mo agoInteresting link! I haven't heard of him, but I didn't have a new protocol in mind per se, since there are many old ones that are still good. But I would have removed the :// from http:// since even Tim Berners-Lee admitted that wasn't needed. I think HTML5 was an improvement from Flash, but there's a lot in the old web, like Xerox Star that had a smooth resolution in the files. Something like LaTeX..
- rapnie 3mo agoI first heard of him via "Towards a Modern Web Stack (Ian 'Hixie' Hickson)" on HN [0]. Quite interesting. Note that the submission link is broken, the google doc link is added below [1]. [0] https://news.ycombinator.com/item?id=34612696 https://news.ycombinator.com/item?id=34612696 [1] https://docs.google.com/document/d/1peUSMsvFGvqD5yKh3GprskLC3KVdAlLGOsK6gFoEOD0/edit?resourcekey=0-bPajpoo9IBZpG__-uCBE6w https://docs.google.com/document/d/1peUSMsvFGvqD5yKh3GprskLC...
- chrismorgan 3mo agoAnd that concept was bonkers, proof conclusive that he had lost the plot—if his involvement with and endorsement of canvas-only Flutter wasn’t proof enough—and should be ignored completely until he comes to his senses. The obvious benchmark would be: can you implement an HTML/CSS/JS browser inside this environment and have it behave identically to the browser’s own HTML/CSS/JS? And the answer is: not a chance. WASM + WebGPU + ARIA + WebHID is simply not enough. Browsers provide a lot of functionality in ways that web content cannot see or interact with. Some of it could be mapped, other parts of it never can be, for security/privacy reasons. And the more you want to map, the bigger your spec gets, until you’ve added every diverse feature from every OS to the web’s API surface—and then you stop browsers from adding new functionality, too. Some examples of things that can’t be implemented in web content (most fundamentally, one or two merely currently): Native text rendering in this WebGPU world. Links with all their functionality. Native font preferences. Text selection and its interactions with native platform functionality (including things like context menus). Native scrolling behaviour. The browser as a compositor (important for things like scrolling and video performance). Browser extensions (the user agency part of that first scathing comment).
- Hixie 3mo agoThe things you list that couldn't be implemented in such an environment are a mix of two things, first, things that browsers are specifically designed to _prevent_ a web page from doing, e.g. to avoid leaking privacy, and second, things that absolutely should be possible in that environment, because if they're not, then the environment isn't yet complete. But in practice I don't think either is especially critical. You can already do pretty much what I suggested just by running the Wasm code against WebGL in a stub HTML page; it hasn't stopped people from creating such things (e.g. Google Docs, Figma, Flutter, etc). The core thing I proposed was allowing the inversion of the architecture so that the Wasm code could be a top-level resource the same way text/html and application/pdf are today. Sure, it could be improved in time by allowing some of the things you list, but that doesn't mean it wouldn't be useful today. The perfect is the enemy of the good, and all that.
- 3mo ago
- Rohansi 3mo ago> Maybe this all means there’s a place on the net for gopher, Gemini protocol, or tilde.town or ssh BBSes? All of those fail #5 for sure. And that's one of the most important points to bring in users IMO. We all (hopefully) know the world would be a better place with less JS but you can't put the genie back in the bottle.
- trashb 3mo agoSeems like the whole "no tracking, no targeted advertisements" is a great feature of Gopher & Gemini. BBSes do tracking but it seems rarely used for advertisement its more distributed anyway so if you don't like a BBS you can move to the next one connected to the same messaging networks. Then there is also the communities, increased accessibility (it's just text) and the more structured nature of the "sites" which may be a feature. So I would argue that there is definitely some benefits (for the user) to those alternative protocols.
- lukan 3mo ago"We all (hopefully) know the world would be a better place with less JS but you can't put the genie back in the bottle." I don't know that. I suspect you hate javascript because so many ads and tracking software is written with it? Replace JS with something better and the ads will just be written in that. Otherwise JS .. works and is simple. And compiling any language to wasm very doable nowdays. What would be the alternative? (Personally I would like to see TS native in the browser)
- jhbadger 3mo ago"works and is simple"? You can argue JS works by definition because it is what people use, but it is far from simple -- JS and C++ are basically the only two programming languages where books plead with you not to use all their features but use a more maintainable subset.
- lukan 3mo agoIt is simple as in people use succesfully javascript who have no idea what programming is.
- taneq 3mo agoI’d say Markdown meets every one of those criteria except “more features” (which is a feature IMO) and “easier to monetise” (which is another feature. :D )
- al_borland 3mo agoYou mention it fails number 5, but I think Markdown also fails number 4. It’s pretty restrictive with the types of documents it can create. It’s HTML and traditional web technologies that gives it the illusion of flexibility. To be displayed in a pleasing way to most humans, it’s also rendered as HTML, usually with some kind of styling. In a world without HTML, what is Markdown going to use?
- jhbadger 3mo agoLaTeX? That's actually the primary use case I've seen for markdown -- to write papers/presentations/code notebooks in markdown that are then turned into LaTeX for typesetting.
- initramfs 3mo agoSorry, I meant one of the early X-Window predecessors from the Alto era- I don't remember which one(s), but it had a pixel perfect rendering aspect that appeared at least much lower level and the GUI used far less memory. The most recent one that resembled that is X11R1, which I have tested on a VM linux image from ~2005, called Xwoaf. https://en.wikipedia.org/wiki/X_Window_System#History https://en.wikipedia.org/wiki/X_Window_System#History I recall some pdfs of the Xeroc PARC showed more info on it. Edit: I might have confused LaTex with https://en.wikipedia.org/wiki/NeXTSTEP https://en.wikipedia.org/wiki/NeXTSTEP. I think it was more efficient in handling data, but then again, platforms age whenever a new application needs more memory, so they got abandoned because it was more efficient to bundle it into something like Wayland...
- dredmorbius 3mo agoPossibly Interpress, a precursor to PostScript. Otherwise the Alto used Bravo and Gypsy for WYSIWYG typesetting: <https://en.wikipedia.org/wiki/Xerox_Alto https://en.wikipedia.org/wiki/Xerox_Alto>
- throwaway7356 3mo ago> Maybe this all means there’s a place on the net for gopher, Gemini protocol, or tilde.town or ssh BBSes? By your question (and Betteridge's law of headlines): no, as they fail at least (2), (4) and (5).
- trashb 3mo ago> as they fail at least (2), (4) and (5). Can you explain how you see that they fail 2 and 4? To me it seems with Gemini, Gopher and BBSes (tilde.town is html so let's skip that) they can serve any type of content they want and you can probably already connect to it and retrieve something readable.
- scared_together 3mo agoPoint #5 seems near impossible and even furthermore undesirable. Unless we are envisioning an application with all the characteristics of a web browser, but using different layout languages.
- chicken-stew 3mo agoMaybe he overlooked a requirement because it’s so obvious: Be human readable
- theandrewbailey 3mo ago> Ian Hickson (“Hixie” — WHATWG specification editor, CSS2.1 co-editor and Google’s W3C representative) How long after this post did AMP come out? Three years?
- Hixie 3mo agoFWIW, while I represented Google in the HTML working group (for a few years; it was a complicated relationship), my work on HTML at Google was primarily done via the WHATWG. I was not involved with AMP's development at any point that I recall.
- theandrewbailey 3mo agoThanks for the response! I had a feeling that AMP came from some other part of Google not too concerned about open standards.
- trumpdong 3mo agoTwo is impossible unless you want to be overrun by spam. Three and four are incompatible. Five is not a real criterion, it's a pipe dream.
- xg15 3mo ago> Java and Flash struggle in all areas Worth noting that Flash did succeed: It was widely used across the web and installed by enough web users that sites could usually assume it was available (though it was considerate to provide fallback content) - that even though it needed a separate installation step! It took a conscious effort by browser vendors and Adobe to kill it and replace it with other technologies. Maybe for good reasons, but it was definitely not a "free market" development. I also find the list a bit weird and even hypocritical in places, as, like you say, HTML itself doesn't pass all criteria. I'd also question other points for the general usefulness as an alternative: Why does an alternative tech necessarily have to accept input from everyone? Not even open source projects do that. Also, why does it have to be content-neutral and have to support any kind of application? Pre-web technologies generally were "host neutral" - they let you connect to any host that supported the protocol - but the protocol usually had very well-defined application semantics. It seems instead of trying to "boil the ocean", a better way would be to focus on specific domains that could benefit from alternative technologies the most. Be device and media-neutral: Just to note, Apple only allows single-purpose apps and points to Safari for everything else. They literally forbid anyone from trying to promote any "alternative web" unless they have a say in it. (Not quite sure about the Play Store right now, but they likely do something similar) So taken strictly, thay point would be a nonstarter unless you already have connection to the higher-ups of current Big Tech companies.
- oso2k 3mo agoFlash succeeding is subjective. There were many who were hostile to Flash (and Java) for a long time. I actively disabled the Flash plugin except when necessary. HTML not passing the criteria doesn't negate it from being the current leading technology. All it indicates is that there could be a technology that does more (most) of these things better. And, it sets a certain benchmark for the next technology to aspire to. I think accepting input from anyone is a resiliency feature. Imagine if only Governments drove the Web? Or Multi-national Megacorps? Billionaires? Choice and freedom helps to democratize and enable usage by participants who are diadvantaged. Content-neutrality is experiential. That is to say, gopher is well known to be more organizationally efficient at transimitting data than http. However, it was primarily aimed at text transmission and was very poor at supporting applications (like banking, commerce sites or email). These were huge boons to the current Web.
- Hixie 3mo agoThe original blog post was migrated back to my blog when Google+ shut down: https://ln.hixie.ch/?start=1344621190&count=1 https://ln.hixie.ch/?start=1344621190&count=1
- dredmorbius 3mo agoThanks so much. It also managed to be captured by IA as I've just noted: <https://news.ycombinator.com/item?id=48471296 https://news.ycombinator.com/item?id=48471296> The archived copy includes comments, which are dropped from your blog version.
- dredmorbius 3mo agoIan Hickson's original post lives on the Internet Archive's Wayback Machine here: <https://web.archive.org/web/20130913091125/https://plus.google.com/107429617152575897589/posts/SiLdNL9MsFw https://web.archive.org/web/20130913091125/https://plus.goog...> Raw URL: https://web.archive.org/web/20130913091125/https://plus.google.com/107429617152575897589/posts/SiLdNL9MsFw For those wondering how I found this ... There was an attempt to preserve G+ content, and however heroic it was far less successful than I'd have liked. The two key parts are the UserID and the PostID. That's "107429617152575897589" and "SiLdNL9MsFw" respectively. I found Ian's G+ UserID from an archive of his homepage, here: <https://web.archive.org/web/20120214010013/http://ian.hixie.ch/ https://web.archive.org/web/20120214010013/http://ian.hixie....> That links to: https://web.archive.org/web/20120214010013/http://ian.hixie.ch/+ Which redirects to https://plus.google.com/107429617152575897589/posts And those paying close attention will of course immediately recognise the highly distinguishing 21 digit string "107429617152575897589", a/k/a Ian Hickson's G+ userID / UUID. Google+ placed all posts under the '/posts' URL segment, and has a wildcard syntax for searching for all captures under a given URL: https://web.archive.org/web/*/https://plus.google.com/107429617152575897589/posts/* Which you can access directly here: <https://web.archive.org/web/*/https://plus.google.com/107429617152575897589/posts/* https://web.archive.org/web/*/https://plus.google.com/107429...>. Going through those individually, I eventually turned up the original link. It's also possible to see the first 2-ish 'graphs of the post by looking at captures of Ian's G+ profile page. Unfortunately, there is no direct link to the full post from this view, though if you view source you can find the post-ID, notably in the JSON data at the top of the post following "AF_initDataCallback". I'd turned it up by going sequentially through the captured posts above however, and only discovered that the postID is actually on the Profile page afterwards. The two (partial) 'graphs begin with: Occasionally, people e-mail me to say something along the lines of "I've come up with something to replace HTML!"... <https://web.archive.org/web/20121112102441/https://plus.google.com/107429617152575897589/posts https://web.archive.org/web/20121112102441/https://plus.goog...> Oh, and the Internet Archive is one of the few parts of the Internet which do not precisely suck. If you can send them love, or better, money, please do.
- oso2k 3mo agoThanks for finding this!