- Kasus kebocoran source code Claude menjadi pemicu yang memperlihatkan bagaimana fanatisme terhadap "vibe coding" dapat merusak kualitas proyek nyata
- Vibe coding menjadikan tidak melihat ke dalam kode sama sekali sebagai prinsip, tetapi ini tak lebih dari takhayul murni; dalam praktiknya tetap harus ada rancangan struktur buatan manusia seperti file rencana, skill, aturan, dan sebagainya
- AI memang sangat unggul dalam tugas seperti merapikan duplikasi kode dan utang teknis, tetapi untuk memanfaatkannya manusia tetap harus meninjau kode secara langsung, menemukan masalahnya, lalu menjelaskannya kepada AI
- AI jarang secara sukarela menyadari bahwa "ada spaghetti code di sini jadi harus dirapikan"; hasil berkualitas tinggi muncul ketika manusia lebih dulu memberi arah dan konteks
- Seperti ungkapan "perangkat lunak buruk adalah pilihan pengembang", penurunan kualitas bukanlah karena AI melainkan hasil dari pengambilan keputusan
- Artinya, penurunan kualitas perangkat lunak bukan salah AI, melainkan pilihan yang diambil pengembang sendiri
Kebocoran source code Claude dan masalah vibe coding
- Source code Claude bocor, dan banyak orang mengejeknya karena kualitas kodenya rendah
- Penyebab masalah ini disebut sebagai dogfooding yang berlebihan, yaitu budaya menggunakan produk sendiri secara terlalu buta
- Dogfooding itu sendiri adalah ide yang bagus, tetapi bisa berubah menjadi aktivitas kultus yang melampaui batas kewajaran apa pun
Wujud nyata vibe coding
- Vibe coding adalah pendekatan yang menjadikan tidak memberi kontribusi apa pun ke dalam kode, bahkan tidak melihat ke dalamnya, sebagai prinsip
- Namun vibe coding murni adalah mitos — dalam kenyataannya selalu ada framework buatan manusia seperti file rencana (daftar tugas), skill, aturan, dan sebagainya, dan tanpa struktur ini AI akan menunjukkan performa yang sangat rendah
- Kode ditulis dalam bahasa Inggris sehingga siapa pun bisa membacanya, tetapi para pengembang menolak memeriksa langsung dengan logika bahwa "melihat ke dalam itu curang"
- Faktanya, ketika satu orang manusia meninjau kodenya, ditemukan bahwa ada duplikasi besar-besaran antara agent dan tool, dan ini adalah masalah yang mudah disadari jika seseorang sempat melihatnya sebentar saja
AI dan perapian utang teknis
- Proyek perangkat lunak sering kali dimulai sambil membawa utang teknis, dan dulu ada kasus yang membutuhkan waktu sampai satu tahun hanya untuk membereskannya
- Dengan memanfaatkan AI, pekerjaan perapian ini bisa selesai dalam hitungan beberapa minggu, atau dikurangi secara bertahap sambil tetap mengembangkan fitur baru
- AI sangat unggul dalam merapikan kode, tetapi lemah dalam mendeteksi masalah sendiri — hasil yang baik muncul ketika manusia memberi tahu bahwa "ada spaghetti code di sini" dan menyediakan panduan
Cara memanfaatkan AI yang benar — pendekatan berbasis percakapan
- Sebagai cara yang benar untuk menyelesaikan masalah duplikasi, diajukan langkah-langkah berikut:
- Menyusun daftar item yang termasuk di sisi agent maupun tool
- Meninjau contoh lalu menentukan apakah tiap item adalah agent atau tool
- Mendiskusikan kriteria umum dan menyusun pedoman umum
- Mengaudit seluruh item lalu memperbaiki item yang salah klasifikasi
- Untuk item yang ada di kedua sisi, meninjau kedua versinya lalu menggabungkannya menjadi satu
- Mode Ask memang ditujukan untuk proses ini, dan intinya adalah meninjau contoh bersama sambil meluruskan bagian yang salah ketika AI terlalu mudah setuju
- Setelah cukup banyak percakapan, orang bisa merasa AI menghasilkan hasil yang tampak seperti one-shot, tetapi sebenarnya itu adalah hasil yang sejak awal ditopang banyak interaksi dengan manusia
- Tim Claude menerapkan dogfooding ekstrem tanpa proses ini, sehingga mereka menolak bahkan upaya minimum untuk melihat ke dalam kode sebentar dan menjelaskan masalahnya
Contoh penggunaan nyata
- Contoh workflow pribadi: saat memulai percakapan, ia berkata seperti "mari audit unreachable code di codebase ini" atau "fungsi ini bikin mata sakit", lalu memulai diskusi
- Percakapan dilanjutkan sampai muncul arah yang bisa dieksekusi, lalu ia menjelaskan apa yang harus dikerjakan dan terus berdiskusi sampai AI berhenti mengatakan hal-hal bodoh
- Setelah itu membuat rencana dan menjalankan build adalah cara kerja sehari-hari
Kualitas perangkat lunak adalah masalah pilihan
- Menggunakan AI bukan berarti harus menerima perangkat lunak berkualitas rendah
- Library yang dibuat pengembang dengan bayaran berlebihan tanpa bantuan AI pun bisa berkualitas buruk
- Perangkat lunak buruk adalah keputusan yang diambil sendiri, dan orang harus bertanggung jawab atas itu serta mengejar kualitas yang lebih baik
Belum ada komentar.