Du hast deinen AdBlocker an?

Es wäre ein Traum, wenn du ihn für t3n.de deaktivierst. Wir zeigen dir gerne, wie das geht. Und natürlich erklären wir dir auch, warum uns das so wichtig ist. Digitales High-five, deine t3n-Redaktion

t3n 15

Internationalisierung von Webanwendungen mit Ruby on Rails: Parlez-vous Rails i18n?

Andere Länder, andere Sitten. Dieses Zitat besitzt auch im Web seine Gültigkeit. Einerseits müssen Webplattformen mit internationalem Publikum in verschiedene Sprachen übersetzt werden. Andererseits verfügen einzelne Länder und Regionen über unterschiedliche Formate. Ruby on Rails ist an vielen Stellen Inspirationsquelle für andere Frameworks. Das Thema Internationalisierung kam bisher zu kurz. Mit der Version 2.2 steht jetzt eine leistungsfähige API zur Verfügung, die Entwicklern die Arbeit deutlich erleichtert.

Webplattformen aller Art stehen, was die Jagd nach dem Nutzer angeht, untereinander in einem starken Wettbewerb. Eine Variante, die Reichweite der Unternehmung im Netz zu steigern, ist die Durchführung einer Internationalisierung.

Was bedeutet der Begriff Internationalisierung?

Der Begriff Internationalisierung wird in verschiedenen Kontexten verwendet. Daher gibt es unterschiedliche Auffassungen, wie er zu verstehen ist. Am häufigsten wird der Themenkomplex in zwei Teile getrennt. Internationalisierung (Internationalization, kurz i18n) bezeichnet die Aufgabe, ein Programm so zu entwickeln, dass eine Anpassung an die Anforderungen von anderen Kulturen und Ländern möglich ist, ohne den Quellcode nachträglich verändern zu müssen. Die zweite Teilleistung ist die Lokalisierung (Localization, kurz l10n). Hier werden die Anforderungen, die ein Land stellt, konkret umgesetzt. Vorteilhaft an dieser Ansichtsweise ist die klare Trennung zwischen den beiden Teilleistungen: i18n beschreibt die Definition der abstrakten Schnittstellen und l10n füllt sie mit Leben.

Chancen und Spannungsfelder bei der Internationalisierung

Die Durchführung von i18n und l10n verspricht erhebliche Chancen, die Reichweite der eigenen Produkte zu vergrößern. Die Tatsache, dass man den Nutzerkreis durch die Erschließung neuer Sprachen und Länder ausweiten kann, ist nicht zu leugnen. Studien im E-Commerce belegen sogar, dass Menschen eher auf Plattformen kaufen, wo sie Informationen in ihrer Sprache präsentiert bekommen [1]. Daher begegnet einem im Beratungsalltag häufig die Auffassung von Produktmanagern, dass man „mal eben“ eine i18n durchführen oder von vornherein vorsehen könnte, weil eben so viel dafür spricht. Dass bei diesem Vorhaben neben den technischen Herausforderungen auch länderspezifische und kulturelle Unterschiede einfließen müssen, die über die Übersetzung der Sprache hinaus gehen, ist häufig unbekannt. Die Tabelle stellt die wesentlichen Spannungsfelder dar.

Spannungsfelder bei der Internationalisierung
Sprache
Beachtung verschiedener lokaler Sprachausprägungen (US English: localization vs. British English: localisation)
Verschiedene Zeichencodierungen (ASCII vs. UTF-8)
Verschiedene Schreibrichtungen (Deutsch: links nach rechts vs. Chinesisch: oben nach unten)
Verschiedene Tastaturlayouts
Kultur
Interpretation von Farben und Symbolen
Unterschiedliche Formate beispielsweise für Telefonnummern und Postleitzahlen
Unterschiedliche Maße beispielsweise für Währungen und Gewichte
Verschiedene Papierformate
Sonstige
Verschiedene Kalender und Zeitzonen
Unterschiedlicher Umgang mit Trennungszeichen ('.' vs. ',')

Jeder Kulturraum verfügt über gewachsene Ausprägungen. Dessen sollte man sich bewusst sein, wenn man ein i18n-Projekt startet. Kulturelle Aspekte wie Farbinterpretationen und die Leserichtung können sogar Änderungen am Layout erfordern. Diese Anforderungen sind nur schwierig zu erfüllen. Weitere Spannungsfelder findet man hier [2].

Auswirkungen auf Projektdurchführung

Die Spannungsfelder der i18n führen indirekt zu Implikationen bei der Projektdurchführung. So müssen die Entwickler bei jedem Release einen Übersetzungs-Zyklus anstoßen. Dieser lässt sich im Rahmen des Projektmanagements im Vorhinein planen, dennoch kommt es in der Regel zu Wartezeiten, wodurch sich der Entwicklungsprozess verlangsamt. Außerdem lassen sich Übersetzungen in den seltensten Fällen selbst durchführen. Die Beauftragung professioneller Übersetzer bindet zusätzliche finanzielle Ressourcen. Diese Investition wird aber empfohlen, zumal Übersetzungsfehler in hohem Maße unprofessionell auf den Nutzer wirken und in Segmenten wie dem E-Commerce „tödlich“ sind. Häufig reicht es jedoch noch nicht, dass der Übersetzer nur professionell sein Fach beherrscht, da Aspekte wie bestimmte Sprachstile gefragt sind. In einer „hippen“ Jugend-Community wird ein anderes Englisch gesprochen als auf einem Finanzportal. Dieses Einfühlungsvermögen für die sprachlichen Gepflogenheiten fremder Länder ist schwierig am Markt zu finden. In der Regel wird man an einem Team, welches vor Ort agiert und aus Einheimischen besteht, nicht vorbeikommen. Ein Negativbeispiel von vielen ist beispielsweise das Social Network StudiVZ [3], das sich inzwischen wieder aus dem Ausland zurückzieht [4].

Internationalisierung mit Ruby on Rails

Die vorherigen Abschnitte schildern, welche Dinge man bei i18n-Projekten beachten muss. Neben den organisatorischen Herausforderungen muss man sich auch den technischen Herausforderungen stellen. Diese bestehen im Wesentlichen darin, dass der Entwickler Lösungen für die in der Tabelle dargestellten Spannungsfelder finden muss. Schön für den Entwickler ist es, wenn man ein Framework verwendet, das einem den Großteil der Arbeit abnimmt. Wie eingangs erwähnt, gehört Ruby on Rails zu den innovativsten Frameworks, die es momentan im Web gibt. Die Macher von Rails haben an sehr vielen Stellen neue Standards geschaffen und die Latte für andere Frameworks höher gehängt. Was die Unterstützung von i18n angeht, sah es allerdings bisher recht düster aus: Es existierten lediglich verschiedene Lösungen in Form von Plugins und Gems, die allerdings alle nicht auf ganzer Linie überzeugen konnten. Einen guten Überblick über Lösungen für i18n mit Rails (< 2.2) inklusive Bewertung findet man in der Präsentation von Jan Krutisch auf der Rails-Konferenz 2007 [5].

Bitte beachte unsere Community-Richtlinien

Schreib den ersten Kommentar!

Du musst angemeldet sein, um einen Kommentar schreiben zu können.

Jetzt anmelden