Eşleştirme mi Haritalama mı? Not mu Dip Not mu? Bir “Chicken Translation” Hikayesi Daha

Sağlıklı düşünmenin göstergesi dili sağlıklı kulanmaktır. Kafası karışık insanların dili kullanma şekilleri, kelimeleri olgulara karşı getirmeleri, bunlar üzerine argüman bina etmeleri problemlidir. Bu tür kafa karışıklıklarının bir kısmı da, teknolojiyi ve ilgili terimleri ve ifadeleri, yabancı dilden, özellikle de İngilizce’den devşirirken takındığımız tutumla ilgili. Bu günlükte olgunun ya da sürecin ruhuna uymayan ve bu yüzden iğreti duran çevirilerden daha önce de bahsetmiştim. (Örneğin “object-oriented” kavramının “nesne-yönelimli” ya da daha da yanlış olarak “nesne-tabanlı” olarak çevrilmesi ile ilgili bu yazıya bakılabilir.)

Bu yazıda bu tip çevirilerden ikisine dikkat çekmek istiyorum: İlki “annotation” kelimesinin “dip not” olarak çevrilmesi. “Annotation” Java’ya 5 versiyonuyla gelen özelliklerden birisi ve “annotation”ları, bazen kod üretme, bazen de konfigürasyon amaçlı olarak uzun süredir kullanmaktayız. Pek çok Javacı, popüler bir Java bileşeni olan JPA ayarlarını, genelde XML yerine annotation denen elemanlarla yapmayı tercih eder. Bu annotationlar başlarında “@” işaretiyle kullanılır ve değişkenler gibi, nitelenen diğer dil elemanlarının hemen öncesine, ya da geleneksel olarak bir üst satırına yerleştirilir. Yani

 

@Entity(name="Person")
@Table(name="Persons")
public class Person{

   @Id
   private String tckn;
   ...
}

örneğinde olduğu gibi. Çok sıklıkla, “annotation” kelimesinin dilimize, özellikle JPA ile ilgili yazılarda “dip not” diye çevrildiğini görüyorum. İki problem var burada: İlki “annotation”, bir yazıya yapılan herhangi bir nottur. Bir yazıda bazı yerleri sarı kalemle işaretlemek ya da çizmek bile “annotation”dur İngilizce’de, yani not alma, notlandırma, işaretleme vb. kelimelerle dilimize çevrilecek bir harekettir. Her not bu anlamda bir dipnot değildir, olması da gerekmez. İkincisi ve ironik olanı, JPA’da olup da “dip not” olarak çevrilen bu “annotation”lar, yukarıdaki örnekten de görüleceği üzere “dip”te değil, aksine nitelediği dil elemanının öncesinde/üstünde yazılır :). Bu Java’nın bir kuralıdır.

Çeviri konusunda esas “chicken translation” örneği bu değil. Esas bomba, yine JPA ile ilgili olarak, uygulamadaki nesnelerin ilişkisel veri tabanındaki tablolar, nesnelerin değişkenlerinin ise tablolardaki kolonlar ile “eşleştirilmesi”nin dilimize “haritalama” olarak çevrilmesi. Sebebi, bu kavramın İngilizcesi olan “object-relational mapping” tamlamasında “map” kelimesinin geçiyor olması. Eeee, tabi taa İngilizce öğrendiğimiz ilk yıldan bu yana biliyoruz, “map” “harita” demek. Dolayısıyla bu tamlama da “nesne-ilişkisel haritalama” olarak çevrilmelidir. Halbuki işin ruhu, yapılan işin mahiyeti ele alındığında ki bunu ayrıntılı olarak bu yazıda açıkladım, olan biten şey, iki farklı ortamdaki yazılım elemanının birbiriyle eşleştirimesi ya da birbirlerine karşı getirilmesidir. Bu durum bir maçta, savunan takımın oyuncularının, hücum eden takımın oyuncularını, savunma amacıyla “alması” ya da onlarla “eşleşmesi”nden başka birşey değildir. JPA’daki bu “eşleştirme” işlemi o kadar da işin merkezindedir ki, anlamak için öyle çok da uzman olmaya gerek yoktur. Örneğin, 5 günlük bir JPA ya da Hibernate eğitiminin ilk bir ya da iki saatinde bu eşleştirmeyi katılımcılara anlatmış ve basit de olsa bir örneğini vermiş oluyorum ben. Ondan sonra eğitim yoğun olarak bu eşleştirmeyle geçiyor. Yani buradaki durum, zamanında, kendilerine saygım sonsuz olmakla birlikte, “object-oriented” terimini dilimize, bu kavramın neyi ifade ettiğini, pratikte dillerde nasıl kullanıldığını tamamen bilmeden, iyi niyetle bir sözlük çevirisi yapanların halinden daha berbat. JPA ya da bunun en yaygın ürünü olan Hibernate’i, üniversitede bir Bilgisayar Mühendisliği 2. yıl öğrencisi biliyor, eşleştirme işini pratik olarak da bizzat yapıyor. Dolayısıyla aklım, yapılanın tabiatının “bir karşı getirme” ya da “eşleştirme” olduğunu bilmemize rağmen, neden sözlükte “map” kelimesinin ilk anlamını alıp, “haritalama” diyerek yeni bir “chicken translation” komedisi yaratıyoruza takılmadan edemiyor. Halbuki, biraz İngilizce bilen, “map” kelimesinin farklı bağlamlarda kullanıldığını ve bilmem kaç yüzyıl önce etimolojik olarak harita kavramından çıksa bile artık genel olarak İngilizce’de bir karşı getirme, bir eşleştirme anlamına geldiğini bilir. Örneğin, matematik’teki fonksiyonlar bir “mapping” yani karşı getirme ya da eşleştirmedir.

Gün geçmiyor ki yenilerde Facebook vb. yerlerde, eskilerde forum vb. paylaşım ortamlarında, “eğitimsiz” olduğunu düşündüğümüz özellikle esnaf kesiminden olan insanların yanlış ya da komik İngilizce tercümeleri yayınlanmasın. Peki biz “eğitimli”ler niye aynı şeyi yapıyoruz? “Batı’dan kopyalamak” acaba eğitimle falan ilgisi olmayan, tamamen kültürel bir öğe olarak taa zihnimizin derinliklerine işlemiş bir hastalık mı yoksa?

Merak ediyorum, “map” kelimesini “harita” diye çevirenler Windows’daki “Map Network Drive”ı nasıl çeviriyorlar? Ya da “Director or his/her proxy must be present in the meeting” kelimesindeki “proxy”i de bir ağ (network) elemanı olarak mı düşünüyorlar?

Her çeviri bir yorumdur. Her yorum da kaçınılmaz olarak %100 nesnel olamaz, bunun farkındayım. Ama yukarıdaki örneklerin bununla yakından uzaktan alakası yok malesef.

Bu yazı toplam 1041 defa görüntülenmiştir.