
via @MadeMyDay
In letzter Zeit häufen sich die Anfragen bei unserer Firma, warum wir in noch so vielen Fällen auf Adobe Flash für das Frontend setzen. Die Technologie sei überholt – die Alternativen mit Javascript und html5 mannigfaltig und außerdem verabschiedet sich Apple offenkundig mehr und mehr vom Flash-Player auf den Plattformen iPhone, iPod und iPad.
Zunächst einmal wird diese Diskussion mit sehr vielen Emotionen geführt. Ich bin immer wieder erstaunt, wie viele Menschen (vor allem Entwickler) Adobe Flash vom Grunde ihres Herzens hassen. Kaum eine andere Technologie ist so stark verbreitet und hat so wenige Freunde.
Warum alle Flash hassen:
Die Abneigung gegen Flash als Entwicklungsumgebung und den damit verbundenen Flash-Player ist u.a. erklärbar aus den ersten Versionen der Entwicklungsumgebung. Die ersten Versionen von ActionScript und der dazugehörigen grafischen Entwicklungsumgebung hatten den Namen nicht verdient. Vor allem lenkten sie aber den Unmut von Entwicklern auf sich, da mit diesen Entwicklungsumgebungen auf einmal jeder Grafiker sich aus bunten Kästchen und ein wenig klicki-klacki einen Prototypen hat zusammenzimmern können. Auf einmal wurden in jedem Meeting Prototypen von Menschen herumgereicht, die in ihrem Leben noch keine Zeile Code geschrieben hatten. Das hatte etwas von Konkurrenz, aber auch sehr viel von Dilettantismus. Softwareentwickler mussten sich auf einmal rechtfertigen, warum sie für etwas mehrere Monate Zeit brauchen – wo doch Frau A. aus der Buchhaltung einen Prototypen in 5 Stunden bauen konnte. Das war eine sehr frustrierende Zeit.
Zusätzlich kam mit der Entwicklung von Flash auf einmal die Unart auf, Webseiten mit einem Flash-Intro beginnen zu lassen. Jeder Benutzer musste sich ein teilweise mehrminütiges fragwürdiges grafisches Machwerk anschauen, bevor er an die gesuchte Information kommen konnte. An diesem Umstand trifft Macromedia (denen gehörte damals Flash) keine direkte Schuld – aber die Wirkung auf die Akzeptanz bei den IT-affinen Usern war verheerend.
Ferner ist Flash heute eine so komplexe Umgebung geworden, dass man bei der Entwicklung in Flash sehr viele unanständige Fehler machen kann … und sie werden andauernd gemacht. Oftmals liefern Flash-Seiten keinen RSS Feed aus, haben keine Permalinks auf einzelne Zustände der Seite und werden von den Suchmaschinen nicht gefunden. All dies sind Features, die man bei der Entwicklung in einem nicht-Flash-Framework meistens “geschenkt” bekommt – und sie sind in Flash-Umgebungen wirklich etwas umständlich zu erzeugen.
Die Apfel-Rolle

http://www.flickr.com/photos/apfelherz/275675061/ via http://www.flickr.com/photos/apfelherz/
Jetzt kommt noch Apple um die Ecke und versucht der Technologie Flash praktisch den Gnadenstoss zu versetzen. Die neuen Apple Geräte (iPhone, iPod, iPad) unterstützen kein Flash und etwaige Entwicklungen Flash trotzdem auf die Plattformen zu portieren werden unterbunden. Das Argument für die nicht Flash Unterstützung ist die “Fehlerhaftigkeit” des Flash Players … und im übrigen kann den Flash Player doch sowieso keiner Ausstehen. Das sagt zwar keiner – ist aber trotzdem immanenter Bestandteil der Argumentation. Nun kommt im Fall Apple ein Umstand dazu, der öffentlich nicht so intensiv diskutiert wird. Adobe Flash bietet die Möglichkeit sehr einfach Systeme für die Verteilung von Video- und Audiomedien aufzubauen. Eine direkte Konkurrenz zum iTunes Store. Warum sollten die User der i-Produkte weiterhin ihre Musik und ihre Video über den i-Store kaufen, wenn es auf dem gleichen Gerät einen komfortablen Zugriff auf andere Geschäfte mit einem evtl. anderem Preismodell oder einer werbefinanzierten Medienverteilung gibt? Es ist nicht im Interesse von Apple dieses auf den neuen Proprietären Medienwiedergabe- und Mediekauf-Geräten zu unterstützen.
Ich liebe Apple Produkte – wie fast jeder, der einmal auf einem Mac gearbeitet hat – aber ich möchte nicht, dass Technologien die sich als Standard etabliert haben aus meinem Geräten ausgesperrt werden. An dieser Stelle sei auf diesen Artikel verwiesen http://theflashblog.com/?p=1703 er beschreibt sehr schön, wie das Netz ohne Flash aussieht. Und ich bin es als User inzwischen auch schon etwas satt beim surfen auf meinem iPhone andauernd auf das blaue “es-geht-leider-nicht” Logo zu stossen.
Warum wir trotzdem mit Flash arbeiten
Wir entwickeln mit der schnee von morgen (schneevonmorgen.com) Lösungen für professionelle Broadcaster und betreiben u.a. die Plattform dctp.tv. Als die Entwicklung an diesem Projekt gestartet ist, haben wir viele Möglichkeiten evaluiert. html5 war damals noch kein Thema – aber inzwischen haben wir uns auch intensiv mit den Möglichkeiten von html5 auseinandergesetzt. html5 ist die aktuelle Weiterentwicklung des html Standards und wird bereits von der aktuellsten Browser-Generation unterstützt. In html5 ist ein neuer Video-Tag enthalten mit dem es sehr einfach möglich wird Videos in Webseiten einzubinden. YouTube und Vimeo haben bereits html5 Versionen ihrer Seiten entwickelt. Das ist sehr vielversprechend.
Unsere Kunden besitzen Rechte an der Ausstrahlung von Medien – sind aber nicht in jedem Fall an der Verbreitung von Kopien der Medien interessiert. Das bedeutet: es gibt einen Unterschied ob ich einem Zuschauer die Möglichkeit gebe einen Film anzusehen, oder ob ich ihm die Möglichkeit gebe den Film herunterzuladen. Die Filme auf YouTube und Vimeo werden schon heute mit einer Technologie ausgeliefert, die eine lokale Kopie der Videodatei auf dem Rechner des Zuschauers erstellt. Dies ist für ein modernes Rechtemanagement nicht in jedem Fall zielführend. Der html5 Standard benötigt aber einen direkten Link auf eine Download-Location der Videodatei. Jeder User kann sich also den Quelltext der Seite ansehen und findet sofort den Link auf die Datei zum downloaden. html5 unterstützt kein Live-Streaming von Ereignissen und kein Streaming von Medieninhalten. html5 ist lediglich eine – sehr gute – Möglicheit um eine Mediendatei schnell und einfach auf einer Webseite (dem eigenen Blog) einzubinden.
Wenn ich in Diskussionen unseren Standpunkt bezüglich des Rechtemanagements vertrete höre ich oft die Antwort: “Ja – jetzt verstehe ich, warum ihr den Flash-Player einsetzen müsst … aber muss denn die ganze Seite in Flash sein?”.
Das ist eine gute Frage. Und die Antwort muss hier differenzierter ausfallen. Der Kern der Antwort besteht in der Frage: Macht denn die Seite irgendeinen Sinn ohne den Flash-Player? Und unsere Antwort darauf ist: Nein. Im konkreten Fall webTV und wenn das Zentrale Film-wiedergabe-Dings der Flash-Player ist – dann gibt es (außer einer möglichst schönen Fehlermeldung) nichts, was die Seite tun könnte um den Umstand zu verschönern, dass sie einfach nicht funktioniert. Um den Fernseher als Beispiel zu nehmen. Wenn der Bildschirm keine Filme darstellen kann – dann bringt mir auch die EPG Information keinen Vorteil.
Von diesem Grundgedanken ausgehend – und ich gebe zu es handelt sich hier bei der Konstruktion von webTV Sendern um eine sehr spezielle Anforderung – blieb also noch eine letzte Frage offen.
Noch einmal zusammengefasst:
- Der Flash-Player wird (zunächst) das zentrale Video-wiedergabe-Ding sein, wenn es darum geht a) eine möglichst große Zuschauerzahl zu erreichen und b) die Filme nicht zum download freizugeben.
- Eine webTV Seite ist ohne den Flash-Player defekt, da sie keinen anderen Sinn hat um möglichst schön die Videos anzuzeigen.
Also. Davon ausgehend ist die letzte Frage: Bringt es aus Entwicklersicht Vorteile eine Seite in einem Mix aus Javascript – Framework, DHTML, und einem Flash Framework zu entwickeln. Ist es günstiger oder stabiler oder besser zu handhaben? Unsere Antwort darauf ist: Nein. Mit Flex hat Adobe ein professionelles Entwicklungs-Framework bereitgestellt, welches schöne und integrative Werkzeuge für das Testen, Dokumentieren und Verwalten von größeren Softwareprojekten bietet. Wir debuggen an einer Stelle und nicht an fünf Fronten. Ich sehe die Entwicklung moderner Javascript-Frameworks mit großer Freude und werde den Vorgang regelmäßig erneut evaluieren. Aber bis heute bietet uns Flash bzw. Flex bei der Entwicklung, dem Styling und dem Testen von Webseiten (leider) den meisten Komfort.
An dem Tag, an dem es ein offener (echter) Standard schafft eine sichere und gestreamte Medienwiedergabe ohne Browserplugin auf über 90% der installierten Browser zu gewährleisten werde ich mich bekehren lassen und an dieser Stelle revidieren.
Dann legt mal los – auf die Kommentare bin ich gespannt!
Update 11. Feb 20:49 Uhr / Adobe PR Germany is now following you on twitter … so war das aber nicht gemeint.