Offside adalah peraturan olahraga yang paling rumit. Banyak yang salah kaprah tentang offside dalam sepakbola. Sebagian orang hanya tau offside itu saat menerima bola di belakang posisi bek, padahal ga sesederhana itu. Bahkan ada akun sosmed bikin video Reels yang memutar-balikkan definisi offside hanya karena tim kesayangannya diuntungkan atau dirugikan. Dia…
Akhirnya kelar juga part 2 lanjutan dari tulisan sebelumnnya tentang opini pribadi gw terhadap kesalahan junior software engineer🥳. Seperti yang udah gw tuliskan sebelumnya, tulisan ini dibagi 2 part karena ternyata lumayan banyak point of view gw terkait hal ini. Beberapa poin juga bagian dari kesalahan yang pernah gw lakukan dulu😅. Jadi kita saling…
Junior itu adalah jabatan entry level seseorang yang memasuki karir secara profesional. Hampir semua orang yang berkarir di bidang programming pernah berada di posisi junior. Sebelum akhirnya secara bertahap naik ke posisi yang lebih tinggi. Ga ada patokan sih junior itu sampai berapa tahun, tapi umumnya sekitar 2 tahunan. Yang kurang dari 2 tahun ada, dan yang…
Mediator Design Pattern juga memiliki nama lain, yaitu Controller atau Intermediary object karena tugasnya hanya sebagai penghubung antar dependency. Seperti Controller pada pola MVC yang isinya ga ada logic selain memanggil dependency object terkait. Mediator Design Pattern konsepnya seperti Orchestrator Saga Pattern pada distributed system, di mana terdapat…
Beberapa tahun belakangan Observer Design Pattern kembali populer digunakan dalam mengembangkan aplikasi. Observer Design Pattern cukup berguna terutama pada distributed system, di mana dengan Observer Design Pattern kita bisa membuat dependency antar object jadi berkurang sehingga logic antar dependency object lebih sederhana. Jadi komunikasi antar dependency…
Penggunaan Chain of Responsibility (CoR) sebenarnya tidak cukup populer karena cukup kompleks untuk system yang sederhana. Tapi menurut gw ini layak untuk dipertimbangkan ketika system yang kita bangun mulai kompleks. Apalagi kalau kita ingin mengembangkan library pihak ketiga yang nantinya akan dipakai oleh banyak orang. Tentu kita harus membuat library yang…
“Bahasa” dalam software engineering adalah perantara antara manusia dengan mesin agar dapat berkomunikasi mengirimkan instruksi yang diinginkan terhadap program yang dibuat. Dalam software engineering, pemilihan penggunaan bahasa cukup penting saat memulai project. Pilihan bahasa yang ingin digunakan perlu disesuaikan dengan produk yang ingin dikembangkan. Right…
Gw sedang berada di fase Quarter Life Crisis. Fase di mana gw menghadapi krisis terhadap kehidupan yang dijalani di usia seperempat abad. Menurut beberapa penelitian sebagian besar millennials pasti pernah mengalaminya. Ini adalah periode refleksi diri yang mendalam menjalani ketidakpastian lika-liku kehidupan dalam melakukan pencarian jati diri tingkat lanjut…
Pada Update Anomaly, selain Lost Updates (Single Anti-Dependency Cycle) juga ada Write Skew. Write Skew adalah anomaly yang terjadi ketika keputusan untuk mengubah data diambil dari pembacaan dan perubahan sebelumnya yang dilakukan secara serentak oleh lebih dari satu sesi sehingga antar sesi tidak mengetahuinya dan terjadi hal yang tidak diinginkan pada data…
Java menyimpan kumpulan value secara native ke dalam Array. Tapi masalahnya adalah Array itu fixed size dan menyimpan value berdasarkan index. Java menyediakan utilitas untuk menyelesaikan permasalahan itu dengan beberapa Collection yang bisa digunakan untuk kasus yang spesifik. Value yang disimpan jadi lebih dinamis ukurannya dan diolah menggunakan berbagai…