Sebuah Dokumentasi Terkait Pembelajaran Penulis di Coding Camp 2025 Powered by DBS Foundation dan Dicoding
Dunia digital yang kita nikmati hari ini tak lepas dari evolusi teknologi web. Namun bagi saya, evolusi itu tidak hanya terjadi di luar sana, tetapi juga di dalam diri. Sebelum memulai perjalanan di bootcamp full-stack Dicoding, saya sudah lebih dulu berkenalan dengan HTML, CSS, dan dasar-dasar JavaScript melalui pembelajaran mandiri di internet. Saya sudah paham konsep dasar seperti API serta pemisahan frontend dan backend.Â
Namun, pengetahuan itu terasa seperti kepingan puzzle yang berserakan. Saya tahu "apa", tapi sering kali tidak yakin dengan "mengapa" dan "bagaimana cara terbaiknya". Perjalanan di Dicoding inilah yang membantu saya menyusun kepingan-kepingan itu menjadi sebuah gambaran utuh, mengubah fondasi otodidak menjadi kemampuan untuk merancang arsitektur aplikasi yang sesungguhnya.
Menyusun Fondasi: Dari "Tahu" Menjadi "Paham Best Practice"
Meskipun materi awal seperti "Dasar Pemrograman JavaScript" bukanlah hal yang sepenuhnya baru, modul-modul ini memberikan nilai yang tak saya dapatkan di YouTube: struktur. Konsep-konsep yang tadinya saya pahami sepotong-sepotong, akhirnya terhubung dengan benang merah yang jelas. Lebih dari itu, saya mulai diperkenalkan dengan best practice---cara menulis kode yang tidak hanya berjalan, tapi juga efisien, mudah dibaca, dan terstruktur. Ini adalah fondasi profesional pertama saya.Â
Seiring pendalaman materi frontend, pemahaman saya tentang API pun meningkat. Bukan lagi sekadar tahu teorinya, tetapi melalui studi kasus di Dicoding, saya benar-benar mengerti cara terbaik menggunakannya. Saya melihat bagaimana data diambil secara asinkron untuk menciptakan pengalaman pengguna yang modern, sebuah praktik yang menjadi standar industri saat ini.Â
Proyek Puncak (Capstone): FRUCH, Web-App Pendeteksi Tingkat Kematangan Buah Â
Semua ilmu itu akhirnya diuji dalam sebuah proyek puncak yang ambisius: FRUCH (Link Website FRUCH - Fruit Check). Proyek ini menjadi lompatan besar bagi saya, karena untuk pertama kalinya saya mengintegrasikan web dengan kecerdasan buatan (AI/ML). Hasilnya dapat Anda lihat pada tautan $ https://dicoding-milestone-fruch.vercel.app/.Â
Peran saya di sini berfokus pada sisi backend dan arsitektur web. Saya bertanggung jawab untuk:Â
- Merancang dan menyusun struktur file proyek agar mengikuti best practice arsitektur MVC (Model-View-Controller).
- Mengelola dan mengoordinasikan tim agar proses kerja antara frontend, backend, dan tim ML berjalan sinergis.
- Membangun API untuk fungsionalitas inti seperti registrasi, login, mengambil riwayat hasil pemindaian, dan menghapus data.
- Menghubungkan aplikasi web dengan database menggunakan Vercel NeonDB dan Vercel Blob untuk penyimpanan.
- Melakukan proses deployment akhir ke Vercel.
Tantangan teknis terbesar sekaligus yang paling menarik adalah integrasi model AI. Berkat arahan mentor, kami menemukan solusi yang efisien. Tim ML mengekstrak model deteksi kematangan buah ke dalam format TensorFlow.js (TFJS). Kemudian, saya tidak memanggilnya melalui API, melainkan menyematkan (embed) model tersebut langsung di dalam aplikasi Next.js dan mengaksesnya menggunakan fungsi TypeScript. Ini adalah pendekatan cerdas yang membuat proses deteksi oleh pengguna terasa instan.Â