Vibe Coding Itu Curang atau Cuma Cara Baru Buat Ngoding?

Di esai sebelumnya saya membahas skill apa yang tetap jadi milik manusia. Sekarang saya ingin membahas fenomena yang justru menguji batas itu: vibe coding. Istilah ini meledak sejak Andrej Karpathy, salah satu pendiri OpenAI, memakainya di sebuah unggahan X pada Februari 2025 untuk menggambarkan caranya membangun aplikasi: ia menyuruh AI menulis kode, menerima semua perubahan tanpa membaca diff-nya, dan kalau ada error ia tempel balik errornya tanpa komentar.

Reaksi publik terbelah dua. Sebagian menyebutnya masa depan: kenapa repot memahami kode kalau mesin bisa mengurusnya? Sebagian menyebutnya kemalasan yang dibungkus jargon, bahkan curang. Saya sudah cukup lama mengamati perdebatan ini, mencoba sendiri praktiknya, dan membaca data riset keamanannya. Kesimpulan saya tidak hitam putih, dan mungkin akan mengecewakan kedua kubu.

Apa Sebenarnya Vibe Coding Menurut yang Menciptakan Istilahnya

Sebelum menghakimi, kita perlu jujur pada definisinya. Karpathy sendiri memberi batas yang jelas dalam unggahan aslinya: vibe coding itu "tidak terlalu buruk untuk proyek akhir pekan yang sekali pakai". Kata kuncinya dua: sekali pakai dan tidak dibaca hasilnya.

Simon Willison kemudian menarik garis yang lebih tajam: kalau AI menulis kode untukmu lalu kamu me-review-nya, mengujinya, dan bisa menjelaskannya ke orang lain, itu bukan vibe coding. Itu software development. Vibe coding yang sesungguhnya adalah ketika kamu sengaja tidak membaca kode yang dihasilkan.

Perbedaan ini penting karena hari ini istilah "vibe coding" sudah melar ke mana-mana. Banyak orang mengklaim mereka "vibe coding" padahal yang mereka lakukan adalah AI-assisted development yang bertanggung jawab: AI menulis draf, manusia me-review. Itu bukan vibe coding menurut definisi aslinya. Itu cara kerja modern yang sah.

Pelarian maknanya bahkan sampai ke kamus. Collins English Dictionary menobatkan "vibe coding" sebagai Word of the Year 2025, dan Merriam-Webster memasukkannya ke kamus resmi pada 2026. Ironisnya, definisi kamus yang populer justru melunakkan syarat "tanpa membaca kode" yang menjadi inti definisi Karpathy. Akibatnya, dua orang bisa berdebat sengit tentang vibe coding padahal yang satu membicarakan "prototipe iseng tanpa baca kode" dan yang lain membicarakan "ngoding dibantu AI secara umum". Setiap kali topik ini muncul, langkah pertama yang waras adalah menyamakan definisi dulu: yang mana yang sedang kita bicarakan?

Persepsi yang Harus Diluruskan

Mitos 1: "Vibe coding itu curang, seperti nyontek saat ujian." Analogi ujian ini keliru karena software development bukan ujian. Di dunia nyata, tidak ada yang memberi nilai dari cara kamu menulis kode. Yang dinilai adalah: apakah software-nya jalan, aman, dan bisa dirawat? Kalau sebuah prototipe akhir pekan lahir dari vibe coding dan tidak ada yang dirugikan, tidak ada kecurangan di sana. Masalahnya bukan moral, melainkan risiko.

Mitos 2: "Vibe coding adalah masa depan, programmer tradisional akan punah." Data berkata lain. Riset keamanan menemukan celah pada porsi besar kode buatan AI yang tidak di-review, termasuk kasus aplikasi yang menangani data pengguna asli dengan konfigurasi database yang bocor. Sebuah studi bahkan menemukan kode yang ditulis bersama AI mengandung masalah mayor lebih banyak dibanding kode tulisan manusia. Kecepatan tanpa pemahaman menghasilkan utang yang bunganya dibayar belakangan, biasanya oleh orang lain.

Kapan Vibe Coding Sah, Kapan Berbahaya

Saya memakai satu tes sederhana yang saya sebut tes tiga pintu. Sebelum kamu memutuskan untuk tidak membaca kode hasil AI, tanyakan tiga hal ini.

Pintu pertama: siapa yang memakai hasilnya? Kalau hanya kamu sendiri, untuk eksperimen, prototipe, atau alat bantu pribadi, silakan. Risikonya kamu tanggung sendiri. Tapi begitu ada orang asing yang memasukkan alamat email atau data pribadinya ke aplikasimu, kamu sudah keluar dari wilayah vibe coding yang aman. Data orang lain adalah tanggung jawab, bukan bahan eksperimen.

Pintu kedua: berapa lama kode ini akan hidup? Proyek akhir pekan yang dibuang Senin pagi boleh ditulis dengan santai. Tapi kode yang akan dirawat berbulan-bulan, dikembangkan tim, dan disentuh orang lain butuh pemahaman. Kode yang tidak dipahami siapa pun adalah bom waktu. Cepat atau lambat ada bug yang hanya bisa diperbaiki oleh orang yang paham sistemnya, dan kalau tidak ada yang paham, biayanya meledak.

Pintu ketiga: bisakah kamu menjelaskan cara kerjanya kalau ditanya? Ini tes Willison. Kalau atasanmu, klienmu, atau auditor bertanya "kenapa bagian ini begini?" dan jawabanmu "nggak tahu, AI yang bikin", kamu sedang tidak menjadi engineer. Kamu sedang menjadi penumpang di kendaraan yang kamu tidak bisa kemudikan.

Lolos tiga pintu? Itu bukan vibe coding yang berbahaya, itu eksplorasi yang sah. Gagal di satu pintu saja? Berhenti, baca kodenya, pahami, baru lanjut.

Berhenti dan tebak dulu! Seorang teman membangun aplikasi kasir untuk warung keluarganya pakai AI, tanpa membaca satu pun baris kodenya. Menurut tes tiga pintu, di pintu mana ia gagal?

Jawaban: pintu pertama. Aplikasi kasir menyimpan data transaksi dan mungkin data pelanggan, dipakai orang lain selain pembuatnya. Begitu data orang lain masuk, vibe coding murni tidak lagi bisa dibenarkan. Ia harus membaca dan memahami kodenya, minimal bagian yang menyentuh data dan uang.

Kuis cepat: Menurut definisi asli Karpathy dan garis Willison, mana yang BUKAN vibe coding?

Pendapat Jujur Saya

Setelah semua ini, inilah posisi saya. Vibe coding bukan curang dan bukan masa depan. Ia adalah sebuah mode kerja, seperti mode sketsa bagi pelukis. Pelukis profesional membuat sketsa cepat yang berantakan sebelum melukis kanvas final. Tidak ada yang menyebut sketsa itu curang. Tapi tidak ada juga pelukis serius yang memajang sketsa sebagai karya final lalu menjualnya seharga lukisan jadi.

Masalahnya muncul ketika orang menjual sketsa sebagai lukisan: aplikasi vibe coding yang menangani data asli, dipakai orang banyak, tapi tidak ada yang paham cara kerjanya. Itu bukan inovasi cara ngoding. Itu pengabaian tanggung jawab yang dibungkus bahasa keren.

Dan ada satu hal yang jarang dibahas: vibe coding murni justru paling berbahaya bagi pemula. Programmer senior yang vibe coding masih punya insting untuk mencium bau kode yang salah, karena mereka pernah membaca ribuan baris kode sebelumnya. Pemula tidak punya insting itu. Kalau dari awal kamu tidak pernah membaca kode, kamu tidak akan pernah membangun kemampuan menilai yang saya bahas di esai #94. Kamu menjadi tergantung permanen pada mesin yang kamu tidak pahami.

Ada juga dimensi ekonomi yang jarang dibahas: siapa yang membayar utang pemahaman itu? Dalam banyak kasus, bukan si pembuat vibe coding-nya, melainkan orang berikutnya yang mewarisi kode itu: rekan tim, freelancer pengganti, atau dirimu sendiri 6 bulan kemudian yang sudah lupa segalanya. Kode yang ditulis tanpa dipahami adalah warisan beracun. Setiap baris yang tidak dipahami siapa pun menambah "pajak" untuk setiap perubahan di masa depan, sampai akhirnya lebih murah menulis ulang dari nol.

Latihan dan Langkah Berikutnya

Latihan konkret minggu ini: Lakukan eksperimen dua mode. Mode pertama: bangun satu halaman web sederhana (misalnya halaman profil) dengan vibe coding murni, tanpa membaca kode hasilnya, maksimal 30 menit. Mode kedua: bangun halaman yang sama, tapi kali ini baca setiap baris yang dihasilkan AI dan tulis satu kalimat penjelasan untuk tiap blok kode dengan bahasamu sendiri. Bandingkan: berapa lama masing-masing mode? Di mode mana kamu menemukan bug duluan? Catat pengalamanmu dalam satu paragraf. Saya berani bertaruh mode kedua terasa lebih lambat di awal tapi memberimu pemahaman yang bertahan jauh lebih lama.

Di esai berikutnya (#96), saya akan masuk lebih dalam ke pertanyaan filosofisnya: AI bisa menulis kode yang kompleks dan lolos banyak tes. Tapi apakah ia benar-benar berpikir, atau hanya meniru pola dengan sangat meyakinkan? Jawabannya penting karena menentukan seberapa jauh kamu boleh mempercayainya.