Der Club für alle, die forschen, tüfteln, checken und entdecken!
  • programmieren

News | 08.07.2019

#SmooshGate: Warum Fortschritt im Web manchmal schwierig ist

Die drei großen Websprachen HTML, CSS und JavaScript haben sich seit ihrer Erfindung stark verändert. Und manchmal gibt es dabei unerwartete Probleme.

Eines dieser Probleme wurde mit dem Begriff #SmooshGate beschrieben. Dabei geht es um den Namen einer künftigen Funktion für Arrays in Javascript. Dort steht man nämlich manchmal vor dem Problem, dass man geschachtelte Arrays wie [1, [2, 3], 4, [5]] auf nur ein Array [1, 2, 3, 4, 5] "flachklopfen" möchte. Das ging natürlich mit eigenem Code schon lange, aber nun soll eine Möglichkeit dazu von Haus aus in JavaScript angeboten werden. Und der dazu passende Name war, nach Ansicht der JavaScript-Entwickler, einfach "flatten".

Dummerweise ist das Web aber ein sehr dynamisches Umfeld. In einer Sprache wie JavaScript kann jeder den Funktionsumfang genau so erweitern, wie das auch die Browserhersteller tun. Und manche Entwickler haben genau das getan und sich einige eigene Funktion namens "flatten" für Arrays definiert. Das ist zwar kein besonders guter Stil, aber es hat halt funktioniert.

Als jetzt die ersten Browser dann aber damit begonnen haben die offizielle Version von "flatten" auszurollen, gingen plötzlich Webseiten kaputt. Konkret konnte man mit einem gewissermaßen zu aktuellen Browser kurzzeitig nicht mehr auf die 14 Tage Vorschau bei wetteronline.de zugreifen. Das war nicht direkt die Schuld der Entwickler bei wetteronline.de, die verwenden lediglich eine nicht mehr ganz aktuelle Bibliothek namens "mootools". Und in dieser Bibliothek wird ein falsches "flatten" halt ungeschickterweise automatisch mit geladen. Diese "mootools" werden mittlerweile allerdings nicht mehr weiterentwickelt, die letzte Version ist von 2016. Und trotzdem sind die mootools auf vielen Seiten im Einsatz. Und die würden dann möglicherweise auf aktuellen Browsern nicht funktionieren.

Die JavaScript-Entwickler haben also nach einem anderen Namen für die "flatten"-Funktion gesucht, der neue Name würde dann hoffentlich nicht in Konflikt stehen. Und dabei tauchte dann plötzlich, abseits der offiziellen Gremien, der wenig hilfreiche Name "smoosh" statt "flatten" auf. Weil dieser Vorschlag am offiziellen Prozess vorbei entstanden ist, gab es dafür dann jede Menge Kritik und es kam zum #smooshgate. Mittlerweile hat man sich auf "flat" als neuen Namen geeinigt.

zurück