Saya menemukan sejumlah kesalahan ejaan yang sangat mengganggu yang saya lihat setiap hari di basis kode kami, yang darinya saya akan mereproduksi contoh yang sangat singkat namun representatif:
ArgumnetCount
Timeount
Gor message from queue
Sayangnya ini tidak terbatas pada satu orang saja. Ada banyak penutur bahasa Inggris non-pribumi di tim kami yang berkontribusi terhadap hal itu, namun saya juga dapat menunjukkan beberapa kesalahan ejaan terburuk untuk Arsitek Perangkat Lunak kami yang berkebangsaan Amerika, lahir dan besar.
Ini juga dapat ditemukan bahkan dalam email, presentasi, dokumen, apa pun informasi tertulis yang kita miliki di perusahaan pengembang perangkat lunak.
Saya ingin tahu bagaimana mencari tahu apakah ini masalah serius atau tidak?
Saya selalu menghadapi kesalahan pengejaan ini dengan prihatin, tetapi kebijakan saya sendiri, pribadi, dan resmi adalah bahwa kita tidak dibayar untuk mengeja dengan benar, kita dibayar untuk menyelesaikan sesuatu, jadi di dalam perusahaan saya tidak pernah benar-benar mengkritik siapa pun tentang hal itu. Tetapi saya telah mengangkat masalah ini dengan beberapa teman dekat saya, dan tidak pernah menyelesaikannya untuk selamanya.
sumber
ArgumentCount
atauArgumnetCount
.Jawaban:
Kesalahan pengejaan dapat berarti satu dari dua hal:
Entah itu pertanda yang cukup buruk, karena itu berarti orang tersebut tidak memiliki keterbacaan, pemeliharaan dan keanggunan tinggi pada daftar prioritas mereka; jika penyebabnya adalah kurangnya kemahiran bahasa Inggris, itu juga berarti bahwa orang tersebut tidak memiliki dua keterampilan penting - komunikasi bahasa Inggris tertulis, dan perasaan umum untuk bahasa (jika Anda tidak dapat mengekspresikan pikiran Anda dengan jelas dalam bahasa Inggris, kemungkinan Anda bisa ' t mengekspresikannya dengan baik dalam bahasa pemrograman juga).
Tetapi mengapa sebenarnya kesalahan pengejaan itu buruk, semuanya sama? Lagipula, kodenya berfungsi, dan kompiler sama sekali tidak peduli bagaimana Anda memberi nama pengidentifikasi Anda, asalkan tidak melanggar aturan sintaksis. Alasannya adalah bahwa kita menulis kode tidak hanya untuk komputer, tetapi juga dan yang terutama, untuk manusia. Jika bukan itu masalahnya, kami masih akan menggunakan perakitan. Kode sumber ditulis sekali, tetapi dibaca ratusan kali selama siklus hidupnya. Kesalahan pengejaan membuat membaca dan memahami kode sumber lebih sulit - kesalahan ringan menyebabkan pembaca tersandung dalam sepersekian detik, banyak dari mereka dapat menyebabkan penundaan yang cukup; kesalahan yang sangat buruk dapat membuat kode sumber benar-benar tidak dapat dibaca. Ada masalah lain, yaitu sebagian besar kode yang Anda tulis akan dirujuk oleh kode lain, dan kode itu lebih sering ditulis oleh orang lain. Jika Anda salah mengeja pengidentifikasi Anda, orang lain harus mengingat (atau mencari) tidak hanya nama itu, tetapi juga bagaimana tepatnya itu salah eja. Ini membutuhkan waktu dan memutus aliran pemrograman; dan karena sebagian besar kode disentuh lebih dari satu kali dalam pemeliharaan, setiap kesalahan ejaan menyebabkan banyak gangguan.
Pertimbangkan bagaimana waktu pengembang sama dengan gaji sama dengan pengeluaran, saya pikir itu harus cukup mudah untuk membuat kasus ini; Bagaimanapun, memutus aliran dan kembali ke dalamnya dapat memakan waktu hingga 15 menit. Dengan cara ini, kesalahan pengejaan yang parah dapat dengan mudah menghabiskan biaya beberapa ratus dolar untuk pengembangan dan pemeliharaan lebih lanjut (tetapi itu adalah biaya tidak langsung, tidak langsung terlihat dalam perkiraan dan evaluasi, sehingga sering diabaikan oleh manajemen).
sumber
thisVaraible
danthisVariable
terlihat hampir sama dan 'secara teknis' benar.Saya benar-benar ragu apakah "Timeount" adalah masalah tidak menjadi penutur asli. Orang membuat banyak kesalahan ketik dalam bahasa pertama mereka. Saya tidak akan memenuhi syarat contoh-contoh khusus ini sebagai "Engrish".
Karena itu, saya mengerti bahwa ini bukan tentang contoh-contoh khusus ini. Saya setuju dengan Anda pada prinsipnya. Saya telah menemukan masalah aktual yang disebabkan oleh jenis barang ini ("jika tidak ada kolom bernama lampiran, buat lampiran").
Menjadi seorang programmer adalah tentang menjadi tepat dan berhati-hati dengan kesalahan ketik, koma, titik koma, titik, yang merupakan bahasa manusia-agnostik sebagian besar waktu.
sumber
Pertama kali Anda membuang waktu mencari
Timeout
variabel hanya untuk mengetahui bahwa itu ditulisTimeount
, Anda akan tahu alasan lain mengapa ejaan itu penting.sumber
Jika masalah ini mengganggu Anda, sebagian besar IDE sekarang mengizinkan pemeriksaan ejaan dalam komentar sehingga penderita disleksia setidaknya dapat terlihat seperti mereka yang tahu cara mengeja. Itu pasti membantu saya! Oleh karena itu "perbaikan" sepele untuk memiliki ejaan yang baik.
sumber
Kesalahan pengejaan dalam nama dan metode kelas publik sama sekali tidak profesional. Mereka menghabiskan waktu dan uang. Mereka menyakitkan dalam bahasa yang diketik secara statis seperti Java, di mana IDE dapat menghasilkan menu nama kelas dan metode. Mereka tidak bisa ditoleransi dalam bahasa yang diketik secara dinamis.
Lebih buruk lagi adalah kesalahan ejaan dalam nama tabel database dan nama kolom.
Dalam pengalaman saya, pengejaan yang benar hanya sedikit terkait dengan kemahiran bahasa Inggris pembuat kode. Saya telah melihat penutur asli bahasa Inggris menghasilkan kode dengan ejaan dan istirahat kata pada dasarnya acak, dan telah melihat penutur bahasa Inggris non-asli yang berhati-hati untuk menghasilkan ejaan yang benar. Tetapi ejaan yang benar sangat terkait dengan kualitas kode secara keseluruhan. Pemrogram yang cakap, tidak peduli kemampuan bahasa Inggris mereka, peduli dengan kualitas pekerjaan mereka, dan berhati-hati dalam penamaan.
sumber
Dalam kode sumber, presentasi internal dan dokumen, dll. Kesalahan ketik kecil yang tidak mengubah arti atau menghambat pemahaman bukanlah masalah. Perbaiki sendiri sumbernya jika Anda merasa menjengkelkan.
Juga, khususnya dalam komentar, substansi lebih penting daripada bentuk. Tidak ada Engrish di sini:
Faktanya adalah bahwa beberapa orang secara alami penulis lebih hati-hati daripada yang lain (apakah ini karena pendidikan, atau karena sikap, atau karena kecerdasan atau apa pun, tidak relevan). Seberapa banyak upaya yang harus dilakukan untuk memperbaikinya adalah pertanyaan nilai bisnis: apakah Anda mendapatkan lebih banyak nilai dari memperbaiki kesalahan ketik, daripada menghabiskan waktu untuk memperbaikinya? Dalam hal hal internal, jawabannya biasanya tidak. Pelanggan Anda tidak akan mengeluh tentang kesalahan ketik dalam komentar kode sumber Anda (kecuali jika Anda melakukan open source).
Komentar salah ketik dan komentar yang tidak pantas tidak profesional dan harus dihindari, tetapi fokusnya harus pada hal-hal yang penting (yaitu menghasilkan nilai bisnis, jika Anda bekerja untuk bisnis).
Barang-barang yang terlihat oleh publik tentu saja harus dibaca dengan cermat.
sumber
Masalahnya di sini bukanlah engrish itu sendiri tetapi kurangnya kejelasan komentar. Bahasa Inggris yang sempurna tidak perlu, bahasa Inggris yang jelas adalah. Itu sepele untuk menjalankan sesuatu melalui google untuk mengambil kesalahan yang jelas.
Misalnya tidak jelas dari pandangan pertama jika
Gor message from queue
berarti "mendapat pesan dari antrian" atau "pesan GOR dari antrian". Anda perlu membaca kode untuk memahami makna komentar (sehingga mengalahkan objek komentar).Anda harus meminta untuk menerapkan ulasan kode di perusahaan Anda. Anda kemudian dapat "mengkritik" orang dengan cara yang konstruktif sementara mereka melakukan hal yang sama kepada Anda.
sumber
Seharusnya jelas bahwa kompiler tidak peduli tentang kesalahan eja, asalkan Anda menggunakan ejaan yang sama, misalnya saat mereferensikan variabel. Pertanyaannya kemudian menjadi apakah kesalahan ejaan berdampak negatif pada kemampuan anggota tim untuk mempertahankan kode.
Satu-satunya cara saya dapat melihat untuk melakukan itu adalah berbicara dengan orang-orang yang melakukan pemeliharaan, dan Anda bisa mulai dengan bertanya apakah ada yang lebih sulit mengikuti kode yang mengandung kesalahan ejaan.
Saya tidak berpikir ada cara untuk menghapus subjektivitas dari masalah ini sepenuhnya, tetapi untuk menguranginya, Anda bisa (secara manual atau melalui skrip) memindai sumber untuk mendapatkan perkiraan jumlah kesalahan ejaan untuk modul kode tertentu, dan melihat apakah pemeliharaan pada modul dengan jumlah kesalahan ejaan yang lebih tinggi, dibutuhkan waktu rata-rata lebih banyak daripada modul dengan kesalahan ejaan yang lebih sedikit.
Tentu saja tidak semua modul dibuat sama, sehingga Anda dapat mempertimbangkan untuk menimbang hasil Anda dengan berbagai metrik seperti kompleksitas siklomatik dari modul tersebut.
sumber
Dalam pengalaman saya, kesalahan ejaan dasar seperti itu meresahkan, dan mungkin merupakan gejala dari masalah yang lebih dalam. Setiap proyek yang saya kerjakan dengan kesalahan "sepele" seperti itu memiliki masalah nyata dalam desain yang entah bagaimana membuatnya melalui proses peninjauan hanya untuk memotong selama pengembangan, yang bukan ketika Anda ingin mengetahui bahwa fungsionalitas kritis yang Anda butuhkan tidak ada di sana.
Saya akan memeriksa ulang spesifikasi untuk sistem (jika ada) dan memeriksa desain keseluruhan; Saya tidak akan terkejut jika Anda menemukan beberapa lubang.
sumber
Ini sebenarnya adalah dua masalah yang terpisah, tetapi terkait. Itu tergantung di mana kesalahan ejaannya:
1) Dalam kode sumber. Jika Anda memiliki pengenal seperti
ArgumnetCount
, itu dapat menciptakan masalah nyata ketika seseorang datang dan menggunakan ejaan yang benar . Jadi, Anda harus memperbaiki kesalahan itu jika memungkinkan. Jika Anda perlu menjaga kompatibilitas API, Anda dapat melakukan sesuatu seperti:2) Dalam teks yang dapat dibaca manusia (email, dokumentasi, komentar kode). Menulis itu dengan benar itu penting, tetapi saya akan mengatakan itu adalah prioritas yang lebih rendah, karena perangkat lunak parsing di dalam kepala Anda jauh lebih memaafkan. Jika Anda melihat teks dengan beberapa kesalahan, itu masih dapat dibaca, maka jangan khawatir tentang hal itu - itu bukan masalah Anda. Tetapi jika seseorang mengirimi Anda omong kosong asosiatif bebas dan mengharapkan Anda menggunakan omong kosong itu sebagai cetak biru untuk aplikasi web multi-pengguna, maka Anda harus mengirimi penulis sebuah catatan sopan yang meminta klarifikasi (sesuatu seperti: "Kamu bodoh, bagaimana Anda mengharapkan saya untuk memahami omong kosong ini? ")
sumber
Bahasa Inggris yang dieja dengan benar adalah suatu keharusan dalam kode. Saya juga memiliki basis kode besar penuh omong kosong di dalamnya dan itu adalah mimpi buruk untuk dipertahankan.
Jangan biarkan ini lepas kendali. Cobalah untuk mendidik semua orang bahwa pengelola kode bukan pembaca pikiran.
sumber
Nah, ini adalah masalah budaya banyak sisi.
Berbicara dari perspektif Jerman: kami memperhatikan bagaimana bahasa kami sendiri semakin dipengaruhi oleh istilah bahasa Inggris. Sejauh ini perusahaan nasional memiliki slogan atau iklan bahasa Inggris. Beberapa orang, terutama di posisi manajemen sementara itu tampaknya tidak dapat mengucapkan satu kalimat dalam bahasa Jerman. Pidato mereka penuh dengan kata-kata buzz dan gaul manajemen yang tidak bisa dipahami. Kami mengatakan orang-orang tersebut berbicara "bahasa Inggris".
Mengingat keadaan ini dan bahasa Inggris menjadi "lingua franca" terutama dalam bisnis perangkat lunak, tidak dapat dihindari bahwa bahasa Inggris sendiri dipengaruhi oleh sejumlah besar penutur asli. Tetapi untuk penutur asli bahasa Inggris ini masih lebih baik daripada harus belajar, katakanlah, Cina untuk mengambil bagian dalam industri SW.
sumber
Apakah itu warna atau warna? Versi bahasa Inggris siapa Anda pikir adalah salah satu yang benar? Ejaan satu pria yang benar adalah alasan pria lain untuk memulai perang yang dapat dimenangkan.
Jika Anda ingin memulai perang, pilih pertempuran Anda dengan hati-hati dan menangkannya. Dalam kasus Anda, jangan khawatir tentang komentar, kurang khawatir tentang internal dan fokus (hampir) secara eksklusif pada API
sumber
Saya memiliki pepatah: Kode rapi tidak selalu berarti pikiran yang rapi, tetapi kebalikannya tentu benar: kode tidak rapi, pikiran tidak rapi.
Seorang programmer yang tidak meluangkan waktu untuk memberi nama variabel dengan benar dan mengeja komentar dengan benar hampir pasti tidak meluangkan waktu untuk melakukan hal lain dengan benar. Apakah programmer adalah penutur asli bahasa Inggris bukanlah masalah nyata, karena masalah dengan bahasa Inggrisnya dapat (dan harus) ditangani selama peer review.
Ya, ini adalah masalah serius untuk produk, untuk tim dan untuk individu.
sumber