Craft Coding: Filosofi Menulis Kode di Era Vibe Coding
AP
Adrian Prat

Dipublikasikan 16 Agustus 2026

Craft Coding: Filosofi Menulis Kode di Era Vibe Coding

Ketika Andrej Karpathy mempopulerkan istilah vibe coding awal tahun ini, banyak developer merasa lega. Akhirnya, kita bisa fokus pada apa yang ingin dibangun tanpa terjebak dalam detail bagaimana. AI menulis kode, manusia mengarahkan. Terdengar seperti utopia produktivitas. Tapi apa yang terjadi ketika kita menyerahkan terlalu banyak pada mesin?

Saya baru saja membaca dua artikel yang membuat saya berhenti sejenak dari rutinitas ngoding harian. Yang pertama dari Peter Bloem, dosen ilmu komputer di VU Amsterdam, yang mengajukan konsep craft coding. Yang kedua dari Joe Davidsen yang menegaskan bahwa fundamental software engineering justru lebih penting dari sebelumnya di era agentic AI. Keduanya menyampaikan pesan yang sama dengan cara berbeda: kecepatan tidak selalu sebanding dengan keunggulan.

Tiga Jenis Pembuat Kode

Bloem menggunakan analogi tiga pembuat roti yang sangat membantu untuk memahami posisi kita sekarang. Bayangkan Hanna, seorang home baker fanatik. Dia menguleni adonan dengan tangan, mengontrol suhu dengan obsesif, menciptakan beberapa loaf roti yang sempurna. Hasilnya luar biasa, tapi tidak scalable. Dia tidak peduli. Kemudian ada Vivian, pemilik bakery komersial. Semua keputusan proses diserahkan pada food scientist. Yang dia pantau hanya statistik agregat: berapa biaya produksi dan seberapa laku rotinya. Kualitas intrinsik tidak penting, yang penting roti cukup bagus untuk terjual. Di tengah-tengah, ada Cara: craft baker. Dia tahu dia tidak bisa menguli dengan tangan untuk skala komersial, tapi dia juga tidak menyerahkan kualitas begitu saja. Dia peduli pada setiap detail proses, menggunakan mesin hanya ketika itu benar-benar meningkatkan hasil, dan mendapatkan kepuasan dari penguasaan atas pekerjaannya.

Dalam konteks pengembangan perangkat lunak, Hanna adalah hand coder yang menolak AI sama sekali. Mereka memilih menjaga kerajinan kuno hidup, apakah itu secara komersial viable atau tidak. Vivian adalah vibe coder modern. Bukan dalam arti santai atau sekadar bersenang-senang seperti definisi awal istilah itu, melainkan profesional yang menyerahkan produksi kode pada AI dan hanya memantau apakah test lulus atau ada masalah di produksi. Mereka tidak membaca setiap baris. Cara, dalam analogi ini, adalah craft coder: programmer yang menulis setiap karakter dengan jari mereka sendiri, memahami setiap aspek codebase, tapi tidak malu menggunakan AI sebagai reviewer yang superhuman.

Apa yang Salah dengan Vibe Coding?

Masalah dengan vibe coding bukanlah bahwa kode tidak berfungsi. Sering kali kode itu berjalan. Masalahnya adalah apa yang hilang dalam prosesnya. Bloem menunjukkan bahwa ketika kita menyerahkan doing dan checking pada mesin yang sama, kita kehilangan kemampuan untuk mengukur seberapa dalam pemahaman kita. Di universitas, salah satu keterampilan paling berharga yang dipelajari mahasiswa adalah mengajukan pertanyaan sulit pada diri sendiri untuk menguji apakah mereka benar-benar memahami sebuah konsep. Menyerahkan segalanya pada AI berarti mekanisme pengukuran itu tidak pernah berkembang. Anda tidak hanya dengan sengaja mengambil shortcut, Anda menipu diri sendiri dengan berpikir telah menguasai sesuatu.

Joe Davidsen menambahkan perspektif teknis yang menarik. LLM tidak "berpikir" dalam arti manusiawi. Mereka memprediksi token berikutnya, dan model itu sendiri adalah pengetahuan manusia yang terkompresi. Jika reasoning trace tidak ada dalam data pelatihan, mereka tidak bisa menghasilkannya. Paper dari Apple yang berjudul The Illusion of Thinking mengkonfirmasi betapa buruknya LLM dalam reasoning yang sebenarnya, terutama untuk masalah yang memerlukan perencanaan mendalam. Simon Willison pernah menciptakan istilah lethal trifecta: LLM tidak bisa membedakan antara saran yang baik dan buruk, secara fundamental tidak mampu mencegah prompt injection, dan sesuatu yang dengan gigih mengikuti instruksi tanpa reasoning yang baik adalah nightmare fuel.

Craft Coding dalam Praktik

Lalu apa solusinya? Bloem menawarkan pendekatan yang ia sebut craft coding: you code, AI checks. Bukan sebaliknya. Dogma praktisnya jelas. Pertama, tidak ada AI di IDE dalam bentuk autocomplete. Setiap karakter ditulis oleh jari Anda. Kedua, beri AI akses read-only ke codebase, atau lebih baik lagi copy-paste snippet ke web interface. Ketiga, AI tidak boleh menjalankan apa pun. Ia menyarankan, Anda yang mengeksekusi. Keempat, jangan copy-paste kode dari chat box. Kelima, jangan gunakan AI untuk hal yang bisa dilakukan dengan plain search. Keenam, baca dokumentasi sebelum bertanya pada AI. Ketujuh, minta AI untuk solusi hanya jika Anda tidak bisa menyelesaikannya sendiri setelah memberi waktu untuk berpikir. Kedelapan, periksa kode Anda sendiri sebelum minta AI mereview. Kesembilan, jalankan kode untuk memeriksa masalah, baru kemudian minta AI menemukan sisanya. Kesepuluh, jangan implementasikan saran yang tidak Anda pahami.

Mengapa Ini Penting

Manfaat dari pendekatan ini signifikan. Sebagai reviewer, AI modern bersifat superhuman dalam menemukan bug. Ia bisa menangkap masalah runtime yang mungkin tidak pernah kita temukan sendiri. Lebih penting lagi, dalam era AI-powered cyberattack, kode yang ditulis tangan tanpa review AI menjadi tidak aman. Attacker dengan kemampuan AI bisa menemukan celah yang lolos dari mata manusia. Mythos dan Fable dari Anthropic telah memunculkan kekhawatiran keamanan yang cukup serius hingga membuat pemerintah AS turun tangan.

Ada juga manfaat psikologis. Ketika Anda menulis kode sendiri lalu meminta AI mereview, Anda akan menemukan diri Anda berusaha lebih keras meminimalkan bug sebelum submission. Seperti mahasiswa yang ingin impress dosen pembimbing, Anda secara tidak sadar mendorong diri untuk kualitas lebih tinggi. Proses ini juga mencegah deskilling. Seperti otot, keterampilan kognitif sulit didapat dan mudah hilang. Vibe coding adalah Guitar Hero equivalent of coding: game yang sangat menyenangkan, membuat Anda merasa powerful dan kreatif, sambil menghilangkan semua friction yang sebenarnya membuat Anda belajar.

Ruang untuk Craft Coding

Tentu saja, craft coding bukan solusi untuk semua orang. Jika Anda bekerja di perusahaan yang menjual "roti untuk supermarket", craft coding akan sulit dijual. Perusahaan seperti itu peduli pada statistik agregat: apakah jualan naik, apakah customer menerima produknya. Tapi seperti Cara yang menemukan niche di pasar yang muak dengan homogenitas produk supermarket, ada ruang untuk craft coding. Kode ilmiah, misalnya, harus craft coded karena penulis paper menjamin bahwa kode secara eksak mengimplementasikan ide. Linus Torvalds sendiri mendukung penggunaan AI untuk review, bukan untuk produksi kode kernel. Tool seperti Sashiko menangkap lebih dari 50% bug yang lolos dari review manusia.

Tanah Tengah yang Rasional

Di tengah polarisasi yang semakin memanas antara mereka yang menolak AI sepenuhnya dan mereka yang memeluknya tanpa kritik, craft coding menawarkan tanah tengah yang rasional. Kita tidak perlu menjadi Hanna yang fanatik. Kita juga tidak boleh menjadi Vivian yang hanya memantau dashboard. Kita bisa menjadi Cara: menggunakan mesin untuk meningkatkan kualitas, bukan menggantikan pemahaman.

Pertanyaan yang saya tinggalkan untuk Anda renungkan: jika Anda benar-benar percaya bahwa AI hanyalah parlor trick, mengapa Anda tidak mau membuktikannya dengan rutin meminta AI mereview kode Anda? Mungkin ada sesuatu dalam diri Anda yang tidak ingin tahu bahwa mesin telah mengungguli Anda di bidang tertentu. Dan mungkin, justru di situ letak alasan mengapa kita perlu craft coding lebih dari sebelumnya.