AI untuk coding paling terasa manfaatnya saat pekerjaan sudah punya arah. Ia bisa membantu membaca error, membuat draft fungsi, menjelaskan kode lama, menulis test, sampai mencari pola refactor yang lebih rapi.
Tapi ada jebakan yang sering terjadi: karena AI bisa menjawab cepat, kita jadi ikut terburu-buru. Kode yang kelihatan benar langsung ditempel, lalu baru sadar ada behavior yang berubah, dependency yang tidak cocok, atau pola project yang dilanggar.
Cara pakai AI untuk coding yang sehat bukan "suruh AI mengerjakan semuanya". Cara yang lebih aman adalah memperlakukannya seperti rekan pair programming yang cepat, tapi tetap perlu brief, batasan, dan review.
Artikel ini adalah halaman induk untuk roadmap AI coding di ISLUP. Setelah membaca ini, kamu bisa lanjut ke artikel debugging dengan AI, review kode dengan AI, membuat test, dan refactor bertahap.
Kapan AI benar-benar membantu coding?
AI paling membantu untuk pekerjaan yang punya konteks cukup jelas. Misalnya kamu punya error message, potongan kode, tujuan fitur, atau contoh output yang diharapkan.
Contoh pekerjaan yang cocok:
- menjelaskan error yang belum kamu pahami
- mencari kemungkinan penyebab bug
- membuat draft fungsi kecil
- mengubah kode repetitif menjadi helper
- menulis test case awal
- merapikan dokumentasi teknis
- membandingkan dua pendekatan implementasi
Yang kurang cocok adalah memberi tugas terlalu besar tanpa konteks. Misalnya: "Buatkan aplikasi marketplace lengkap." Jawaban seperti itu biasanya terlihat meyakinkan, tapi tidak nyambung dengan struktur project, model data, auth, deployment, dan kebutuhan nyata.
AI kuat di draft dan analisis awal. Keputusan akhir tetap harus ada di developer.
Mulai dari konteks project
Sebelum meminta kode, beri konteks singkat. Tidak perlu menempel seluruh repository. Cukup informasi yang membuat AI paham medan kerjanya.
Pola yang bisa dipakai:
Saya sedang mengerjakan [fitur].
Stack: [framework, bahasa, database, library penting].
File yang terkait: [nama file atau potongan struktur].
Tujuan perubahan: [hasil yang diinginkan].
Batasan: [hal yang tidak boleh diubah].
Contoh:
Saya sedang membuat halaman daftar artikel di Next.js App Router.
Stack: TypeScript, Prisma, Tailwind, server component.
Tujuan: menambahkan filter berdasarkan tag tanpa mengubah schema database.
Batasan: jangan ubah desain card, jangan tambah dependency baru.
Tolong beri pendekatan dan bagian kode yang perlu diubah.
Prompt seperti ini biasanya menghasilkan jawaban yang jauh lebih berguna daripada hanya menulis: "Buat filter tag."
Jangan langsung minta kode final
Untuk perubahan yang agak penting, minta AI berpikir dalam tahap.
Misalnya:
Tolong jawab dalam 4 bagian:
1. Dugaan pendekatan terbaik.
2. File yang kemungkinan perlu diubah.
3. Risiko perubahan.
4. Patch kode yang disarankan.
Dengan format seperti ini, kamu bisa menangkap asumsi AI sebelum menerima kodenya. Kalau ada asumsi yang salah, kamu bisa koreksi lebih cepat.
Ini sangat penting di codebase nyata. Kadang AI memilih pendekatan yang secara umum benar, tapi tidak cocok dengan pattern lokal. Misalnya project memakai server action, tapi AI malah menyarankan API route. Atau project memakai Prisma adapter tertentu, tapi AI memberi contoh koneksi database generik.
Pakai AI untuk membaca kode lama
Salah satu penggunaan AI yang sering lebih aman daripada "buatkan kode" adalah "jelaskan kode ini".
Prompt:
Tolong jelaskan alur kode ini dengan bahasa sederhana.
Fokus pada:
- data masuk dari mana
- validasi terjadi di mana
- side effect apa yang terjadi
- bagian mana yang paling berisiko kalau diubah
Ini berguna saat kamu masuk ke file lama, route yang panjang, atau komponen yang dibuat oleh orang lain. AI bisa membantu membuat peta awal, lalu kamu tetap mengecek langsung di editor.
Kalau penjelasannya terasa terlalu percaya diri, minta AI menunjuk baris atau potongan kode yang menjadi dasar kesimpulannya. Jawaban yang baik biasanya bisa menunjukkan bukti dari kode, bukan hanya opini.
Saat debugging, kirim gejala lengkap
Untuk debugging, jangan hanya kirim pesan error. Sertakan situasi saat error muncul.
Minimal berikan:
- error message lengkap
- langkah reproduksi
- potongan kode terkait
- perubahan terakhir sebelum error muncul
- versi framework atau library jika relevan
- hasil yang kamu harapkan
Prompt:
Saya mendapat error ini saat membuka /tutorials.
[tempel error]
Langkah reproduksi:
1. Jalankan npm run dev.
2. Buka /tutorials.
3. Klik filter tag.
Perubahan terakhir: saya menambahkan query berdasarkan searchParams.
Tolong bantu cari 3 kemungkinan penyebab, urutkan dari yang paling mungkin, lalu beri cara mengeceknya.
Perhatikan kalimat terakhir: minta cara mengecek. Jangan hanya minta solusi. Dengan begitu kamu tidak cuma menerima jawaban, tapi juga punya jalan untuk membuktikan apakah jawaban itu benar.
Minta test sebelum percaya
AI bisa menulis kode yang kelihatan rapi tapi belum tentu aman. Salah satu cara menguncinya adalah meminta test.
Prompt:
Setelah memberi perubahan kode, tolong buat test case untuk:
- input normal
- input kosong
- input yang tidak valid
- edge case yang sering terlewat
Untuk UI, test tidak selalu harus unit test. Kadang checklist manual juga cukup:
- buka halaman desktop
- buka halaman mobile
- coba state kosong
- coba data panjang
- coba network lambat
- cek console error
Yang penting ada proses verifikasi. AI bukan pengganti test. AI membantu kita menyusun test lebih cepat.
Batasi ukuran perubahan
Kesalahan paling umum saat memakai AI untuk coding adalah membiarkan perubahan terlalu luas.
AI kadang ingin "sekalian merapikan" banyak hal: rename variabel, ubah struktur folder, tambah helper, ubah style, dan memperbaiki hal yang tidak diminta. Di project kecil mungkin masih aman. Di project aktif, ini bisa membuat review susah.
Gunakan batasan:
Tolong ubah sesedikit mungkin.
Jangan refactor bagian yang tidak terkait.
Jangan tambah dependency.
Kalau perlu perubahan besar, jelaskan dulu alasannya sebelum memberi kode.
Kalimat seperti ini membantu menjaga AI tetap fokus.
Workflow aman memakai AI untuk coding
Pakai urutan sederhana ini:
- Jelaskan tujuan dan konteks.
- Minta rencana singkat.
- Cek apakah rencana sesuai project.
- Minta patch kecil.
- Jalankan lint, test, atau preview.
- Review perubahan seperti review PR.
- Baru lanjut ke perubahan berikutnya.
Untuk pekerjaan besar, pecah menjadi beberapa langkah. Misalnya jangan langsung "buat dashboard admin lengkap". Pecah menjadi layout, tabel, form, validasi, action, lalu state kosong.
AI sangat kuat kalau tugasnya kecil dan jelas.
Kesalahan yang perlu dihindari
Pertama, menempel data sensitif. Jangan kirim .env, token, private key, data pelanggan, atau informasi internal yang tidak perlu.
Kedua, menerima kode tanpa membaca. Kalau kamu tidak paham kode yang masuk, kamu akan kesulitan saat bug muncul.
Ketiga, memakai API yang tidak sesuai versi. AI bisa memberi contoh dari versi library yang berbeda. Selalu cek dokumentasi atau file lokal project.
Keempat, tidak mencatat keputusan. Kalau AI membantu memilih pendekatan, tulis alasan singkat di PR, issue, atau catatan internal. Ini membantu saat perubahan perlu ditinjau lagi.
Lanjut belajar dari mana?
Kalau kamu baru mulai, urutannya begini:
- Baca cara debugging dengan AI.
- Latih review kode dengan AI.
- Pakai AI untuk membuat test.
- Baru pakai AI untuk refactor.
Urutan ini lebih aman daripada langsung meminta AI membangun fitur besar. Kamu akan belajar melihat pola jawaban AI: mana yang berguna, mana yang terlalu umum, dan mana yang harus dicek ulang.
Kesimpulan
AI untuk coding bukan tombol autopilot. Ia lebih mirip alat bantu berpikir yang sangat cepat.
Hasilnya bagus kalau brief-nya jelas, konteksnya cukup, perubahan dibatasi, dan output-nya tetap dicek. Kalau dipakai seperti itu, AI bisa membuat proses coding lebih ringan tanpa membuat developer kehilangan kendali atas codebase.