Benar-benar setuju, dan saya pikir alat LLM mungkin merupakan fungsi pemaksaan untuk mengadopsi beberapa praktik tim/organisasi terbaik di tim yang lebih kecil yang mungkin tidak dapat membenarkannya sebelumnya.
Simon Willison
Simon Willison23 jam lalu
Ini bukan hanya pengujian unit - ada begitu banyak praktik rekayasa perangkat lunak tingkat atas lainnya yang mempercepat produktivitas dengan agen pengkodean Pengujian otomatis, dokumentasi komprehensif, kebiasaan kontrol versi yang baik, budaya tinjauan kode, penerapan cepat ke lingkungan pementasan...
Saya pikir Anda akan gila memiliki beberapa ratus insinyur tanpa linter. Namun, jika Anda hanya memiliki dua atau empat, mungkin tidak pernah mencapai energi aktivasi untuk itu, dan sebagian besar pertengkaran yang tidak produktif tentang gaya pengkodean. Tapi tambahkan Claude Code dan a) Anda menginginkan linter itu
b) menyiapkan bahwa linter sekarang lima menit pengangkatan marjinal versus "Satu orang turun ke tugas terpal klasik untuk mengintegrasikannya dengan semua IDE / dll."
Untuk bagian audiens saya yang tidak tahu: linter adalah alat otomatis yang dapat menegakkan standar konvensi pengkodean yang lebih ketat daripada yang mungkin diizinkan oleh bahasa. Misalnya, Anda dapat mengadopsi aturan rumah bahwa konstruksi hukum tertentu tidak diizinkan
Sebagai contoh, ada ekspresi hukum yang sangat singkat dalam banyak bahasa yang disebut operator terner. Operator terner terkenal cenderung menyebabkan bug, dan tim teknik mungkin memutuskan bahwa, meskipun singkat, berdasarkan risiko yang disesuaikan, mereka bukan fitur yang dapat diterima untuk digunakan.
Sebagai contoh dari sesuatu yang dapat Anda atur secara bijaksana melalui linter yang Anda tidak ingin harus berulang kali berdebat dengan Claude Code tentang: di Rails, something_id berarti kunci asing untuk tabel sesuatu. Claude melupakan ini sesekali, memanggil banyak hal lain id.
Anda dapat, jika Anda mau, menulis aturan linter yang akan dieksekusi setiap kali kode dimodifikasi dan menandai Claude dan seluruh dunia: "Anda menamai variabel box_id, tetapi _ids hanya untuk digunakan untuk merujuk ke kunci database. Pertimbangkan box_code atau nama lain."
Hal yang menyenangkan tentang aturan linter adalah mereka dapat memiliki pengetahuan khusus proyek yang dibangun di dalamnya secara sewenang-wenang. Satu argumen berulang yang dipaksa dilakukan oleh seorang pegawai Jepang sejak lama, dengan (sesama) penutur non-pribumi melakukan aplikasi web universitas: Anda TIDAK BOLEH menggunakan "subjek."
Mengapa tidak? Karena universitas Jepang membagi mata pelajaran akademik menjadi mata pelajaran (kyouka; mata pelajaran seperti "matematika") dan mata pelajaran (kamoku; subjek seperti "aljabar linier"), dan karena subsubjek mengerikan untuk dibaca dalam kode, ini disebut oleh bahasa Jepang yang diromanisasi untuk selalu tidak ambigu.
25,27K