Aku suka ngoding dan membuat aneka macam program. Terkadang, aku mencatat dan mengulas karyaku di blogku. Berikut beberapa program/proyek yang pernah/sedang kukerjakan.
Aku pernah ikut magang selama kuliah (KMM/Kuliah Magang Mahasiswa). Setelah lulus S-1, aku menjadi pekerja lepas sebelum/sembari/sesudah kuliah S-2.
Aku membangun bagian back-end untuk mengelola data talenta, perusahaan, pos lowongan pekerjaan, proses perekrutan, dan berita/blog platform di server. Aku juga membuat API endpoint untuk menghubungkan data ke bagian front-end. Bagian back-end juga bertugas menyimpan berkas dan mengambil berkas (sesuai hak akses) dari layanan object storage.
Teknologi: Go, Gin, GORM, PostgreSQL, Cloudflare R2
Aku mengerjakan bagian back-end untuk mengelola data kelas/kursus, video pembelajaran, pengajar, pelajar, dan transaksi pembayaran di server. Aku juga menyusun remote procedure call untuk menghubungkan data ke bagian front-end. Bagian back-end juga bertugas menghubungkan platform ke layanan gerbang pembayaran.
Teknologi: Vercel/Next.js, tRPC, Prisma, Supabase/PostgreSQL, Xendit
Aku membuat bagian back-end untuk mengelola data berita, penulis, fotografer, foto, dan redaksi di server. Aku juga membuat API endpoint untuk menghubungkan data ke bagian front-end.
Teknologi: Google Cloud Platform (GCP), Cloud Run/Go, Cloud DB/PostgreSQL
Aku membuat panel administrator untuk mengelola data doa dan kategorinya di server. Aku juga membuat API endpoint untuk menghubungkan data ke bagian front-end.
Teknologi: JS/Sails.js, MySQL, HTML5/CSS3/JS
Aku memeriksa sistem layanan yang berbasis web ini dari dua sisi: sisi pengguna dan sisi pengembang. Aku memeriksa antarmuka untuk mencari yang hal-hal yang mengganggu pengguna dan memeriksa hal-hal yang membuat lamban dengan bantuan Lighthouse, kemudian memperbaikinya. Aku juga memeriksa kode dan melakukan beberapa refactor untuk mewujudkan pengembangan berkelanjutan.
Teknologi: PHP/CodeIgniter, MySQL, HTML5/CSS3/JS
Aku menyusun program-program untuk membuat soal secara dinamis/prosedural. Program-program ini adalah bagian dari web Team Tanpa Les Indonesia. Aku sudah ingin membuat program sejenis ini sejak lama. Akhirnya, aku menyempatkan diri untuk mulai membuat program pembuat soal yang pertama saat di kereta perjalanan pulang kampung Desember 2024. Berikut program-program yang sudah kubuat sejauh ini:
Aku juga membuat beberapa mod (modifikasi) untuk digunakan dalam Luanti (sebelumnya Minetest). Selain itu, aku juga menjadi pengembang inti dari game engine Luanti/Minetest.
Tulisan tentang kegiatanku dengan Luanti/Minetest lebih lengkap bisa dibaca di sini.
Berikut program yang kubuat sebagai ajang latihan menulis program atau dalam rangka memahami konsep.
Aku mengambil mata kuliah wajib Data Mining/Penambangan Data selama kuliah S-1. Berikut program yang kubuat untuk tugas mata kuliah.
Aku mengambil mata kuliah wajib minat Pengolahan Citra Digital (PCD) selama kuliah S-1. Peminatanku pengolahan citra dan penglihatan komputer (CV). Berikut program dengan bahasa JavaScript dari tugas mata kuliah yang menggunakan bahasa Octave/MATLAB.
Aku terkadang menulis program ketika menjumpai hal-hal yang menurutku menarik untuk dibuat, terlebih yang sampai terpikirkan terus-menerus.
Berikut program kecil-kecilan (karena memang ukurannya kecil) yang pernah kubuat. Program ini kubuat sebagai tantangan kepada diri sendiri untuk membuat karya dengan kode JavaScript sekecil mungkin. Konsep ini terinspirasi dari kompetisi code-golfing JS1k dan JS1024 yang keduanya rutin kuikuti sejak tahun 2015, yaitu membuat demo JavaScript berukuran 1.024 bita ke bawah.
JS1024 adalah kelanjutan dari JS1k setelah penyelenggara JS1k tidak lagi melanjutkan kompetisi tahunan itu.
JS1k adalah kompetisi code-golfing pertama yang kuikuti.
Aku baru mengetahui tentang kompetisi semacam itu setelah acaranya berakhir. Jadi, sambil menunggu tahun depan, aku mencoba membuat beberapa demo.