Entwicklung & Design

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

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Schreib den ersten Kommentar!

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.