Mein Übersetzer

Dieser Beitrag wird jetzt etwas technisch, aber ich bin schließlich Informatikstudent und die machen nunmal manchmal komische Sachen, wie ich letzten Freitag.

Nachdem ich also ziemlich viel arabisch nachholen muss und in den Büchern andauernd auf Wörter stoße, die ich entweder nicht kenne oder nicht aussprechen kann und damit auch nicht andauernd meinen Roommate nerven möchte, brauche ich also ein Wörterbuch, am liebsten ein elektronisches. Natürlich gibts nichts für Linux, aber die Software für Windows ist auch nicht besser, denn irgendwie verkackt das Ding die Zeichensätze und man kanns praktisch nicht lesen.
Hagen denkt sich nun, das Ding kommt doch mit einer Datenbank, also muss man doch irgendwie die Daten da rausholen können. Das ging sogar relativ fix, zumindest an die englischen Wörter komm ich. Nur die arabische Übersetzung kann ich nicht lesen. Anfangs vermute ich, die benutzen einfach nen total verqueren Zeichensatz, aber etwas später stellt sich raus: die wollen nicht, dass man so einfach an die Wörterbuchdaten kommt und verschlüsseln die Übersetzung. :D Verschlüsselung das mag ich ja. Damit war der Vormittag zwar gelaufen, aber ich hatte ja eh frei. Also meine Reverse-Engineering-Tools ausgepackt, hat ne Weile gedauert bis ich im Programm die richtige Stelle gefunden hab, aber dann gings ab.

Hier also wie der Algorithmus funktioniert:

  • Jeder Wörterbucheintrag besteht aus ID, Original und Übersetzung. Zum Entschlüsseln braucht man nun einen Schlüssel der sich aus der ID berechnet: Schlüssel = round(2.10897 * ID + 36603-25 + ID/3.68)
  • Mit dem Schlüssel wird dann ein Pseudo-Blockchiffre (auf je 2 Bytes) initialisiert und mit einem etwas komplizierterem Algorightmus nun Byte für Byte der Originaltext hergestellt

Also schnell ein Programm geschrieben, das mir die Datenbank entschlüsselt (und von windows-1256 nach UTF-8 konvertiert) und auf gings mein eigenes Wörterbuchprogramm zu schreiben. Musste natürlich mit GUI sein, weil Konsole bei arabisch einfach mal scheiße aussieht. Der Aufwand für die GUI hat sich gelohnt, mein Wörterbuch ist toll und hilfreich. Das beste ist: Wenn ich ein Wort eingebe, seh ich nicht nur die Übersetzung sondern auch das Wort mit Vokalzeichen, damit ich weiß wie es ausgesprochen wird.

Update: Programm und Quelltext sind nun online. Zum Ausführen wird pygtk benötigt. (PyGTK für Windows) Einfach dict.py ausführen und das Wörterbuch startet.

11 Reaktionen zu “Mein Übersetzer”

  1. Gabriela

    Cool gemacht, bist halt ein schlaues Kerlchen!

  2. Wululululu

    Nice One! :D
    Allerdings kannste froh sein, dass du grad nicht in Deutschland bist. Du und deine pöhsen Hackertools. :D

  3. Marzahn

    Wir haben nur Bahnhof verstanden, aber bewundern die Ergebnisse trotzdem.
    “Scheiße” wird aber groß geschrieben, weil man sie anfassen kann.

  4. Hagen

    Aber in dem Fall handelt es sich um ein Adjektiv :P Ich schreib das klein.

  5. Philipp

    Freak! :-P

    (Für alle die mich nicht kennen: Das ist Anerkennung!)

  6. Die Helmsdorfer

    Vielleicht solltest Du ein paar Schnäpse trinken, bevor Du arabisch sprichst,
    da kannst Du besser “lallen”.

  7. Hagen

    Das muss ich ausprobieren. Aber ihr wisst ja, kein Alkohol on campus.
    Ist aber trotzdem immer sehr lustig hier :D

  8. Blitz

    Nice one there –
    aber wir dürfen wenigstens on-campus trinken – zumindestens schenkt die Campus Bar Bier und andere alkoholika aus – ich glaub wir dürfen den auch da trinken :)

  9. aki

    nicht mal verschlüsseltes arabisch ist vor dir sicher.

  10. Zeljko

    KOMM SCHNELL WIEDER DER BUGS MACHT NUR SCHEIxE :-ä)

  11. Zeljko

    viel spasssss und einen gesunden Code

Einen Kommentar schreiben