Cara Saya Menggunakan AI untuk Merilis Kode
Berhenti mencoba menulis prompt yang cerdas. Mulailah merekayasa konteks.
Kebanyakan orang menggunakan AI dengan cara yang salah. Mereka meminta sebuah fitur dalam satu kalimat. AI mengembalikan kode yang menggunakan pustaka yang salah, merusak konvensi penamaan Anda, dan memunculkan kembali bug lama. Anda menghabiskan sore hari Anda untuk memperbaiki kekacauan tersebut.
AI tanpa konteks adalah pengembang junior yang belum pernah membaca basis kode Anda. Ia melupakan segalanya dari hari kemarin. Anda tidak akan memberikan tiket satu baris kepada karyawan baru dan mengharapkan kode yang sempurna. Anda akan memberi mereka dokumen orientasi.
Saya menggunakan file memori proyek di repositori saya. File ini berfungsi sebagai dokumen orientasi yang dibaca AI setiap saat. File ini berisi aturan khusus proyek yang tidak akan diketahui oleh orang luar:
• Hal yang tidak bisa ditawar: Bagaimana tampilan URL dan bagaimana slug harus sesuai dengan produksi. • Aturan logika: Menurunkan nilai dari konfigurasi alih-alih melakukan hardcoding angka. • Kasus tepi (edge cases): Pengaturan CDN tertentu atau jalur file yang mencegah kerusakan tanpa peringatan.
Setiap kesalahan yang saya buat menjadi satu baris dalam file ini. Hal ini mengubah file tersebut menjadi aset yang terus berkembang. Kualitas output AI meningkat seiring waktu karena saya berhenti mengulang hal yang sama.
Alur kerja saya mengikuti langkah-langkah berikut:
- Bootstrap konteks: Minta AI untuk membuat draf file memori dari kode Anda, lalu Anda mengeditnya.
- Nyatakan kembali tugas: Minta AI untuk merangkum tujuan sebelum ia menulis kode. Ini membantu mendeteksi kesalahan lebih awal.
- Tingkatkan prompt: Tanyakan kepada AI bagian mana dari permintaan Anda yang ambigu.
Gunakan AI untuk tugas-tugas ini:
- Menulis boilerplate dan scaffolding.
- Refaktor yang mengikuti pola.
- Menjelaskan kode yang tidak dikenal.
- Pemindaian mekanis di seluruh repositori.
- Menulis tes dan fixture.
Hindari menggunakan AI untuk tugas-tugas ini:
- Mengambil keputusan arsitektur baru.
- Mengambil keputusan terkait selera atau produk.
- Apa pun yang jika salah akan berakibat fatal/mahal.
- Desain yang kritis terhadap keamanan.
- Peninjauan akhir sebelum merilis.
Disiplinnya sederhana:
- Batasi cakupan tugas. Jangan katakan "bangun fitur ini." Katakan "lakukan perubahan spesifik ini."
- Berikan konteks di awal.
- Verifikasi setiap output. Jalankan build dan baca diff-nya.
- Tinjau seperti PR pengembang junior. Jangan pernah melakukan commit kode tanpa dibaca oleh manusia.
- Masukkan pelajaran kembali ke dalam file konteks Anda.
Daya ungkitnya bukan pada prompt. Daya ungkitnya ada pada konteks yang Anda kelola.
Optional learning community: https://t.me/GyaanSetuAi
