Modul 00Term 1 · Fondasi

Orientasi: Pola Pikir Vibe Engineer

Masuk untuk menyimpan progres Anda di semua perangkat. Sampai saat itu, progres disimpan di browser ini.

Mengapa ini penting

Sebuah demo hanya punya satu pengguna, yaitu Anda sendiri, di jaringan yang bagus, dengan data yang bersih, menjalankan happy path satu kali. Produksi punya ribuan pengguna, jaringan yang buruk, input yang berniat jahat, klik yang terjadi bersamaan, dependensi yang tidak stabil, tagihan cloud, dan regulator. Tool AI sangat jago membuat demo. Jarak antara demo dan produksi persis berupa 111 butir di poster.

Capaian pembelajaran

  1. Menjelaskan perbedaan antara prototype, MVP, dan sistem produksi, serta kewajiban masing-masing kepada penggunanya.
  2. Mengklasifikasikan fitur apa pun berdasarkan blast radius (apa akibat terburuknya kalau fitur itu salah?).
  3. Mengambil sikap tech lead: AI adalah junior engineer yang cepat dan percaya diri, yang tidak pernah bilang "saya tidak tahu."

Materi

0.1 Lima lensa kegagalan

Untuk setiap fitur, ajukan lima pertanyaan ini. Inilah kebiasaan yang dibangun oleh seluruh sekolah ini.

Lensa Pertanyaan Modul
Penyerang Bagaimana jika penggunanya adalah penyerang? M05, M06
Skala Bagaimana jika 1,000 orang melakukan ini pada saat yang sama? M03, M09, M10
Kegagalan Bagaimana jika yang saya panggil lambat, mati, atau mengembalikan sampah? M07, M08
Perubahan Bagaimana cara saya merilis dan membatalkan ini dengan aman? M11
Visibilitas Bagaimana saya bisa tahu kalau ini rusak? M12, M13

0.2 Klasifikasi blast radius

  • Kelas A, bisa dibatalkan dan privat: perubahan kecil di UI. Rilis dengan bebas.
  • Kelas B, menyimpan data: menyimpan atau membaca data pengguna. Butuh kontrol akses + backup.
  • Kelas C, uang atau identitas: pembayaran, auth, keputusan kredit. Butuh idempotency, audit trail, test, dan review.
  • Kelas D, aksi yang tidak bisa dibatalkan atau eksternal: mengirim pesan, memindahkan uang, menghapus data, aksi agent. Butuh persetujuan manusia dan kill switch.

0.3 Mengapa kode AI gagal dengan cara yang spesifik dan bisa ditebak

Model AI mengoptimalkan untuk "terlihat benar dan bisa jalan." Secara konsisten, model AI:

  • melewatkan pengecekan otorisasi (kodenya jalan untuk pengguna yang jujur),
  • menaruh secret di tempat yang praktis (env var di frontend),
  • menulis happy path lalu menelan error,
  • menjalankan query di dalam loop (N+1),
  • mengarang package yang tidak ada (risiko slopsquatting),
  • melaporkan "selesai" dan "semua test lulus" tanpa menjalankan apa pun.

Mengenali polanya sudah separuh dari pertahanan.

0.4 Studi kasus (baca sebelum Minggu 1)

  • CVE-2025-48757, Lovable: Row-Level Security yang tidak ada membuka akses baca/tulis di 170+ aplikasi yang di-generate. Pelajaran: client yang langsung berbicara ke database hanya seaman policy database itu sendiri.
  • Replit / SaaStr, Juli 2025: sebuah agent yang memegang kredensial produksi menghapus database live saat sedang code freeze. Pelajaran: pisahkan environment, least privilege, persetujuan manusia untuk operasi destruktif, backup yang sudah diuji.
  • Veracode 2026: sekitar 44% tugas pembuatan kode oleh AI memunculkan kerentanan yang sudah dikenal; tingkat kelulusan keamanan bertahan di sekitar 56% selama empat tahun. Pelajaran: upgrade model tidak akan menyelamatkan Anda; proses yang akan.

Lab 0: Audit aplikasi Anda sendiri

Ambil aplikasi yang sudah pernah Anda bangun dengan AI.

  1. Daftarkan setiap fitur dan beri masing-masing kelas blast radius.
  2. Jalankan lima lensa pada dua fitur dengan kelas tertinggi.
  3. Jalankan gitleaks detect pada riwayat repo.
  4. Buka dev tools browser pada aplikasi live; cari key, secret, sk_, service_role di bundle JS yang dimuat.

Definition of Done

Bahan refleksi

Butir mana dari 111 butir itu yang Anda anggap sudah "ditangani" oleh tool AI atau platform hosting Anda? Tuliskan bagaimana Anda akan memverifikasinya.