In het oorspronkelijke topic ging het over het benoemen van objecten, en in de context van die discussie had ik het inderdaad over de domein laag. Niet-domeinspecifieke code is het domein van de ontwikkelaar, en dat is over het algemeen Engels jargon (een Server in plaats van een Bediener, een Queue ipv een Rij, "getX" ipv "geefX" enz.). Ik ben tegen het vertalen van jargon, dus dat argument gaat twee kanten op.
Het is op zichzelf heel typisch dat de gemiddelde programmeur het liefst het woordenboek van de klant zou willen vertalen naar het Engels, terwijl als je de beeldvorming omdraait (alle code in het Nederlands), het te belachelijk voor woorden is dat je "selecteer kolom van rij" zou moeten typen, omdat het evident is dat dit verwarrend, lastig en nutteloos is. Als je gaat nadenken over
waarom je dit vervelend zou vinden, dan zul je waarschijnlijk uitkomen bij dezelfde bezwaren als die ik aanvoer voor het vertalen van het jargon van de klant. De Nederlandse vertaling zou onbekend zijn bij anderen die over het algemeen wel bekend zijn met het Engelse jargon, het Nederlandse woord zou vaak niet exact dezelfde lading dekken, en het is vooral verwarrend.
Waarom het verwarrend heeft voornamelijk te maken met de functie van jargon. Jargon is een soort etiket voor een domeinspecifiek begrip. Het IT-begrip "Server" heeft bijvoorbeeld weinig te maken de Engelse betekenis van het woord, en wordt onder andere gebruikt voor een fysieke machine, een bepaalde plek in een architectuur, of relatie tussen applicaties. Je hebt een bepaald beeld als je "Server" hoort, dat veel verder gaat dan "bediener". Als je het etiket gaat vervangen verlies je snel het raakvlak met dit beeld, en moet of de klant zijn jargon aanpassen, of jij moet op-en-neer vertalen. Precies vanwege dit fenomeen is het ook niet zo erg als er een "mengelmoes" van talen ontstaat in de code. Je bent toch geen Engelse proza aan het schrijven, maar eerder etiketjes aan elkaar aan het hangen, in een soort formele taal die ook door een machine kan worden begrepen.
Het argument dat klantjargon best kan worden vertaald omdat het maar een zeer klein deel van de code zal zijn of omdat het algemeen taalgebruik is vind ik zeker niet op iedere situatie van toepassing. Zeker bij uitgebreidere domeinmodellen en gebruik van moderne frameworks zal het meeste van de code te maken hebben met domein objecten en zijn er allerlei interacties. De afstand tot het oorspronkelijke jargon stapelt zich dan al snel op (wat betekent "company.reimburse(corporation)"?).
Dat Nederlands klantjargon bijna nergens voor zou komen is ook een beeld dat ik absoluut niet deel. Het bedrijf waar ik werk heeft allerlei klanten, groot en klein, in vrijwel iedere bedrijfstak, en Nederlands jargon is eerder regel dan uitzondering. Natuurlijk zijn er veel (grote) bedrijven die internationaal georienteerd zijn, of kun je werken in een industrie met Engels jargon (bijvoorbeeld in een game-ontwikkeling). In dat geval is de beleving van de klant ook zo, en hoef je dus als ontwikkelaar die vertaling niet te doen.
Het argument dat het "ook door een Indiër moet kunnen worden onderhouden" zal in de meeste gevallen niet echt valide zijn. Als je dat écht wilt dan moet je ook al je functionele beschrijvingen, technische documentatie en bug-registraties in het Engels bijhouden, en alle andere artifacts die voor onderhoud noodzakelijk zijn. Dat soort dingen is dan ineens wél Nederlands, vreemd genoeg omdat het anders moeilijk communiceert of meer tijd kost.
Wat aangehaald wordt is dat Engels dé taal is van ontwikkelaars en dat documentatie van populaire API's niet i18n zou zijn. Nu is er is bijvoorbeeld de
MSDN Entwicklerbibliothek en de
Japanse JavaDoc, dus er zijn wel alternatieven, maar het is natuurlijk waar dat goed Engels kunnen lezen een must is voor iedere serieuze ontwikkelaar. Er zijn echter ook genoeg "minder serieuze ontwikkelaars" (om het rooskleurig uit te drukken). Alhoewel ik een gebrek aan Engelse taalkennis absoluut niet als argument wil aanvoeren om alles maar in het Nederlands te doen (gebrek aan kennis vind ik zelden een geldig argument), zou ik zeker niet aannemen dat iedere ontwikkelaar perfect Engels beheerst. De meeste mensen zijn niet afgestudeerd op een omgeving waar "alle dictaten in het engels zijn", of waar op een andere manier dit soort vaardigheden wordt afgedwongen.
[
Voor 16% gewijzigd door
misfire op 22-11-2005 21:53
]