Di mana terjemahannya?

Setelah menjelaskan bahwa sebagian besar penduduk dunia tidak berbicara bahasa Inggris, lalu menjelaskan cara berkontribusi pada distribusi Fedora, mari kita lihat di mana terjemahan perangkat lunak tersebut berada.

Terjemahan merupakan bagian integral dari kode

Terjemahan adalah berkas yang sepenuhnya menjadi bagian dari kode sumber yang diperlukan untuk menjalankan program. Format berkas yang berisi terjemahan bervariasi tergantung pada alat yang digunakan oleh tim pengembang. Untuk mendapatkan gambaran tentang format berkas utama, daftar format yang didukung oleh platform terjemahan Weblate cukup menarik. Secara umum, format Gettext paling sering digunakan untuk perangkat lunak yang dikompilasi/desktop, sedangkan format Json digunakan untuk perangkat lunak web. Setiap berkas memiliki kelebihan dan kekurangan masing-masing, hal ini masuk dalam ranah internasionalisasi perangkat lunak, yang sering disingkat sebagai i18n.

Dampak pada pekerjaan terjemahan

Karena terjemahan merupakan bagian dari kode sumber, para penerjemah harus menyerahkan hasil pekerjaan mereka tepat waktu agar setiap perubahan yang dibuat pada versi saat ini dapat diterjemahkan. Perubahan sekecil apa pun, bahkan satu huruf atau satu karakter, mengharuskan setiap terjemahan diperiksa untuk mengetahui apakah perubahan tersebut memengaruhi makna atau struktur kalimat, sehingga perubahan tersebut memakan banyak biaya bagi para penerjemah.

Sering kali, dan ini wajar, para pengembang tidak tahu cara menyesuaikan terjemahan saat mereka melakukan perubahan. Oleh karena itu, diperlukan penerjemah yang mengikuti perkembangan proyek dari dekat agar dapat responsif, dan untuk menghindari versi baru proyek sampai ke pengguna dengan untaian teks yang ditampilkan dalam bahasa Inggris di tengah-tengah perangkat lunak yang sudah sebagian diterjemahkan.

Di sinilah masalahnya menjadi rumit, setidaknya ada ribuan, bahkan mungkin ratusan ribu proyek perangkat lunak bebas. Ada ribuan bahasa, dapatkah kita memiliki cukup banyak penerjemah di setiap bahasa untuk mengikuti semua proyek ini? Tentu saja tidak.

Proses integrasi terjemahan

Sekarang mari kita ambil beberapa contoh proyek untuk melihat bagaimana interaksi antara proses pengembangan perangkat lunak dan penerjemahan diatur.

Bisa diterjemahkan… tetapi kuno!

Jitsi Meet adalah perangkat lunak konferensi video daring. Dalam kode sumbernya, folder lang berisi berkas JSON untuk setiap bahasa.

Setiap terjemahan harus melalui proses permintaan integrasi, yang rumit dan memakan waktu.

Dalam beberapa menit, saya menemukan contoh kasus ekstrem, permintaan yang telah menunggu lebih dari 8 bulan. Namun, dalam waktu itu, berkas yang berisi string yang akan diterjemahkan dari perangkat lunak telah berubah 19 kali dan telah ada 8 versi yang diterbitkan!

Tidak ada informasi tentang cara menerjemahkan di readme maupun di panduan kontribusi.

Komunitas linguistik dengan banyak anggota mungkin dapat meluangkan waktu yang diperlukan berkat jumlah kontributornya (itu pun belum tentu…), sementara komunitas lain akan diabaikan dan perangkat lunak hanya akan menawarkan terjemahan terbaru untuk bahasa-bahasa yang sudah terlalu banyak diwakili. Untuk mengikuti perubahannya, Anda mungkin harus berlangganan perubahan pada proyek GitHub.

Efisiensi cara kerja ini patut dipertanyakan. Meskipun kita bisa memuji upaya untuk memungkinkan penerjemahan perangkat lunak, saya menyayangkan kurangnya perhatian terhadap jenis kontribusi ini. Saya belum memulai diskusi dengan tim Jitsi Meet, padahal dulu tidak selalu seperti ini, sebuah platform terjemahan pernah digunakan di masa lalu.

Jelas… tapi sangat spesifik untuk GNOME

Proyek GNOME menggunakan proses serupa, tetapi difokuskan pada kebutuhan tim penerjemah. Untuk mengirimkan terjemahan ke perangkat lunak final, wajib menggunakan git. Namun, sebuah alat tersedia untuk para penerjemah, yang memungkinkan mereka mengetahui secara tepat apa yang perlu diterjemahkan, dan untuk berkolaborasi. Selain itu, banyak perangkat lunak dalam ekosistem GNOME mengikuti ritme rilis versi baru dan proses kerja yang sama. Jadi, prosesnya memang tidak sempurna dan manual, tetapi peralatannya dapat mengurangi beban manajemen bagi para kontributor secara signifikan.

Efisien… tapi sangat spesifik untuk Mozilla

Proyek Mozilla menganggap terjemahan sebagai hal penting dalam kegiatannya. Jika Anda ingin berkontribusi, Anda dapat mengunjungi platform terjemahan Pontoon (proyek ini diselenggarakan dalam tim penerjemahan).

Mengetahui apa yang dapat diterjemahkan itu mudah, dan menemukan kontak untuk menjawab pertanyaan juga mudah.

Proyek ini sangat besar, Anda mungkin akan mengalami beberapa kesulitan dalam memahami tahapan antara platform terjemahan dan rilis perangkat lunak, tetapi apakah itu masalah besar? Sistem ini berfungsi dengan baik, tanggal rilis perangkat lunak sudah diketahui, dan prioritas telah ditetapkan. Anda akan menghabiskan sedikit waktu untuk membentuk tim dan proses penyuntingan, semua alat yang digunakan spesifik untuk proyek Mozilla, tetapi secara keseluruhan, sistem ini cukup efisien.

Otomatis dan generik, modernitas yang membebaskan

Sangat mungkin untuk menyediakan alat khusus untuk kegiatan terjemahan, yang memungkinkan pengguna untuk berlangganan jika ada perubahan, bekerja secara kolaboratif, dan mendeteksi adanya ketidaksesuaian.

Dan, bonus utama, memiliki sinkronisasi otomatis dengan kode sumber perangkat lunak.

Contoh yang sangat baik: platform penerjemahan Weblate menunjukkan contoh yang patut ditiru, semuanya terhubung dan otomatis. Perubahan terjemahan (https://github.com/WeblateOrg/weblate/commits/main/?author=weblate) sangat banyak, dan perubahan yang memengaruhi terjemahan (https://hosted.weblate.org/changes/browse/weblate/?action=13&action=30&user=&period=) mudah ditemukan.

Banyak proyek menggunakan Weblate, dan ini adalah pilihan yang sebaiknya Anda pilih, terlepas dari konteks Anda. Dalam ekosistem platform terjemahan, Weblate telah menjadi sesederhana dan seefisien Git dalam pengelolaan kode sumber untuk pengembangan perangkat lunak.

Jika proyek Anda menyediakan platform ini, maka Anda memberikan kekuatan untuk berkontribusi dalam bidang bahasa. Dengan merawat hubungan dengan komunitas yang luas ini, Anda memiliki peluang besar untuk mendapatkan alat yang diterjemahkan ke dalam banyak bahasa.

Kesimpulan

Keterkaitan antara aspek teknis proyek dan terjemahan sangat penting untuk efisiensi proses terjemahan.

Alat-alat yang dilengkapi dengan fitur-fitur menarik dan otomatisasi tersedia untuk memudahkan kehidupan semua orang.

Hal ini sepenuhnya tergantung pada tim pengembangan untuk mengadopsinya agar perangkat lunak terus mengandung lebih banyak terjemahan dan semakin banyak bahasa yang didukung.

Tapi apa yang terjadi jika proyek tidak membuat versi baru? Bagaimana cara mengatasi proyek yang tidak aktif? Hal ini akan menjadi topik artikel mendatang.

Last build: 2025-10-29 02:07:21