27. März 2008

Programmiert ihr deutsch?

Ein kurzes Fragespiel zwischendurch, weil ich in letzter Zeit mehrmals drüber gestolpert bin und gern mal mehrere Meinungen dazu hören würde: In welcher Sprache programmiert ihr? Alles straight english oder habt ihr Projekte, in denen ihr mit deutschen Begriffen arbeitet?

Ich selbst verwende nur englisch, habe in letzter Zeit aber wie gesagt ab und zu gesehen, dass Leute auch durchaus deutsch benutzen, was man natürlich auch logisch begründen kann: Liegt dem Projekt eine komplizierte Domain zu Grunde, so lassen sich Fachlichkeiten besser und eindeutiger in der Sprache beschreiben, die man auch mit dem Kunden verwendet. Ein weiterer Unterschied liegt in der Formulierung der Testfälle/Spezifikationen: Zumindest mir geht es so, dass sich die Anforderungen in deutsch besser beschreiben lassen, als in englisch – klar, ein unnötiger Abstraktionsschritt weniger.

Wie haltet ihr das und was sind eure Gründe dafür? Bei mir ist es bisher vielmehr ein rein ästhetischer Grund, warum ich vom Sprachmix abgesehen habe und mich würde gern mal eure Meinung dazu interessieren.

Technorati Tags: ,

18 Kommentare

  1. Ein Beispiel:

    getBestellnummerFromBestellungForLieferantGreaterThanEqualToStatusCode()

    Mal davon abgesehen, dass der Methodenname der Knüller is, wird hier sprachlich auch gut gemixt. Meine Meinung dazu ist: solange es jeder beteiligte Entwickler versteht, ist das in Ordnung. Denn gerade bei Fachbegriffen, welche für bestimmte Methoden verwendet werden, hat man nicht immer die Lust, erst eine Übersetzung nachzuschlagen. Kommt halt drauf an, wo man arbeitet.
    Grundsätzlich finde ich aber, dass man bei englisch bleiben sollte. Die Spezifikationen von JavaBeans geben z.B. vor, dass Getter immer mit getXXX heißen. Das machts schonmal schwer, vollständig bei deutsch zu bleiben. Bei anderen Programmiersprachen sieht das vielleicht anders aus. Dennoch gibts in jeder Sprache englische Schlüsselwörter und um es einheitlich zu halten, kann man diese Gegebenheit auch übernehmen.
    So will ich mir es zumindest angewöhnen.
    Problem ist halt, wie schon erwähnt, dass man ab und zu erst nachschauen muss, was ein bestimmter Begriff auf englisch heißt, aber wenn man bedenkt, dass man (zumindest ich) auch gern mal wesentlich länger überlegt, wie ich eine Methode oder Variable überhaupt heißen soll, ist das wohl vertretbar.

  2. Ich habe persönlich auch noch keine einheitliche Regelung gefunden. Alle Variablen und Funktionen versuche ich aber so gut es geht in Englisch in bezeichnen. Kommentare im Quellcode schreibe ich aber in deutscher Sprache, damit ich sowohl beim Schreiben als auch beim Lesen des Quellcodes nicht immer erst umdenken muss.

    Ich glaube aber auch, dass es immer ganz auf das Einsatzgebiet und der damit eventuell beteiligten Entwickler drauf ankommt, welche Sprache verwendet wird.

  3. Immer und voll und ganz in Englisch. Erstens bin ich anglophil, zweitens hab ich’s nie anders gemacht, und drittens sass ich an einigen Projekten, wo auch nicht-deutsche Entwickler mitwirkten. Zudem trainiert man damit ganz gut die Sprache, gerade weil man hin und wieder mal was nachschlagen muss.

  4. 27. März 2008 um 20:18

    Thomas koll schreibt:

    nur english, alles andere nehm ich persönlich nicht ernst. Die meisten dokumentationen sind ja auch nur englisch

  5. Also ich halte mich eigentlich weitestgehend an englisch, da es oft auch einfach kürzer ist. Außerdem sind fast alle IT-Begriffe eh englisch. Und sämtliche Dokus auch. Wenn ich über meine Arbeit blogge, tue ich das mittlerweile auch auf englisch, da es mir einfach leichter fällt in dem ganzen englischen Umfeld, in dem man sich bewegt. Auf deutsch umdenken fiel mir echt schwieriger.

  6. Alles in englisch. Kommentare, Bezeichner, auch in der Datenbank (Tabellen und Felder).

    Oft schaue ich auch ins Wörterbuch, wenn ich einen griffigen englischen Bezeichner brauche. Das führt dazu, dass man sich auch mehr Gedanken über die Namen von Methoden, Objekten etc. macht, was der Verständlichkeit sehr zugute kommt. Wie heißt es so schön: “There are only two hard things in Computer Science: Cache invalidation and naming things.”

    In Rails sind englische Bezeichner wegen des Inflectors auch sehr empfehlenswert, weil man dann keine Ausnahmen für die Plural/Singular-Bildung definieren muss.

    Ansonsten ist es bei mir auch sehr der ästhetische Anspruch. Früher habe ich oft einen lustigen Sprachmix betrieben, den ich heute überhaupt nicht mehr gut heißen kann.

  7. 27. März 2008 um 22:37

    Caspar schreibt:

    Ich programmiere Suheli und schreibe meine Kommentare auf Esperanto

  8. Auch nur Englisch.

  9. English all the way. It’s too much of a hassle to try to think about good translations of lots of things and I find it only complicates pluralization. Bücher, Kunden, one ends on ‘er’ the other on ‘en’ books, or customers, is just easier. And if I want to share code or submit a diff-patch it’s usually no use trying to submit it in German.

  10. Gut, dann widerspreche ich mal, sonst sieht das hier so öde aus. ;-)

    Wenn ich ein kleines Webdings für einen deutschsprachigen Kunden schreibe, dann bekommt der seine Modelle und Controller auch in Deutsch, mal eben eine Singular-Plural-Regel hinzufügen sehe ich überhaupt nicht als Problem an.

    Ich wüsste auch nicht, warum ein deutscher Kunde, der eine Webanwendung für sein spezielles Geschäft mit “Tankstellen” und “Tintenkillern” bekommt, der sprachlichen Ästhetik im Quellcode wegen mit Modell und Controller “Filling Station” und “Ink Eraser” leben sollte. ;-)

    Ist es aber was Internationales oder Kundenunabhängiges, nehme ich auch Englisch.

  11. Ich habe in Englisch angefangen. Dann bin ich irgendwie über Java, Cocoon und alles ist möglich und international mal auf Deutsch gekommen. Es war wirklich alles möglich. Auch Funktionen mit Ä und weiteren Sachen. Aber manchmal auch umständlich.

    Was mich an Java jedoch nervte: Es gibt keine gute (kurze) Übersetzung für „getXyz“ und „setXyz“. Ruby macht die Sache deutlich Einfacher. Immerhin: Mit deutschen Funktionen kommt man nie mit der Sprache selbst oder Bibliotheken in Konflikt.

    Seitdem ich im Team arbeite, programmiere ich nur auf Englisch. Lieber die Zeit sparen, die es umständlich macht und dafür investieren in einem Wörterbuch die passenden Begriffe zu suchen. Bei Susuh – http://www.susuh.de – programmieren wir nur in Englisch – weder mein Polnisch, noch das Deutsch der Entwickler kann sich sehen lassen ;)

    Wenn es ein rein deutschsprachiges Team ist, sind deutsche Kommentare sehr hilfreich.

  12. ich programmier op kölsch, hier ein auszug aus meiner neuen coolen kölsch 0.2 SozialKalender InternetzWeichware:

    class WatWellsteMaache

    def initialize(opts)
    self.ical = et_kütt_wie_et_kütt(opts) if et_hätt_noch_immer_joot_jejange

    self.ical_contacts << drinkste_eene_met? if opts[:nette_taant]

    case opts[:lecker_kölsch]
    when :kenne_mer_nit
    dann_her_damet
    when :bruche_mer_net
    dann_foo_damet
    else fottdomet end

    end

  13. @Schorsch Von dir hab ich nichts anderes erwartet ;)

    Wenn ich mich mit deutsch anfreunden könnte, dann würde ich es denke ich am ehesten wie Ralf sehen.

    Vielen Dank für eure Antworten :)

  14. Ich finde auch, dass bei ernsthaften Projekten in jedem Fall Englisch als “Programmiersprache” zum Einsatz kommen sollte.

    Nee im Ernst. Gerade bei größeren Projekten kann man nie bis ins letzte Detail voraussagen wohin es mal navigieren wird.

    Vielleicht möchte man es irgendwann mal der weltweiten Gemeinschaft unter einer OpenSource-Lizenz zur Verfügung stellen. Und dann? Hmmm … Alles nochmal anpassen?

    Gruß,
    André

  15. Wir hatten gerade so eine Diskussion in einem Projekt. Bezeichner von Klassen, Methoden etc. auf Englisch, klar. Dann aber auch Kommentare konsistent auf Englisch, oder dürfen die dann auf Deutsch sein?

  16. 24. April 2008 um 18:52

    Peter schreibt:

    Deutsch, und zwar aus zwei Gründen: ich werkele in SAP herum. Die SAP-Datenbanktabellen haben zu 98% deutsche Feldnamen. Dann wäre es etwas blöd, wenn das Feld Geschäftsjahr in allen SAP-Tabellen GJAHR heißt und ich meine Variablen dann FYEAR oder so nennen würde. Dann arbeite ich für Kunden, die eine durchgehend deutsche Doku wünschen.

    SAP hat sich mit den deutschen Feldnamen in den Datanbanktabellen selbst etwas ins Knie geschossen, ganz früher hat wahrscheinlich niemand damit gerechnet, daß SAP-Produkte mal international eingesetzt werden. Heute gibt es mit Sicherheit deutlich mehr nicht-deutsche SAP-Anwender, da sind die deutschen Feldnamen echt blöd, das ist aber nicht mehr zu ändern. Dieses Beispiel ist übrigens ein guter Grund dafür, bei neuen Projekten, bei denen auch nur der Hauch einer Chance besteht, daß es mal international werden könnte, lieber doch auf englisch zu setzen!

  17. Ich hab es nur angefangen, Deutsch zu lernen, finde ich doch ganz nuetzlich. Die keywords und libraries fast aller Programmiersprache sind auf English gebauen, also wenn man deutsche identifiers benuetzt, gibt es kein Chance, namespace pollution zu treffen.

  18. [...] drin und das ganze Script ist zum besseren Verständnis in kleine Abschnitte unterteilt. Und Selbstverständlich sind die Kommentare auf Englisch [...]

Du kannst die Kommentare zu diesen Eintrag durch den RSS-Feed verfolgen.
Um einen Trackback zu setzen, benutze bitte diese Trackback-URL.

Kommentar schreiben

Du bist momentan nicht eingeloggt. Login »