HTML aus der Hölle

HTML6-Proposal für „Single-page-Webanwendungen ohne JavaScript“ sorgt für Aufruhr

Redaktion JAXenter

© Shutterstock.com/Chimpinski

Ein HTML6-Proposal für Single-page-Webanwendungen ohne (ja, ohne!) JavaScript hat die Front-End-Community in Aufruhr versetzt. Nehmen Sie erst einmal tief Luft, bevor Sie weiterlesen!

Ein lässig auf W3.org vorgetragenes HTML6-Proposal wird von der Front-End-Community zur Zeit heftig diskutiert. Der vom ehemaligen NSA-Mitarbeiter und jetzigen Startup-Unternehmer Bobby Mozumder eingereichte Vorschlag tritt für eine extrem schnelle, responsive Weberfahrung ein, die gänzlich ohne JavaScript auskommen soll. Mozumder schreibt:

There’s a standard design pattern emerging via all the front-end JavaScript frameworks where content is loaded dynamically via JSON APIs. This is the single-page app web design pattern. Everyone’s into it because the responsiveness is so much better than loading a full page – 10-50ms with a clean API load vs. 300-1500ms for a full HTML page load.

Die Popularität dieser Herangehensweise führt Mozumder zu der Anregung, diese in Zukunft direkt via HTML in Browsern umzusetzen, damit User Single-page-Webanwendungen ohne JavaScript dynamisch laufen lassen können. Dies würde Mozumder zufolge den HTML-Body in eine verlockende Sprache verwandeln, bei der sich der gesamte Content in den Fixtures befindet, die ohne JavaScript dynamisch neu geladen werden können.

HTML6-Code

Der folgende Code zeigt die von Mozumder vorgeschlagene Herangehensweise exemplarisch:

<DOCTYPE html>
<HTML LANG=“en”>
<HEAD>
<FIXTURES lang=“xml”>
	<model class=“MyArticleData”>
		<rsp stat=“ok">
			<article label=“one” id=“1">
				<headline>"Big News!”</headline>
				<body>"<p>This is the first article intro.</p><p>This is the second paragraph.</p>"</body>
			</article>
			<article label=“two” id=“2">
				<headline>"Not so big news"</headline>
				<body>"<p>This is the <em>second</em> article.</p>"</body>
			</article>
		</rsp>
	</model>
	<model class=“MyImageData”>
		<rsp stat=“ok">
			<image label="Square" width="75" height="75" source="https://mycontentserver.com/image_s.jpg" id=“3"/>
			<image label=“Tall" width=“300" height=“200" source="https://mycontentserver.com/image_l.jpg" id=“4"/>
		</rsp>
		<rsp stat=“loading">
			<image label="Square" width="75" height="75" source="https://mycontentserver.com/loading_image_s.jpg" id=“1"/>
		</rsp>
		<rsp stat=“some_error">
			<image label="Square" width="75" height="75" source="https://mycontentserver.com/error_image_s.jpg" id=“2"/>
			<message
		</rsp>
	</model>
</FIXTURES>
</HEAD>
<BODY>
	<MENU class=“controller”>
		<A href=“http://api.mywebsite.com/api/load-new-article” model=“MyArticleData">Click here to replace the articles with different articles.</A>
		<A href=“http://api.mywebsite.com/api/load-new-image” model=“MyImageData">Click here to replace the picture with a different picture.</A>
	</MENU>
	<MAIN class=“viewer”>
		<ARTICLE class=“center">
			<H1 model=“MyArticleData.rsp.article(label=‘one’).headline” />
			<SPAN model="MyArticleData.rsp.article(label=’one’).body” />
		</ARTICLE>
		<ARTICLE class=“sidebar">
			<H1 model=“MyArticleData.rsp.article(label=’two’).headline” />
			<SPAN model=“MyArticleData.rsp.article(label=’two’).body” />
		</ARTICLE>
		<IMG src=“model:MyImageData.rsp.image(label=‘Square’)#source” width=“model:MyImageData.rsp.image(label=‘Square’)#width” height=“model:MyImageData.rsp.image(label=’Square’)#height”>
	</MAIN>
</BODY>
</HTML>

HTML6 ohne JavaScript

Es gehört schon Mumm dazu, JavaScripts Stellung im Triumvirat mit CSS und HTML5 in Frage zu stellen. Doch Mozumder steht hinter seiner Idee:

There is also a “model:” URI that old attributes and the rest of the page can use to references the loaded data. Anything in the DOM should be replaceable, including the URL bar and style sheets. This internal data can be modified by Javascript if needed, separate from modifying the DOM – you could export this data for form processing if you wish. This internal data can also be push updated by a server or connected directly to a local database for caching or persistence – the browser manages this now, instead of the web developer/Javascript.

Der Vorschlag stieß auf ein gerüttelt Maß an Skepsis. Brian Kardell, der Kopf hinter HitchJS, schrieb beispielsweise, dass derartige Fehlversuche bereits häufiger gemacht wurden. Michael Peters (DOMBlogger) nannte die Vorstellung, dass HTML6 Content dynamisch via JSON-API lädt, „absurd“:

Not everyone is into it [den JSON API-Ansatz]. I hate it. For many reasons. Only place I like it is for feeds, like Tumblr, and even there is can be really problematic sometimes. […] HTML should not embrace particular design choices.

Mozumder begegnete derweil den Ängsten, dass sein Vorschlag die Komplexität lediglich von einem Ende zum anderen verschieben würde: sein Ziel sei es, die Dinge leichter und nicht komplizierter zu machen:

Were you able to pick up on my example quickly? How long would it take to learn a Javascript framework?”

Auf der Plattform Hacker News zeigten einige Mitglieder durchaus Interesse an dem Vorschlag, allerdings zeigten sich viele ob der Komplexität oder Mozumders Motivation besorgt:

Sounds to me like someone’s too lazy to learn JavaScript.

When will people stop trying to make HTML into an all-in-one product? It was built to be simple, to provide markup and that’s it.

Obwohl Mozumders Idee für HTML6 weit von einer offiziellen Bestätigung durch das World Wide Web Consortium (W3C) entfernt ist, ging sie bereits viral. Und Mozumder ist sich dessen durchaus bewusst.

Die Originalmeldung erschien auf Jaxenter.com

Aufmacherbild: html code von Shutterstock.com / Urheberrecht: Chimpinski

Verwandte Themen:

Geschrieben von
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
4000
  Subscribe  
Benachrichtige mich zu: