𝗔𝗜 𝗕𝘂𝗶𝗹𝘁 𝗠𝘆 𝗨𝗜 𝗶𝗻 𝟮 𝗛𝗼𝘂𝗿𝘀. 𝗧𝗵𝗲𝗻 𝗜 𝗦𝗽𝗲𝗻𝘁 𝟯 𝗪𝗲𝗲𝗸𝘀 𝗙𝗶𝘅𝗶𝗻𝗴 𝗜𝘁.
An AI agent built my UI in two hours. It changed 47 files. It created components, API routes, and a validation library.
I thought it was incredible. I thought I saved a week of work.
Six weeks later, I am still fixing that code. The components work, but my team cannot explain why the code works. The AI did not follow our patterns. It invented new ones. Now we have two different ways to do the same job and zero documentation.
This is the Ghost Implementation problem.
You get code with all the bones but none of the meat. The code compiles and tests pass. But nobody knows why it was written that way. The AI lacks context and the developer lacks understanding.
I see three major issues in my consulting work:
- Implementation Amnesia: Developers reach for AI before they even think through the function requirements.
- Reviewer Blindness: Engineers click accept on AI suggestions without reading them.
- Debugging Atrophy: Developers use AI to fix bugs instead of isolating variables. This turns a 15 minute fix into a 3 hour rabbit hole.
People say AI handles the boilerplate while they handle the architecture. This is a mistake. Boilerplate is the connective tissue of your system. When you skip writing it, you miss the patterns that inform your architecture.
We measure time to ship, but we do not measure time to maintain.
AI tools are built for speed. They are not built for long term stability. If you only measure how fast you ship, you create massive technical debt.
How to stay sharp while using AI:
- Explain it twice: If you cannot explain why a tool works without looking at docs, you have a gap.
- Build a dumb project: Code one small project without AI. Keep your manual skills alive.
- Keep an architecture log: Write three sentences for every big decision. State what you chose, what you rejected, and why.
- Track your dependency: Rate your sessions from 1 to 5. If you rely on AI too much, you are losing your edge.
Do not just be the person who approves AI suggestions. Be the person who understands the system.
Look at your last AI pull request. Try to explain the state management out loud. If you cannot do it, you have a Ghost Implementation.
How has AI changed your debugging process? Let me know in the comments.
AI membuat UI saya dalam 2 jam, lalu saya menghabiskan 3 minggu untuk memperbaikinya
Kita semua pernah melihat demonya. Anda mengetik sebuah prompt, dan boom, sebuah dashboard yang indah muncul. Saya mencobanya. Rasanya seperti sihir... sampai akhirnya tidak lagi.
Fase Bulan Madu
Beberapa minggu yang lalu, saya memutuskan untuk mencoba pendekatan baru dalam membangun antarmuka pengguna (UI). Alih-alih menulis setiap baris CSS dan komponen React secara manual, saya memutuskan untuk menggunakan bantuan AI.
Saya menggunakan alat seperti v0.dev dan Claude. Saya mengetikkan prompt seperti: "Buatlah dashboard admin yang modern dengan sidebar yang dapat diciutkan, grafik pendapatan menggunakan Recharts, dan tabel transaksi terbaru menggunakan Tailwind CSS."
Dalam waktu kurang dari 2 jam, saya memiliki sesuatu yang terlihat sangat profesional. Warnanya serasi, tata letaknya bersih, dan komponennya terlihat sangat canggih. Saya merasa seperti seorang pengembang super.
Realitas yang Sebenarnya
Namun, kegembiraan itu tidak bertahan lama. Masalah mulai muncul saat saya mencoba mengintegrasikan kode tersebut ke dalam basis kode (codebase) aplikasi nyata saya.
1. Kode "Frankenstein"
Kode yang dihasilkan AI terlihat bagus di permukaan, tetapi di dalamnya adalah kekacauan. AI tidak tahu tentang sistem desain (design system) yang sudah saya bangun. Ia menggunakan variabel warna yang berbeda, margin yang tidak konsisten, dan struktur komponen yang sama sekali tidak mengikuti pola yang saya gunakan.
Hasilnya? Saya menghabiskan waktu berjam-jam hanya untuk menyelaraskan gaya AI agar sesuai dengan komponen yang sudah ada.
2. Kesenjangan Aksesibilitas
Ini adalah masalah besar. AI sangat mahir membuat sesuatu yang terlihat bagus, tetapi sering kali mengabaikan bagaimana sesuatu bekerja bagi semua orang.
Komponen yang dihasilkan tidak memiliki label ARIA yang tepat, navigasi keyboard-nya berantakan, dan kontras warnanya sering kali tidak memenuhi standar WCAG. Memperbaiki aksesibilitas pada UI yang kompleks jauh lebih sulit daripada membangunnya dari awal.
3. Mimpi Buruk Responsif
Meskipun AI mengklaim menggunakan Tailwind CSS yang responsif, implementasinya sering kali dangkal. Layout-nya mungkin terlihat bagus di layar desktop standar, tetapi saat saya mencoba membukanya di perangkat seluler atau layar ultra-lebar, semuanya berantakan. Ada elemen yang tumpang tindih dan padding yang tidak masuk akal.
4. Neraka Manajemen State
AI cenderung menulis kode yang sangat terisolasi. Ia menggunakan useState untuk segala hal di dalam setiap komponen. Dalam aplikasi nyata, saya perlu mengintegrasikan UI ini dengan state management global saya (seperti Redux atau Zustand).
Mengubah komponen "mandiri" yang dibuat AI menjadi komponen yang terhubung dengan data aplikasi saya adalah pekerjaan yang sangat melelahkan.
Pelajaran yang Dipetik
Pengalaman ini mengubah cara saya memandang AI dalam pengembangan UI.
- AI adalah Co-pilot, bukan Pilot: AI sangat hebat untuk membuat prototipe cepat atau memberikan ide tata letak. Namun, jangan pernah membiarkannya memegang kendali penuh atas kode produksi Anda.
- Gunakan AI untuk Komponen Kecil: Alih-alih meminta "seluruh dashboard", mintalah "sebuah tombol dengan gaya X" atau "sebuah kartu profil". Ini jauh lebih mudah untuk dikelola.
- Audit Secara Manual: Setiap baris kode yang dihasilkan AI harus diperiksa secara ketat untuk aksesibilitas, performa, dan konsistensi desain.
AI memang bisa membangun UI dalam 2 jam, tetapi jika Anda tidak berhati-hati, Anda akan menghabiskan sisa hidup Anda memperbaikinya.