Developer /
Teknik Tracer Bullet: Menjinakkan AI Code Slop dengan Disiplin Pemrograman Klasik
Cara mengatasi AI code slop menggunakan teknik tracer bullet dari The Pragmatic Programmer: buat irisan vertikal end-to-end dengan loop umpan balik cepat.
Catatan: Esai ini membedah panduan teknis Matt Pocock di AI Hero mengenai penerapan prinsip rekayasa perangkat lunak klasik pada era coding agents.
Pernahkah Anda meminta agen AI (coding agent) untuk membangun sebuah fitur baru, lalu beberapa menit kemudian mendapati ratusan baris kode baru yang tampak meyakinkan namun sama sekali tidak bisa dijalankan saat dites?
Fenomena ini kian lumrah di kalangan perekayasa perangkat lunak modern. Agen AI memiliki kecenderungan bawaan untuk bersikap menyenangkan (sycophantic). Begitu menerima instruksi, model langsung bersemangat merancang solusi menyeluruh sekaligus: membuat skema database, mendefinisikan puluhan endpoint API (GET, POST, PUT, DELETE), menambahkan middleware, otentikasi, pembatas laju (rate limiting), hingga logging.
Namun, ketika kode dijalankan, koneksi database gagal karena format connection string keliru atau tipe data kolom tidak cocok. Model membangun terlalu banyak hal di ruang gelap tanpa pernah memvalidasi asumsi dasar. Andrew Hunt dan David Thomas dalam buku legendaris The Pragmatic Programmer menyebut kondisi ini sebagai “outrunning your headlights”—melaju lebih cepat daripada jangkauan lampu sorot mobil di malam hari.
Dalam edisi terbaru AI Hero, Matt Pocock mengingatkan kita pada satu solusi klasik yang terbukti ampuh menjinakkan kekacauan ini: Tracer Bullets.
1. Anatomi “AI Slop”: Mengapa Agen AI Terjebak Lapisan Horizontal?
Ketika manusia menginstruksikan AI tanpa pagar pembatas yang ketat, model secara alami menyusun kode secara horizontal:
Pendekatan Horizontal (AI Alami - Rawan Slop):
┌────────────────────────────────────────────────────────┐
│ Lapisan 1: 10 Endpoint API & Router │
├────────────────────────────────────────────────────────┤
│ Lapisan 2: Skema Validasi Zod & DTO │
├────────────────────────────────────────────────────────┤
│ Lapisan 3: Middleware Auth & Rate Limiting │
├────────────────────────────────────────────────────────┤
│ Lapisan 4: Driver Database & ORM (Titik Kegagalan!) │
└────────────────────────────────────────────────────────┘
Semua lapisan dibangun bersamaan sebelum ada satu pun yang teruji jalan.
Beban terberat dari pola horizontal ini jatuh ke pundak manusia: review burden. Developer harus menyisir tumpukan kode yang rumit hanya untuk menemukan bahwa fondasi awalnya cacat.
2. Solusi Pragmatis: Irisan Vertikal Tipis (Vertical Slices)
Konsep tracer bullet (peluru penjejak) diambil dari dunia militer: peluru berkomposisi piroteknik yang menyala dalam gelap di antara rentetan amunisi biasa untuk menunjukkan lintasan tembakan secara langsung ke sasaran.
Dalam rekayasa perangkat lunak, tracer bullet adalah irisan fungsionalitas yang sangat kecil namun menembus seluruh lapisan sistem dari ujung ke ujung (end-to-end):
Pendekatan Tracer Bullet (Vertikal Tipis):
UI / Trigger
│
▼
Endpoint API
│
▼
Logika Bisnis
│
▼
Database / Driver
│
▼
[Validasi Seketika!] ──► Jalur terbukti hidup, baru kembangkan fitur lain.
Siklus kerjanya sangat terukur:
- Bangun satu skenario fitur mini yang menembus backend hingga UI.
- Uji langsung dengan pengujian otomatis (automated feedback loop).
- Evaluasi hasil dan perbaiki kekeliruan arsitektur sedini mungkin.
- Buka jendela konteks baru (fresh context window), lalu lanjutkan ke irisan berikutnya.
3. Studi Kasus Nyata: Mengimplementasikan Fitur Sistem Berkas
Matt Pocock mendemonstrasikan teknik ini saat menangani isu riil (Issue #161) pada editor videonya, yaitu menambahkan fitur “Reveal in File System”:
Alih-alih langsung menyuruh AI menambahkan menu konteks di empat lokasi UI sekaligus, ia memecahnya ke dalam instruksi terstruktur:
- Tracer bullet: Bangun endpoint backend yang mengeksekusi perintah PowerShell untuk membuka Windows Explorer dari WSL, lalu sambungkan ke satu tombol uji di UI.
- Tambahkan aksi ke menu konteks video mandiri.
- Tambahkan aksi ke dropdown editor video.
- Tambahkan aksi ke menu konteks video pada bilah samping (sidebar).
Dengan menguji langkah pertama terlebih dahulu, Pocock memastikan jembatan antara WSL dan sistem operasi host Windows berjalan mulus sebelum menduplikasi antarmuka di berbagai tempat.
4. Prompt Siap Pakai untuk Menahan Laju Agen AI
Untuk memaksa agen AI berpikir dalam skala kecil dan bertahap, sisipkan instruksi berikut ke dalam system prompt atau berkas skill agen Anda:
Tracer Bullets Rule:
“When building features, do not build horizontal layers in isolation. Build a tiny, end-to-end slice of the feature first that touches all layers (from UI/API down to data storage). Test and seek feedback immediately before expanding out. Validate assumptions early so we never outrun our headlights.”
Sumber dan Rujukan Terkait
Artikel terkait
Semua artikel →Developer / 15 Okt 2026
GitHub Copilot Rilis HydraFusion, AI Pilih Model Terbaik Otomatis di VS Code
GitHub secara resmi membawa HydraFusion ke Visual Studio Code, fitur riset yang secara otomatis memilih model AI dan pola kerja terbaik untuk setiap tugas pengodean di GitHub Copilot.
Developer / 6 Okt 2026
64 Konsep AI yang Wajib Dikuasai Software Engineer: Panduan Arsitektur Bagian 1
Bedah arsitektur sistem di balik kecerdasan buatan modern dari Neo Kim: pemahaman mendalam LLM, RAG, agen otonom, dan rekayasa alur kerja AI.
Developer / 20 Okt 2026
Swarm Agen AI di Alam Liar: Pelajaran Keamanan dari Insiden Hugging Face
Insiden OpenAI–Hugging Face Juli 2026 kini punya laporan resmi: ~1.200 agen bertukar pesan di message board, 700 ikut menyerang. Pelajaran soal handoff, izin, dan tata kelola agen.