Feedback Loop Adalah Segalanya
Model AI yang melakukan coding sendiri bukanlah bagian yang menarik. Bagian yang menarik adalah apa yang terjadi setelahnya — setelah kode dihasilkan. Seberapa cepat model bisa tahu apakah kode itu benar? Seberapa ketat feedback loop antara generasi dan validasi?
Loop itu menentukan segalanya. Loop itu menentukan apakah model bisa mengiterasi output-nya sendiri. Loop itu menentukan apakah manusia bisa memercayai output tanpa inspeksi manual. Loop itu menentukan di domain mana coding AI benar-benar bekerja.
Kecepatan loop tidak seragam. Ia mengikuti sebuah spektrum. Dan spektrum itu ditentukan oleh kebenaran yang lebih sederhana: AI bersifat text-native.
Kode backend adalah teks. Respons API adalah teks. Skema database adalah teks. Seluruh domain direpresentasikan dalam string yang bisa dibaca, dihasilkan, dan divalidasi oleh language model tanpa pernah meninggalkan medium aslinya. Bahkan ketika backend melibatkan perintah CLI, perintah-perintah itu adalah teks. Model tidak perlu melihat. Model perlu membaca.
Antarmuka visual berbeda. UI bukanlah gambar statis. UI bersifat temporal. State berubah. Animasi bertransisi. Gestur memicu rangkaian kaskade. Model bisa men-screenshot sebuah tombol tetapi tidak bisa merasakan timing dari sebuah tekanan. Model bisa membaca CSS tetapi tidak bisa menyaksikan easing curve berlangsung seiring waktu. Kebenaran visual bersifat pengalaman, dan pengalaman terjadi dalam waktu.
Backend: Milidetik
Kode backend memvalidasi secara deterministik. Sebuah fungsi memiliki input dan output. Type checker memverifikasi contract pada compile time. Test suite menguji perilaku dalam hitungan milidetik. Sebuah endpoint API mengembalikan respons yang cocok dengan schema atau tidak. Database migration berhasil diterapkan dengan bersih atau di-roll back.
Setiap sinyal validasi bersifat tekstual, deterministik, dan cepat. Model bisa menghasilkan sebuah fungsi, menjalankan type checker, melihat error, dan meregenerasi dalam hitungan detik. Model bisa menulis test, menjalankannya, melihat kegagalan, dan memperbaiki implementasi. Siklus iterasi cukup ketat sehingga model bisa beroperasi secara semi-otonom dalam tugas backend yang terbatas.
Inilah mengapa backend adalah tempat di mana coding AI terasa paling ajaib saat ini. Domain-nya adalah logika murni. Validasi terjadi secara instan. Model tahu kapan ia salah — persis seperti yang coba diberikan oleh deterministic guardrails ke seluruh codebase Anda.
Web: Menit
Pengembangan web menambahkan kebenaran visual. Sebuah komponen bisa memiliki props yang benar dan padding yang salah. Sebuah layout bisa lolos dari setiap type check namun tetap terlihat rusak. Permukaan validasi tidak lagi murni deterministik.
Playwright membantu. Anda bisa merender komponen, men-screenshot-nya, dan membandingkannya dengan baseline. Tetapi ini lambat. Backend test suite berjalan dalam hitungan detik. Playwright visual regression suite berjalan dalam hitungan menit. AI tidak bisa mengiterasi output-nya sendiri pada kecepatan yang sama karena langkah validasi lebih lambat satu orde magnitudo.
Model bisa menghasilkan kode React yang terkompilasi. Model tidak bisa memberi tahu Anda apakah UI yang dihasilkan terlihat benar tanpa menjalankan browser, merender DOM, dan membandingkan piksel. Bottleneck itu nyata. Coding AI untuk web bekerja, tetapi feedback loop-nya lebih longgar.
Mobile: Jam
Mobile menambahkan realitas fisik. Sebuah gestur memiliki timing dan fisika. Sebuah animasi memiliki easing curve yang terasa benar atau salah. Sebuah layar merender secara berbeda di iOS 16 dibanding iOS 18. Bluetooth, kamera, GPS, dan push notification — semuanya memiliki perilaku yang bervariasi berdasarkan perangkat, versi OS, dan skin pabrikan.
Tidak ada cara cepat untuk memvalidasi ini. Unit test mencakup logika bisnis tetapi bukan rasa dari sebuah swipe. UI test di simulator menangkap masalah layout tetapi bukan frame drop di perangkat Android berusia tiga tahun. Validasi nyata membutuhkan build, sign, install, dan interaksi dengan aplikasi di perangkat keras fisik. Feedback loop diukur dalam jam, bukan detik.
Model bisa menghasilkan kode SwiftUI atau Jetpack Compose yang terkompilasi. Model tidak bisa memberi tahu Anda apakah aplikasi itu terasa native. Itu membutuhkan tangan manusia di perangkat nyata. Siklus iterasi terlalu lambat bagi model untuk mengoreksi diri secara efektif — itulah mengapa aplikasi React Native yang dikode AI membutuhkan guardrails untuk scaling.
Apa Arti Spektrum Ini
Coding AI tidak berkembang pada kecepatan kapabilitas model. Ia berkembang pada kecepatan validasi.
Model bisa menulis kode mobile hari ini. Yang tidak bisa dilakukannya adalah mengetahui apakah kode itu bagus. Mengetahui membutuhkan infrastruktur validasi yang tidak dimiliki mobile. Backend memilikinya. Web sedang membangunnya. Mobile tertinggal bertahun-tahun.
Bagi tim yang memilih di mana menerapkan coding AI, jawabannya jelas. Mulailah dari tempat validasi paling cepat. Backend dulu. Web kedua, dengan investasi pada pengujian visual. Mobile terakhir, dengan tangan manusia yang masih melakukan validasi akhir. Biaya pemeliharaan dari pilihan itu bertambah seiring waktu — itulah mengapa versi pertama tidak pernah menjadi masalah sebenarnya.
Model tidak lebih pintar di backend. Ia hanya lebih terinformasi.