Mono: wohin geht die Reise?

Mono, die Open-Source-Implementierung von Microsofts .net-Plattform, war ein tolles Versprechen an Linux-Entwickler: Eine mächtige Software-Plattform, eine breite Unterstützung unterschiedlicher Programmiersprachen und nicht zuletzt die Möglichkeit, Anwendungen plattformunabhängig zu entwickeln.

Lediglich drohende Patentforderungen von Seiten Microsofts schienen der Verwendung im Wege zu stehen, Microsoft aber frühzeitig ein „Community Promise“ abgegeben, von solchen Forderungen abzusehen. Neben der Mono-Plattform hat das Team um Miguel de Icaza mit MonoDevelop noch eine großartige Entwicklungsumgebung angeboten.

Und auch wenn nicht alle Vorbehalte verschwunden sind, so wurde Mono doch in alle großen Distributionen integriert, und es entstanden einige interessante Software-Projekte auf Mono-Basis.

Mittlerweile scheinen keine Software-Patente, sondern eine andere Entwicklung für Linux-Entwickler bedrohlicher zu sein: Miguel de Icaza als der Kopf hinter dem ganzen Projekt und sein Unternehmen Xamarin, das sich um die Weiterentwicklung kümmert, haben sich von Linux – und scheinbar vom OpenSource-Gedanken – verabschiedet.

Miguel de Icaza selbst verwendet Linux schon seit Monaten überhaupt nicht mehr; Xamarin setzt stattdessen voll auf Apple-Systeme, insbesondere auf den boomenden Mobile-Markt. Und so wird die aus MonoDevelop hervorgegangene Entwicklungsumgebung Xamarin Studio (noch?) nicht für Linux angeboten, vom Vorgänger gibt es für die Linux-Distributionen teilweise nur noch vollkommen veraltete Versionen. Eine brauchbare »Community-Lizenz« für OpenSource- oder Freeware-Projekte gibt es auch nicht, mittlerweile aber wenigstens eine kostenlose und dafür stark eingeschränkte Version.

Und so ist durchaus fraglich, ob wenigstens die Mono-Laufzeitumgebung (die ja unter einer freien Lizenz steht) noch eine Zukunft unter Linux hat, und welchen Wert diese noch besitzt, wenn keine aktiv weiterentwickelte IDE existiert. Man kann Xamarin nicht vorwerfen, dass sie den gewählten Weg gehen. Für die OpenSource-Szene ist es leider kein guter Weg. Angesichts der ungewissen Zukunft würde ich für ein neues Projekt jedenfalls nicht auf Mono setzen.

Magazine lesen auf Android-Geräten: eine Enttäuschung

Was haben die deutsche Wired, der Stern, CHIP und der Elektrospieler gemeinsam? Sie alle kann man in einer Digital-Ausgabe auf seinem Android-Gerät lesen. Und: ihre Apps basieren alle auf der gleichen, miesen Software.

Die Software um ein E-Magazin herum ist eigentlich vergleichsweise überschaubar: Mit ihr lassen sich die verfügbaren Ausgaben durchblättern und kaufen. Gekaufte Ausgaben werden heruntergeladen und können anschließend gelesen werden. Dabei können die grundsätzlich starren Seiten mit einzelnen multimedialen / interaktiven Elementen angereichert werden.

Klingt eigentlich nicht außergewöhnlich anspruchsvoll.

Und dennoch macht der Software-Hersteller so einiges falsch. Das beginnt damit, dass die Apps sicht optisch nicht an StyleGuides von Google / Android halten, sondern überall Elemente im iOS-Stil verwenden. Dazu sind die Apps furchtbar träge (auch auf Geräten mit reichlich »Power«) und relativ instabil. Teilweise, je nach Magazin, wird auch nicht der komplette Bildschirm genutzt. Der Back-Button verhält sich unlogisch oder zeigt gar keine Reaktion.

Unpassende Interface-Elemente. Der Banner funktioniert nur im Querformat.
Unpassende Interface-Elemente. Der Banner funktioniert nur im Querformat.

Anders als iOS ist Android von Grund auf darauf ausgelegt, auf Geräten mit verschiedensten Bildschirmgrößen und -Auflösungen zu laufen und bietet den Entwicklern zahlreiche Möglichkeiten, darauf zu reagieren. Standard-Interface-Elemente skalieren ohnehin automatisch mit, d. h. auf Buttons etwa werden Schriftgröße und Innenabstand entsprechend der Auflösung angepasst. Grafiken (etwa für Symbolleisten) können in verschiedenen Größen für unterschiedliche Auflösungen hinterlegt werden; es lässt sich sogar das komplette Layout auflösungsabhängig austauschen.

Von diesen Mechanismen kann man allerdings schwerlich profitieren, wenn man sie komplett ignoriert. So kommt es, dass das Interface schon auf einem Nexus 7 nicht nur übel aussieht, sondern auch schwer zu bedienen ist, auf einem Nexus 10 sind die Apps laut Reviews anscheinend vollkommen unbrauchbar. Wer eine Ahnung davon kriegen möchte, welche Erfahrungen die Anwender mit den Magazin-Apps gemacht haben, der sollte sich einmal die Bewertungen im Play Store durchlesen.

Konsequente Verwendung von unpassenden UI-Elementen
Konsequente Verwendung von unpassenden UI-Elementen

Aus Sicht der Verlage ist das Vorgehen durchaus nachvollziehbar. Kaum ein Verlag wird die notwendigen Kompetenzen und Kapazitäten besitzen, um In-House eine ansprechende App entwickeln zu können; zudem misst man der Android-Plattform weiterhin keine große Bedeutung zu. An erster Stelle steht das iPad, und dafür wird publiziet. Wenn es nun aber fertige Lösungen gibt, ohne nennenswerten Zusatzaufwand die Inhalte auch unter Android zu verwerten – selbst in einer schlechten Umsetzung – dann ist das durchaus verlockend. Man ist zwar nicht angewiesen auf ein paar zahlende Android-Nutzer, aber wenn man, wie gesagt: ohne großen Zusatzaufwand, ein paar zahlende Kunden »mitnehmen« kann, dann ist das nicht die schlechteste Option.

Allerdings: Dieses Vorgehen frustriert die Anwender und sorgt nicht unbedingt für einen Image-Zugewinn. Von guten Umsätzen ganz zu schweigen. Dass es auch anders geht, zeigt etwa der SPIEGEL, der ganz offensichtlich eine ganze Menge Aufwand betrieben hat, am Ende aber auch geradezu eine Vorzeige-App für Android hingelegt hat.

Der SPIEGEL macht praktisch alles richtig
Der SPIEGEL macht praktisch alles richtig

Das traurigste an diesem Thema ist, dass die Magazin-Software insgesamt durchaus noch brauchbar läuft; eine vollständige Überarbeitung des User Interfaces würde die Apps qualitativ gleich in einem ganz anderen Licht dastehen lassen – und würde vermutlich nur wenige Tage Aufwand beanspruchen. Freilich: Um ein gutes UI zu gestalten, müssten sich die Entwickler (und Entscheider) ernsthaft auf Android als eigenständige Plattform einlassen, nach Möglichkeit unterschiedliche Testgeräte bereithalten und vor allem: Android-Geräte tatsächlich benutzen, um ein Gefühl dafür zu bekommen, wie die Plattform funktioniert.