Keindahan dari proyek yang memiliki nilai Open Source adalah setiap orang bisa berkontribusi, bisa membuat versi yang lebih baiknya lalu merilisnya juga secara open source, dan kita memiliki kebebasan dalam menggunakan proyek tersebut.

Banyak cara untuk bisa berkontribusi ke komunitas open source, salah satunya adalah dengan melakukan lokalisasi. Untuk selengkapnya, bisa dibaca disini.

Tujuan dari tulisan ini semoga kamu bisa mengerti seputar:

  • Kenapa kamu melakukan lokalisasi terhadap suatu project
  • Apa tujuan dari proses lokalisasi tersebut
  • Manfaat dari hasil lokalisasi tersebut
  • Sedikit panduan untuk melakukan lokalisasi yang baik namun belum tentu benar

Sehingga kamu bisa mendapatkan motivasi untuk melakukan lokalisasi, bukan hanya sebatas ngikut buta ataupun karena its easy.

Kenapa melakukan lokalisasi?

Kamu membuat project yang menggunakan bahasa Indonesia, dan project kamu sangat menarik. Meskipun target pasar kamu adalah orang Indonesia, namun kamu memiliki potensi untuk bisa menjaring pasar yang lebih luas.

Misal, orang Malaysia. Bahasa Indonesia dan Melayu relatif mirip, namun tentu sangat beda baik dari sisi esensi ataupun apapun itu. Lalu ada seseorang dari Malaysia yang kebetulan sedikit tau tentang bahasa Indonesia, yang ingin melakukan penerjemahan terhadap project kamu.

Dia ingin melakukan itu agar orang-orang Malaysia–khususnya dia–bisa mengerti & menggunakan juga project kamu. Dan ya, ingin berkontribusi juga mungkin sebagai bentuk terima kasih karena kamu telah membuat project tersebut.

Karena tidak semua orang yang mengerti bahasa Indonesia. Meskipun bahasa Inggris adalah bahasa Internasional, kita pasti setuju bahwa tidak semua orang bisa & mengerti bahasa Inggris. Apalagi bahasa yang bukan bahasa Internasional, bukan?

Dengan melakukan lokalisasi kita membuat project tersebut inklusif, bukan ekslusif hanya untuk orang Indonesia. Siapapun dapat mempelajari, menggunakan, bahkan membuat project tersebut menjadi lebih baik lagi–the beauty of open source–karena mereka bisa mengerti, dari hasil lokalisasi/translasi yang dilakukan.

Tujuan

Secara tidak langsung, kita melakukan ekspansi. Dan setiap orang memiliki kapabilitas masing-masing, mungkin ada yang jago menulis kode dan jago bahasa Inggris, namun tidak handal di storytelling.

Ada yang biasa saja dalam menulis kode, bahasa Inggris biasa saja, namun bagus dalam storytelling. Ada yang biasa aja dalam menulis kode, biasa aja dalam storytelling, namun jago di bahasa Inggris.

Yang artinya apa? Kita bisa saling melengkapi.

Salah satu nilai utama dari open source adalah di kebebasan dalam mempelajari, kamu bisa belajar banyak hal dari open source, karena pada dasarnya project open source sangat bergantung dengan kolaborasi.

Dengan kolaborasi, kamu bisa mendapatkan banyak wawasan, banyak pandangan, dsb. Misal, untuk orang Indonesia kita lebih enjoy dengan storytelling yang sifatnya sedikit bertele-tele, sedangkan untuk orang Francis lebih suka yang to the point, misal.

Tujuan dari lokalisasi singkatnya membuat project tersebut terasa "seperti milik kita" karena menggunakan bahasa yang digunakan oleh kita, dan menggunakan gaya seperti yang kita gunakan juga.

Manfaat

Karena kita merasa "ini seperti kita", tentunya semangat "membuatnya menjadi lebih baik lagi" akan tertanam pada diri kita. Siapa yang tidak ingin sesuatu yang kita anggap milik kita, menjadi lebih baik lagi?

...Meskipun sesuatu tersebut bukan milik kita.

...Hei, bukankah semua yang kita miliki didunia ini sebenarnya bukanlah milik kita, melainkan hanya sebatas titipan?

Oke, lanjut.

Kamu berusaha membuat proyek tersebut bisa menjadi lebih baik lagi. Memiliki dokumentasi yang lebih jelas, memiliki bahasa yang mudah dimengerti, dsb.

Sama rasanya seperti bagaimana kamu membaca buku terjemahan. Bandingkan ketika kamu membaca buku tersebut yang memiliki bahasa yang "translate banget nih" sama yang memang seakan-akan bukan buku terjemahan. Yang penting, esensi dari buku tersebut tidak hilang.

Atau... Jika kamu pernah mendengar "lebah ganteng", "pein akatsuki" dan berbagai nama lainnya yang pastinya tidak akan muncul di Netflix, pasti kamu lebih enjoy dengan hasil terjemahan mereka, daripada yang lain. Yang seakan-akan ketika kamu menonton film yang menggunakan subtitle mereka, film tersebut memang seperti menggunakan bahasa Indonesia.

Panduan

Panduan ini bukanlah yang paling benar, namun semoga baik. Panduan ini berdasarkan pandangan saya sebagai seorang "pencerita" yang kebetulan menulis kode juga.

Karena dokumentasi (dan blog post!) adalah tentang bercerita, tentang bagaimana pengguna bisa menggunakan proyek tersebut dengan mudah, tentang bagaimana agar pengguna memahami maksud & tujuan dari proyek tersebut, dan sebagainya.

Iya, kan?

Hal pertama yang harus dilihat adalah tentang proyek tersebut. Kamu harus paham 0-1 nya proyek tersebut. Jika kamu bisa menjelaskan sesuatu yang rumit menjadi sederhana, berarti kamu sudah memahami hal tersebut.

Hal kedua yang harus dilihat adalah target audience. Siapa sekiranya yang bakal menggunakan proyek tersebut? Dan berapa kira-kira rata-rata umur mereka?

Misal, Spring Framework tentunya kurang cocok menggunakan bahasa yang dipakai anak muda sekitaran 20an, karena rata-rata yang menggunakan Java di level tersebut adalah umuran 28-35 misalnya.

Atau, React. Yang biasa menggunakan React adalah developer-developer hipster yang up-to-date dengan apa yang lagi hits di dunia ini. Yang biasanya, sekitaran umuran 23-30.

Mengenal target audience bukan berarti tidak inklusif, melainkan untuk mencari nilai tengah sehingga kita bisa memilih gaya penulisan & penceritaan yang pas untuk pembaca kita nanti.

Hal ketiga, pembakuan. Seringkali kita baku, misal state (di React) yang terjemahannya "keadaan", kita tulis dengan itu. Padahal, state itu sendiri adalah kata spesial yang digunakan di React yang lebih mengarah ke "data" pada suatu komponen, meskipun memang benar tentang "keadaan".

Yang maksudnya, biarkanlah kita menggunakan kata state daripada keadaan, untuk tidak menghilangkan esensinya. Kecuali untuk kata-kata yang sifatnya bukan "kata khusus" atau "glosarium" seperti component-based di React, yang bisa kita terjemahkan menjadi "berbasis komponen".

Hal keempat, jelaskan dengan jelas. Namun jangan sampai hilangkan esensinya. Ini ada contoh project luar yang menggunakan bahasa Indonesia.

Lihat, bagaimana dia menggunakan kata "File" daripada "Berkas". Karena setiap orang (Indo) sudah terbiasa dengan kata File, jika ternyata tidak, thats my bad.

Dan ini juga

Kenapa dia menggunakan "real-time" daripada "waktu sebenarnya" dan menggunakan "charts" daripada "grafik". Karena kata-kata tersebut sudah familiar, dan, tidak menghilangkan esensi dari project tersebut:

  • Jika real-time diubah menjadi "secara langsung" ataupun "waktu sebenarnya", hal tersebut menjadi ambigu.
  • Jika charts diubah menjadi "grafik", tidak terlalu mengarah ke "chart". Bila menggunakan kata "bagan", mungkin belum terlalu familiar oleh kita.

Dan pastinya, kita harus terus melakukan improvisasi, dan terbuka terhadap feedback dari orang lain. Karena setiap orang memiliki kapabilitas berbeda-beda.

Help me to start?

Oke, anggap kamu tertarik untuk melakukan lokalisasi. Hal pertama yang harus kamu lakukan adalah cari project yang kamu minati, lebih bagus bila project tersebut kamu gunakan juga.

Hal kedua, cari tau apakah project tersebut membutuhkan lokalisasi. Jika tidak–alias belum–mungkin fokus mereka sedang bukan di melakukan "ekspansi".

Hal ketiga, pelajari tentang project tersebut. Apa maksud & tujuannya, baca-baca dokumentasinya, dsb. Jika sudah mengerti, kamu bisa langsung mulai berkontribusi seperti melakukan lokalisasi ke bahasa Indonesia, dan orang Indonesia yang kebetulan memiliki minat sama dengan kamu akan berterima kasih kepadamu.


Proses lokalisasi mungkin terlihat mudah, meskipun tidak terlalu mudah juga. Kita harus menyampaikan apa yang disampaikan oleh orang lain menggunakan bahasa kita, tanpa menghilangkan esensi dari bahasa aslinya.

Juga, kita harus membuat kata-kata yang kita pilih agar mudah dimengerti, tidak ambigu, dan tidak salah arti. Setiap orang pasti pernah berbuat salah, jadi jangan takut untuk membuat kesalahan! Yang penting, ngopiii.

Bukan deng.

Yang penting, kamu memperbaiki kesalahan tersebut (jika memang ada salah) dilain waktu, karena kamu bertanggung jawab terhadap itu. Kamu akan mendapat wawasan baru, ilmu baru, dan pengalaman baru.

Selamat berkontribusi teman-teman! Buatlah project yang ada menjadi lebih baik lagi, dan kabarin aku kalau kamu telah melakukannya, terlebih bila setelah membaca tulisan ini.

Anggap project tersebut adalah milikmu, sehingga kamu bisa lebih semangat, dan menjadikan project tersebut ke versi yang terbaik olehmu.

Terima kasih telah membaca,

From OSS with Love.