November 1, 2025

Perjalanan Akademik.

Dari D3 di Polinema sampai S1 di UDINUS: sistem apotek yang benar-benar dipakai, kelas online untuk Tugas Akhir, dan skripsi prediksi harga beras.

Proyek kuliah sering dianggap proyek “buang”: dikerjakan demi nilai, dikumpulkan, lalu dilupakan. Tapi kalau aku lihat ke belakang, justru dari proyek-proyek kuliah inilah aku pertama kali belajar membangun sistem utuh, dari database, hak akses, sampai pengguna sungguhan.

Catatan ini merangkum tiga proyek akademik, diurutkan dari D3 sampai S1.


D3 di Polinema — Sistem Apotek yang Benar-Benar Dipakai

Proyek pertama yang terasa “serius” justru bukan tugas kelas. Waktu masih kuliah D3, aku membuat sistem manajemen apotek yang akhirnya benar-benar dipakai di sebuah apotek, bukan sekadar demo di depan dosen.

Masalah yang diselesaikan sangat nyata. Sebelumnya stok, tanggal kedaluwarsa, supplier, dan penjualan tersebar di spreadsheet atau buku catatan. Akibatnya stok asli susah diketahui dan obat yang hampir kedaluwarsa gampang terlewat. Jadi sistemnya mencakup:

  • Manajemen inventaris obat, stok masuk dan stok keluar.
  • Pelacakan obat kedaluwarsa.
  • Data supplier dan pelanggan.
  • Transaksi penjualan dan pembelian, invoice, dan riwayat transaksi.
  • Laporan yang bisa dicetak dan dashboard ringkasan.
  • Login dengan hak akses berbasis role, supaya apoteker dan admin hanya melihat yang relevan.

Stack-nya Laravel + Bootstrap + jQuery. Waktu itu Laravel terasa seperti curang: auth, Eloquent , dan migration sudah tersedia, jadi aku bisa fokus ke logika stok dan transaksi.

Pelajaran terbesarnya: begitu ada pengguna sungguhan, semua asumsi diuji. Logika stok masuk/keluar harus benar, karena selisih sedikit saja berarti uang dan obat yang nggak jelas ke mana.

Detail: Pharmacy System


Tugas Akhir D3 — Online Classroom

Untuk menyelesaikan D3 di Polinema, Tugas Akhir-ku adalah Online Classroom: platform kelas online tempat guru dan siswa bisa berinteraksi secara digital. Waktunya pas dengan masa ketika pembelajaran jarak jauh jadi kebutuhan, dan banyak kelas masih menyambung-nyambung email, chat, dan layanan berbagi file.

Fitur intinya:

  • Role guru dan siswa, masing-masing dengan dashboard sendiri.
  • Manajemen kelas, materi, dan pengumuman.
  • Upload dan pengumpulan tugas.
  • Absensi, diskusi, dan pelacakan aktivitas.

Masih dengan Laravel, Bootstrap, dan jQuery, tapi kali ini tantangannya berbeda: relasi data yang lebih rumit (kelas ↔ tugas ↔ pengguna) dan alur upload file yang harus aman. Aku memakai filesystem Laravel supaya penyimpanan bisa diganti antara lokal dan cloud tanpa mengubah kode.

Detail: Online Classroom


Jeda: Dunia Kerja

Setelah lulus D3, aku masuk dunia kerja dan tenggelam di urusan hosting dan server. Tapi rasa penasaran soal teori di balik semua yang aku bangun nggak pernah hilang, jadi aku lanjut kuliah lagi.


S1 di UDINUS — Skripsi Prediksi Harga Beras

Sekarang aku melanjutkan S1 Teknik Informatika (PJJ) di Universitas Dian Nuswantoro, sambil tetap bekerja. Skripsiku berjudul:

Implementasi Metode Eksponensial Smoothing untuk Prediksi Harga Beras di Jawa Timur

Kali ini dunianya berbeda total: bukan CRUD, melainkan data time series. Yang aku bangun adalah pipeline dari data mentah sampai prediksi:

API harga komoditas (SISKAPERBAPO Jatim)
   │  scrape per tanggal × komoditas × kota
ETL (extract → transform → load)
   │  bersihkan "Rp" & titik, isi nilai kosong
MySQL
   ├── harga harian
   ├── agregasi bulanan (avg/min/max)
   └── hasil forecast + metrik
Forecast (SES / DES)
   │
Dashboard Streamlit

Beberapa hal yang menarik selama mengerjakannya:

  • Sumber data publik. Harga diambil dari API SISKAPERBAPO milik Pemprov Jawa Timur, per kota dan per komoditas. Awalnya hanya beras premium dan medium, lalu pipeline-nya aku generalisasi supaya bisa menampung komoditas lain seperti gula, minyak, telur, dan cabai.
  • Upsert yang idempoten. Setiap tabel punya kunci unik, jadi ETL bisa dijalankan ulang tanpa menghasilkan data ganda.
  • Single vs Double Exponential Smoothing . SES (SimpleExpSmoothing) dan DES (Holt) dari statsmodels dibandingkan per kota, lalu model dengan error terendah (MAPE, selain MAE dan RMSE) dipilih otomatis.
  • Disiplin normalisasi. Min-max scaling hanya di-fit pada data train, lalu dipakai ulang untuk data test. Kelihatannya sepele, tapi di sinilah kebocoran data paling gampang terjadi.
  • Dashboard Streamlit untuk fetch data, analitik harian, agregasi bulanan, forecast, dan perbandingan antar kota.

Skripsinya masih dalam proses. Semoga catatan berikutnya adalah cerita sidang.

Detail: Price Prediction System


Yang Aku Pelajari

  • Pengguna sungguhan adalah guru terbaik. Sistem apotek mengajarkan lebih banyak daripada tugas mana pun, karena kesalahannya langsung terasa.
  • Tugas Akhir melatih cara berpikir sistem, bukan sekadar fitur: role, relasi data, dan alur file.
  • Kuliah lagi setelah bekerja itu rasanya beda. Teori yang dulu terasa abstrak sekarang punya konteks, karena aku sudah pernah menabrak masalahnya di dunia nyata.
  • Data science itu sebagian besar bersih-bersih data. Modelnya cuma beberapa baris, sedangkan ETL dan validasinya yang makan waktu.

Hey! I’m Fanny, the software engineer tending to this digital garden. You can read more about me, or subscribe by email.

Comments