Vibe Coding: Membangun Software Bersama AI dengan Aman

Belum masuk. Progresmu tidak tersimpan.

Masuk
  • Bab 4 dari 6
  • 35 menit
  • 1 latihan kode
  • 4 soal kuis

Workflow, Studi Kasus, dan Kebiasaan Efektif

Di bab ini (7 bagian)
  1. Tujuan
  2. Workflow tujuh langkah
  3. Studi kasus: aplikasi daftar belanja
  4. Delapan kebiasaan vibe coder yang efektif
  5. Kapan vibe coding cocok
  6. Kesalahan umum
  7. Rangkuman

Tujuan bab ini

  • Menerapkan workflow tujuh langkah dari ide sampai rilis.
  • Membaca studi kasus dan menemukan pola kerja yang efektif, termasuk cara membaca bug hasil AI.
  • Mempraktikkan delapan kebiasaan vibe coder yang efektif.
  • Menentukan kapan vibe coding cocok dan kapan perlu review ketat.

Workflow tujuh langkah

Siklus di bab sebelumnya adalah putaran kecil. Untuk membawa ide sampai rilis, putaran-putaran itu ditempatkan dalam workflow yang lebih besar:

LangkahApa yang dilakukan
1. Ide dan tujuanSiapa penggunanya, masalah apa yang diselesaikan
2. Spesifikasi singkatPRD mini: fitur inti, layar, data
3. Scaffold proyekMinta AI membuat kerangka dan struktur
4. Bangun per fiturSatu fitur kecil per putaran
5. Uji dan periksaCoba manual, minta AI menulis tes
6. Commit ke GitSimpan titik aman setiap fitur jadi
7. Deploy dan pantauRilis, kumpulkan masukan, ulangi

Dua langkah paling sering diremehkan. Langkah 2 (spesifikasi singkat) sering dilewati, padahal paling menghemat waktu. Spesifikasi setengah halaman berisi fitur inti, daftar layar, dan bentuk data membuat setiap prompt berikutnya punya konteks yang sama. Langkah 6 (commit) adalah jaring pengamanmu.

Aturan emas: Git adalah tombol undo

AI kadang merusak sesuatu yang tadinya berfungsi, misalnya saat diminta menambah fitur baru ia ikut mengubah file lain. Kalau kamu commit setiap kali sesuatu berfungsi, kamu cukup kembali ke titik aman:

git add .
git commit -m "Fitur tambah barang berfungsi"

# AI merusak sesuatu di putaran berikutnya? Buang perubahan yang belum di-commit:
git restore .

Titik aman membuatmu berani bereksperimen, karena kesalahan apa pun hanya berjarak satu perintah dari pemulihan.

Studi kasus: aplikasi daftar belanja

Berikut alur percakapan ilustrasi saat membuat aplikasi daftar belanja:

  1. Prompt awal: "Buat aplikasi web daftar belanja: tambah, hapus, dan kelompokkan barang per kategori. Pakai React dan Tailwind."
  2. AI: membuat proyek (komponen, gaya, data contoh) dan memberi tahu perintah dev untuk melihat hasilnya.
  3. Kamu: "Saat item dihapus, muncul error ini: TypeError: ... undefined. Tolong perbaiki."
  4. AI: "Penyebabnya ID ganda saat menambah item. Sudah saya perbaiki dan tambahkan tes."
  5. Kamu: "Bagus. Tambahkan mode gelap dan siapkan untuk deploy."

Hasil sesi ilustrasi ini: 5 prompt utama, sekitar 30 menit dari nol sampai online, dan 0 baris kode diketik manual. Angka ini contoh tipikal, bukan hasil riset. Yang lebih penting adalah polanya: prompt awal jelas, error ditempel apa adanya, lalu peningkatan dilakukan bertahap.

Membedah bug "ID ganda"

Bug di langkah 3 sangat khas kode AI, jadi mari kita bedah. Misalkan AI menulis fungsi ini:

function tambahItem(daftar, nama) {
  const id = daftar.length + 1;
  return [...daftar, { id, nama }];
}

Coba jalankan di kepalamu. Daftar berisi item id 1 dan 2. Item id 1 dihapus, sehingga tersisa satu item dengan id 2. Lalu kamu menambah item baru: daftar.length + 1 bernilai 2. Sekarang ada dua item dengan id 2. Saat kamu menghapus berdasarkan id, kode bisa menghapus item yang salah atau mencari item yang sudah tidak ada, lalu muncul TypeError: ... undefined.

Kodenya terlihat masuk akal dan lolos uji normal, karena bug baru muncul setelah urutan "hapus lalu tambah". Inilah alasan kebiasaan "minta tes": tes yang mencoba urutan tersebut akan langsung menangkap bug ini. Perbaikannya, id baru diambil dari id terbesar yang ada, bukan dari panjang daftar. Kamu akan mempraktikkan perbaikan ini di latihan bab ini.

Delapan kebiasaan vibe coder yang efektif

KebiasaanMengapa penting
Mulai dari spesifikasiTujuan dan fitur inti ditulis sebelum prompt pertama
Langkah kecilSatu fitur per prompt lebih mudah diuji dan diperbaiki
Berikan konteks kayaSertakan file terkait, dokumentasi, dan contoh
Sering commitTitik aman membuatmu berani bereksperimen
Minta tesMinta AI menulis tes dan menjelaskan perubahannya
Tempel error lengkapPesan error utuh lebih berguna daripada "tidak jalan"
Mulai sesi baruJika AI berputar-putar, reset konteks dan ringkas ulang
Minta keamananSebutkan validasi input, otentikasi, dan rahasia

Dua kebiasaan yang paling sering dilupakan adalah commit Git dan memulai sesi baru ketika konteks sudah terlalu panjang. Tanda AI mulai berputar-putar: ia memperbaiki bug A lalu memunculkan bug B, lalu memperbaiki B dan memunculkan A lagi. Saat itu, berhenti. Kembalikan kode ke commit terakhir yang baik, buka sesi baru, dan tulis ringkasan singkat: proyeknya apa, apa yang sudah berfungsi, dan satu masalah yang ingin diselesaikan.

Contoh menempel error dengan baik

Bandingkan dua pesan ini:

Lemah: Aplikasinya tidak jalan, tolong perbaiki.

Kuat: Saat aku menghapus item kedua lalu menambah item baru,
muncul error berikut di konsol:
TypeError: Cannot read properties of undefined (reading 'nama')
    at hapusItem (daftar.js:14)
Yang kuharapkan: item baru muncul dan item lain tidak berubah.

Pesan kuat memuat langkah untuk memunculkan bug, error utuh dengan lokasinya, dan perilaku yang diharapkan. AI bisa langsung menuju penyebabnya tanpa menebak.

Kapan vibe coding cocok

Cocok untukHati-hati, perlu review ketat
Prototipe dan MVP untuk menguji ideSistem keuangan, kesehatan, atau infrastruktur kritis
Tools internal dan otomasi kecilAplikasi yang menyimpan data pribadi pengguna
Proyek akhir pekan dan eksperimenProduk skala besar yang dirawat bertahun-tahun
Belajar konsep dan teknologi baruKode keamanan tanpa review manusia
Mockup interaktif untuk presentasiSistem dengan kewajiban kepatuhan regulasi

Polanya: vibe coding paling bernilai saat kode bersifat sementara, ruang lingkupnya sempit, atau polanya sudah umum. Untuk sistem kritis, gunakan pendekatan agentic engineering dengan review, tes, dan audit keamanan. Contohnya, kalkulator patungan untuk acara kelas boleh dibuat dengan vibe coding murni. Aplikasi koperasi sekolah yang menyimpan saldo dan data siswa butuh review dan tes yang serius.

Kesalahan umum

  • Melewati spesifikasi lalu menghabiskan banyak putaran untuk menjelaskan ulang hal yang sama.
  • Tidak commit sampai AI merusak beberapa fitur sekaligus dan tidak ada titik aman.
  • Bertahan di sesi yang berputar-putar padahal memulai sesi baru jauh lebih cepat.
  • Hanya menguji jalur normal, sehingga bug seperti ID ganda lolos sampai pengguna menemukannya.

Rangkuman

  • Workflow tujuh langkah: ide, spesifikasi, scaffold, bangun per fitur, uji, commit, deploy dan pantau.
  • Git adalah tombol undo: commit setiap kali sesuatu berfungsi.
  • Bug khas kode AI sering lolos uji normal dan baru muncul pada urutan tertentu, jadi minta dan tulis tes.
  • Delapan kebiasaan efektif mencakup spesifikasi, langkah kecil, konteks kaya, commit, tes, error lengkap, sesi baru, dan keamanan.
  • Vibe coding cocok untuk prototipe dan eksperimen, tetapi sistem kritis dan data pribadi perlu review ketat.

Selesaikan bab ini

  1. 1. Baca materi
  2. 2. Latihan kode (1)
  3. 3. Kuis (4 soal)

Latihan kode: Perbaiki bug ID ganda buatan AI

Ini kode AI dari studi kasus daftar belanja. Setelah barang dihapus lalu barang baru ditambah, muncul dua barang dengan id yang sama, dan menghapus satu barang ikut menghapus barang lain.

Perbaiki tambahItem supaya:

  • id baru selalu unik: ambil id terbesar yang ada lalu tambah 1 (daftar kosong berarti id 1);
  • nama dipangkas spasinya, dan nama kosong atau hanya spasi tidak ditambahkan (kembalikan daftar apa adanya);
  • array asli tidak diubah.

hapusItem sudah benar, jangan diubah.

Cek pemahaman

  1. 1Langkah workflow mana yang sering dilewati padahal paling menghemat waktu?

  2. 2Apa masalah fungsi ini setelah barang dihapus lalu barang baru ditambah?

    function tambahItem(daftar, nama) {
      const id = daftar.length + 1;
      return [...daftar, { id, nama }];
    }
  3. 3Saat AI mulai berputar-putar memperbaiki bug yang sama, memulai sesi baru dengan ringkasan singkat adalah langkah yang disarankan.

  4. 4Proyek mana yang paling cocok dikerjakan dengan vibe coding murni?