SOLUTIONS.translate

Übersetzungen pflegen, ohne den Quelltext anzufassen

Übersetzer arbeiten in einer Weboberfläche. Die Sprachdateien im Projekt bleiben die Quelle.

Mehrsprachigkeit scheitert selten an der Übersetzung. Sie scheitert daran, wo die Texte liegen. In einer Fachanwendung stehen sie als Sprachdateien im Projekt, verteilt über die Anwendung selbst und jede Bibliothek, die eigene Beschriftungen mitbringt. Wer daran arbeiten soll, braucht damit einen Zugang zur Entwicklung. Genau das will niemand: weder die Entwicklung, die Übersetzungen einpflegt, noch die Fachabteilung, die auf einen freien Termin wartet.

Wie die Kette aussieht

Drei Schritte, und nur der mittlere braucht Übersetzer

Der erste und der dritte Schritt laufen in der Entwicklung, meist als Teil der Bereitstellung. Dazwischen ist Zeit.

  1. Einsammeln

    Ein Aufruf geht durch jedes eingetragene Projekt, sucht die Sprachdateien in den dafür benannten Gruppen und faltet sie zu einem Paket je Projekt zusammen. Im selben Lauf entsteht ein Prüfbericht.

    ein Paket je Projekt, dazu der Prüfbericht

  2. Übersetzen

    Übersetzer öffnen die Weboberfläche, wählen ein Projekt und arbeiten am Baum der Schlüssel. Die Suche greift auf den Schlüsselpfad und auf den übersetzten Text in allen Sprachen, man findet eine Stelle also auch dann, wenn man nur den Wortlaut kennt.

    Änderungen liegen je Benutzer vor

  3. Zurückschreiben

    Der Export enthält nur die tatsächlichen Änderungen und die Angaben, die zum Auffinden der Ursprungsdatei nötig sind. Ein zweiter Aufruf trägt sie in die Sprachdateien der Projekte ein, auf Wunsch vorher als reiner Plan ohne Schreibvorgang.

    dieselben Dateien, an derselben Stelle

Der Unterschied im Alltag

Was sich am Ablauf ändert

heute üblich

Übersetzen im Repository

  • Wer übersetzt, braucht einen Zugang, eine Arbeitskopie und einen Zweig.
  • Also übersetzen Entwickler, oder Übersetzer bekommen Rechte, die sie nicht brauchen.
  • Fehlende Sprachen fallen auf, wenn ein Anwender den englischen Text sieht.
  • Derselbe Text steht in drei Bibliotheken unterschiedlich, und niemand merkt es.
  • Ein vergessener Platzhalter fällt zur Laufzeit auf, nicht beim Übersetzen.

mit dem Assistenten

Übersetzen in einer Oberfläche

  • Übersetzer melden sich an und sehen die Projekte ihrer Gruppe.
  • Jeder pflegt die Sprachen, die in seinem Profil stehen.
  • Fehlende Werte, abweichende Platzhalter und Konflikte stehen vor der Arbeit im Bericht.
  • Der Schlüsselbaum zeigt alle Sprachen nebeneinander, samt Herkunft je Eintrag.
  • Zurückgeschrieben wird nur, was wirklich geändert wurde.

Übersetzer sehen alle Sprachen nebeneinander

Links steht der Baum der Schlüssel, gruppiert wie im Projekt. Rechts steht derselbe Schlüssel in jeder Sprache, die das Paket enthält, und die Referenzsprache ist farbig markiert, damit klar ist, wovon übersetzt wird.

Im Beispiel sind es 1.610 Schlüssel in 19 Sprachen. Wer nur eine Sprache pflegt, filtert danach; wer den Zusammenhang braucht, sieht ihn ohne einen zweiten Bildschirm. Eine Entwicklungsumgebung braucht dafür niemand.

Was der Sammler prüft, bevor jemand übersetzt

Der Prüfbericht entsteht im selben Lauf wie das Paket. Er unterscheidet zwischen Fehlern, die den Lauf anhalten, und Warnungen, die ihn nur begleiten. Fünf Arten von Befunden gibt es:

Widersprüchliche Texte

Derselbe Schlüssel trägt an zwei Stellen einen anderen deutschen Text. Der Bericht nennt beide Fundorte samt Datei, damit die Entscheidung fällt, bevor jemand zweimal übersetzt.

Fehlende Sprachwerte

Ein Schlüssel ist in einer Sprache gepflegt und in einer anderen nicht. Statt eines englischen Wortes mitten im deutschen Bildschirm steht die Lücke vorher als Warnung im Bericht.

Abweichende Platzhalter

Der deutsche Text erwartet zwei Einsetzungen, der französische nur eine. Der Bericht führt beide Seiten auf und benennt, was fehlt und was zu viel ist. Das ist der Fehler, der sonst erst beim Anwender auffällt.

Ungleiche Dateien

Zwei Sprachdateien derselben Gruppe enthalten nicht dieselben Schlüssel. Aufgeführt wird beides: was fehlt und was übrig ist.

Unlesbare Datei

Eine Sprachdatei ist kein gültiges JSON mehr. Das ist der einzige Befund, der den Lauf mit einem Fehler beendet, weil ab hier nichts Verlässliches mehr entsteht.

Wer was sehen und ändern darf

Zwei Angaben regeln das, und beide sind fachlich und nicht technisch. Eine Gruppe verbindet Personen mit Projekten: Wer ihr angehört, sieht diese Projekte und sonst keine. Im Profil hinterlegt jeder die Sprachen, die er bearbeitet, sodass die Oberfläche nicht mit fremden Spalten zugestellt ist. Eine übergeordnete Rolle gibt es für Personen, die über alle Projekte hinweg arbeiten.

Änderungen liegen dabei je Benutzer vor, bis sie ausgegeben werden. Zwei Übersetzer an verschiedenen Sprachen kommen sich damit nicht in die Quere, und ein Zwischenstand geht nicht verloren, nur weil jemand anders am selben Projekt arbeitet.

Die Sprachen stehen im Profil, nicht in einer Rechtetabelle

Zu jeder Person steht, ob sie eine Sprache bearbeitet, mehrere ausgewählte oder alle, und von welcher Sprache aus übersetzt wird. Mehr ist es nicht. Die Oberfläche zeigt danach die Spalten, für die jemand zuständig ist, und die Referenz daneben.

Web und mobil aus demselben Bestand

Ein Projekt kann eine Weboberfläche sein, eine mobile Anwendung oder beides. Der Assistent führt diese Fälle nebeneinander, weil derselbe Textschlüssel in beiden vorkommt und dieselbe Übersetzung tragen soll. Übersetzt wird der Schlüssel, nicht die Oberfläche.

Jedes eingesammelte Paket hält außerdem fest, aus welchem Stand jedes Projekt gelesen wurde. Eine Rückfrage zu einem Wortlaut führt damit auf einen konkreten Stand, und ein Export lässt sich später einordnen, auch wenn er ein paar Wochen liegen geblieben ist.

Import Daten Management für die SOLUTIONS Microservices-Architektur

Was der Dienst nicht ist

Es ist keine ständige Verbindung zum Projekt. Einsammeln und Zurückschreiben sind zwei Aufrufe in der Entwicklung, und dazwischen liegt die Arbeit der Übersetzer. Das ist Absicht: Übersetzungen sollen Tage dauern dürfen, ohne dass eine Bereitstellung darauf wartet. Wer eine Änderung sofort im laufenden System braucht, ist hier falsch.

Es ist keine maschinelle Übersetzung. Der Assistent bringt Texte zusammen, prüft sie und schreibt sie zurück. Was dort steht, schreibt ein Mensch.

Und es ersetzt keine Übersetzungsagentur. Es gibt ihr einen Arbeitsplatz, an dem sie ohne Zugang zur Entwicklung arbeiten kann, und der Entwicklung eine Rückgabe, die sie nicht von Hand einpflegen muss.

Weiterlesen

Häufige Fragen

Brauchen Übersetzer einen Zugang zum Quellcode?

Nein, und das ist der Kern. Übersetzer arbeiten ausschließlich in einer Weboberfläche. Wer welche Projekte sieht, regelt eine Gruppe; welche Sprachen jemand bearbeitet, hinterlegt er in seinem Profil. Ein Zugang zum Repository ist an keiner Stelle nötig.

Bleiben die Sprachdateien im Repository die Quelle?

Ja. Der Assistent liest sie ein und schreibt sie zurück, er ersetzt sie nicht. Wer den Dienst abschaltet, hat weiterhin dieselben Dateien im Projekt, an derselben Stelle und im selben Format.

Wie werden mehrere Anwendungen zusammen übersetzt?

Der Sammler liest beliebig viele Projekte ein, jedes mit eigenen Gruppen für Anwendungen und Bibliotheken. Weboberflächen und mobile Anwendungen stehen dabei nebeneinander, weil derselbe Textschlüssel in beiden vorkommen kann.

Was passiert, wenn zwei Stellen denselben Schlüssel unterschiedlich benennen?

Der Sammler meldet es als Konflikt, bevor jemand übersetzt. Für Gruppen, deren Texte absichtlich noch doppelt liegen, lässt sich das auf eine Warnung herabstufen, damit der Lauf nicht an einer bekannten Baustelle scheitert.

Ist das eine ständige Verbindung zum Repository?

Nein, es ist ein Hin und Zurück in Schritten. Einsammeln und Zurückschreiben sind zwei Aufrufe, die in der Entwicklung laufen, üblicherweise als Schritt in der Bereitstellung. Dazwischen liegt die Arbeit der Übersetzer, die Tage dauern darf, ohne etwas zu blockieren.

Lässt sich nachvollziehen, aus welchem Stand eine Übersetzung stammt?

Ja. Jedes eingesammelte Paket hält fest, aus welchem Commit jedes Projekt gelesen wurde. Eine Rückfrage zu einem Text führt damit auf einen konkreten Stand und nicht auf ein Bauchgefühl.

Sprechen Sie mit uns.

Wie dürfen wir Sie kontaktieren?*
Wir melden uns umgehend bei Ihnen.