Rabu, 31 Desember 2025

Refleksi Tahun 2025

Halo, halo!

Waktu kurasa cepat sekali berlalu. Ini sudah hari terakhir tahun 2025 Masehi. Seperti tahun lalu, aku ingin bercerita hal-hal yang kualami pada tahun ini. Ada banyak hal yang terjadi pada tahun ini; ada banyak perubahan yang kualami juga. Kita mulai dari perkuliahan mungkin, ya.

Perkuliahan

Alhamdulillah. Aku menyelesaikan studi Magister Ilmu Komputer UI! Aku mengambil topik segmentasi citra satelit untuk tugas akhir, sama dengan skripsiku. Hanya saja, untuk tesisku, segmentasinya lebih dari dua kelas/label. Tesisku menggunakan data segmentasi penutup lahan (sebagian menyebutnya tutupan lahan), sedangkan skripsiku waktu itu menggunakan data segmentasi bangunan (biner: bangunan vs. non-bangunan).

Aku membandingkan ruang warna yang berbeda dalam tahap pra-pengolahan (pre-processing). Total ada tujuh ruang warna yang kubandingkan:

  1. RGB
  2. CMY (lawan dari RGB)
  3. CIE XYZ
  4. HSV
  5. CIE LAB
  6. Ohta
  7. ProLab

Ternyata terdapat perbedaan kinerja model jaringan saraf konvolusional (CNN) untuk tiap ruang warna. Ini yang menjadi hasil percobaan dalam tesisku. (Tentu masih ada banyak hal lain lagi yang kubahas di dalamnya.)

Aku diwisuda pada tanggal 13 September 2025. Alhamdulillah, ayah-ibuku dan juga adik-adikku hadir lengkap. Ada nenek, pakdhe-budhe, dan mas-mbak sepupuku juga yang datang.

Kami makan siang bersama di Amanaia D'mall Depok (dahulu bernama Talaga Sampireun). Eh, ternyata ada teman seangkatan yang juga makan siang di sana bersama ayah-ibu dan saudaranya.

Ada cerita unik mengenai wisuda UI pada periodeku itu. Mungkin teman-teman sudah pernah mendengarnya. Yang belum tahu ini mungkin bisa mencari di media sosial dengan kata kunci "dana abadi wisuda ui".

Pekerjaan

Pertengahan tahun ini, aku mendapat dua pekerjaan yang sifatnya mitra/kontrak. Alhamdulillah, keduanya cukup fleksibel, bahkan aku bisa mengerjakannya dari rumah dan sesuai jam yang kuatur sendiri (asal target pengerjaan tercapai). Keduanya masih berjalan hingga saat ini.

Jam kerja yang fleksibel dan pengerjaan dari rumah memerlukan kedisiplinan yang lebih karena tantangan di rumah juga tidak kalah kuat. Aku menggunakan bekas meja komputer (komputernya sudah dikasihkan kepada orang lain) sebagai "meja kerja" di kamarku. Selain lebih ergonomis dari sisi postur tubuh saat duduk, aku juga jadi punya "ruang khusus" di dalam kamarku khusus terkait urusan pekerjaan.

Lain-Lain

Sudah lama aku tidak ikut mengurus proyek Luanti. Jam rapat rutin yang awalnya dimajukan karena aku bergabung dalam tim pun dikembalikan lagi seperti semula karena aku sudah lama tidak aktif. Namun, aku sempat turut menerjemahkan laman web Luanti ke dalam bahasa Indonesia saat akhirnya fitur terjemahan untuk laman webnya dipasang: luanti-org.github.io#26 (komentar).

Di sisi lain, aku menambahkan modul-modul baru ke halaman depan web Team Tanpa Les Indonesia. Ada dua modul baru, yaitu modul hitung mundur dan modul jadwal belajar UTBK 120 hari. Semoga penambahan ini bisa membantu para siswa lainnya. Oh, iya, yang membuat jadwal bukan aku. Aku hanya menambahkannya ke halaman web.

Bulan ini menjadi bulan ke-25 aku menyelesaikan tantangan bulanan di Duolingo berturut-turut! Aku pertama kali menyelesaikannya pada Desember 2023. Ternyata sudah dua tahun lebih aku mengikutinya. Oh, iya. Aku mengambil kursus bahasa Prancis dan Jepang. Aku sudah pernah belajar bahasa Prancis pada waktu SMA (sebagai mata pelajaran lintas minat). Jadi, aku mengambilnya agar aku tidak lupa dengan kosakatanya.

Penutup

Tahun ini penuh dengan perubahan yang kualami. Semoga hal-hal baik terus berdatangan pada tahun depan dan tahun-tahun berikutnya, ya. Aamiin.

Demikian tulisan penutup tahun 2025 Masehi dariku. Sampai jumpa tahun depan, semuanya!

Minggu, 30 November 2025

Kerapuhan Prasarana Internet

Halo! Aku ingin cerita sedikit tentang kerapuhan prasarana internet karena gangguan-gangguan yang baru-baru ini terjadi.

Apa saja kejadiannya?

Mungkin masih teringat gangguan-gangguan di banyak layanan di internet beberapa waktu lalu. Berikut beberapa yang kualami langsung:

Mungkin masih ada yang lain yang tidak kualami secara langsung.

Siapa mereka?

Amazon Web Service (AWS) menjadi salah satu layanan prasarana yang dipilih oleh banyak penyedia layanan untuk menginangkan (to host) layanan mereka. Jadi, saat AWS mengalami gangguan, mereka juga kena akibatnya. Contohnya ada Amazon dan Alexa itu sendiri, Canva, Snapchat, Slack, bahkan sampai permainan seperti Duolingo, Fortnite, dan Roblox.

GitHub menjadi layanan pilihan banyak orang untuk menginangkan repositori Git, sistem pengontrol versi. Hampir semua pengembang (developer) mengetahuinya. Aku pun juga menggunakannya, baik untuk keperluan pribadi maupun untuk keperluan pekerjaan. Waktu itu, aku sedang melakukan operasi push (mengirimkan perubahan dari komputerku ke repositori tujuan) saat melihat bahwa layanan GitHub sedang mengalami gangguan (tidak bisa push dan pull).

Cloudflare awalnya menjadi pilihan populer untuk mengamankan jaringan dari luar/internet. Banyak situs web yang menggunakan layanannya untuk mencegah serangan siber. Sayangnya, yang seharusnya melindungi itu justru membuat yang dilindunginya tidak bisa diakses sama sekali pada waktu itu. Yang terdampak ada Canva (lagi), Twitter, Uber, AWS (juga), PayPal, ChatGPT/OpenAI, dan lain-lain.

Apa yang bisa dipetik?

Banyaknya gangguan yang terjadi secara berturut-turut ini mengingatkan kita tentang pentingnya desentralisasi internet, baik prasarana maupun sarananya. Kita terlalu "setia" kepada satu layanan, padahal layanan itu juga "setia" kepada satu layanan prasarana, dan seterusnya. Hal ini memang cara paling mudah dan murah. Namun, kita akhirnya merasakan getahnya.

Perlu diketahui bahwa AWS menguasai 30% pasar layanan prasarana internet. Hal ini diikuti Microsoft Azure (20%), Google Cloud (13%), dan Alibaba Cloud (4%). Meski di bawah 50%, sebanyak 30% pasar itu terdiri dari banyak perusahaan besar atau layanan vital seperti kesehatan dan keamanan.

Begitu juga dengan Cloudflare. Walau mungkin data situs web yang menggunakan reverse proxy kurang lengkap, ada sumber yang mengatakan bahwa Cloudflare digunakan oleh 20,5% situs web secara keseluruhan atau 81,6% situs web yang menggunakan reverse proxy. Persentase yang sangat besar ini juga menunjukkan kerapuhan layanan di internet yang kita pakai sehari-hari.

Apa yang bisa kita lakukan?

Yang jelas, ketika hampir semua (atau bahkan semua) bergantung kepada satu pihak, terdapat kerapuhan yang sangat besar terhadap gangguan/masalah yang mungkin terjadi. Dalam kasus ini, saat satu pihak yang dianggap akan selalu dapat diandalkan ini ternyata mengalami gangguan juga (apalagi yang tidak sebentar), semua terkena getahnya.

Untuk para pengembang (developer), pertimbangkan pula alternatif layanan yang tersedia. Kita perlu mempelajari dan mempersiapkan rencana/prosedur khusus saat layanan yang kita gunakan untuk menjalankan operasional ini mengalami gangguan. Hal ini meliputi variasi produk dari penyedia yang sama ataupun produk lain dari penyedia lain.

Untuk para pengguna/masyarakat secara umum, cadangan adalah hal yang wajib disiapkan. Kita tidak pernah tahu kapan gangguan akan terjadi. Jangan sampai pekerjaan (atau keselamatan) diri kita terancam hanya karena satu pihak mengalami gangguan.

Penutup

Aku teringat strip komik yang juga kembali tenar saat terjadi gangguan berturut-turut waktu itu: komik xkcd yang berjudul "Dependency" (2020) berikut:

Tumpukan balok-balok dengan judul Semua Prasarana Digital Modern dan panah yang menunjuk ke satu balok pipih yang menyangga di bawah semuanya dan bertuliskan sebuah proyek yang secara sukarela dikelola oleh seseorang di Nebraska sejak 2003
Gambaran kerapuhan prasarana digital modern

Omong-omong, tahukah kalian kalau tiap perusahaan, bahkan tiap individu, mengelola server sendiri pada awal perkembangan internet? Belum ada layanan "awan" ("cloud") waktu itu sehingga gangguan di satu layanan tidak terlalu berdampak ke layanan lainnya.

Sampai jumpa!

Jumat, 24 Oktober 2025

Seperempat Abad

seperempat abad sudah
semoga kuat tetap lanjut

banyak jenjang didik sudah
harap belajar tetap berlanjut

beragam hal kualami sudah
berdoa hati tetap kukuh

aneka tantangan tampak sudah
kuatkan diri tetap tangguh

usaha, harap, doa sudah
semua dilakukan sepenuh

Alhamdulillah dan Bismillah

Biasanya orang bilang, "Wah, tidak terasa, ya." Hanya saja, aku merasakan semua kejadian yang kualami. Walau sebagian besar hal itu tidak lagi kuingat, dampaknya terhadap pembentukan jati diriku tetap ada. Aku yang saat ini adalah hasil dari 25 tahun perjalanan hidup. Keinginanku hanya satu: bisa menjalani hidup sesuai dengan pedoman-Nya—sederhana, tetapi memang tidak semudah membalikkan telapak tangan.

Semoga hidup kita dipenuhi dengan kebaikan dan dijauhkan dari keburukan.

Salam!

Selasa, 30 September 2025

Jika dan Hanya Jika

Halo!

Pernahkah kalian dengar ungkapan jika dan hanya jika? Kata-kata ini biasanya muncul dalam konteks matematika, logika, atau hukum. Istilah ini terdiri dari dua bagian, yaitu (1) jika dan (2) hanya jika.

Kata jika menjadi kata depan yang menandai sebab dari suatu kejadian. Contohnya, dalam kalimat, "Aku akan tetap pergi jika dia tidak mengabariku," klausa dia tidak mengabariku menjadi sebab/faktor terjadi aku akan tetap pergi. Namun, hal sebaliknya tidak demikian. Kejadian aku akan tetap pergi belum tentu selalu disebabkan oleh dia tidak mengabariku.

Secara matematis, operasi jika atau implikasi disimbolkan dengan panah kanan (→). Contohnya, AB. Yang harus diperhatikan adalah bahwa operasi ini hanya bernilai salah saat B salah, padahal A benar. Cara mengingatnya adalah dengan selalu berpikir bahwa (1) penyebab/faktor suatu kejadian bisa ada lebih dari satu dan (2) definisi faktor itu memang hal yang menyebabkan sesuatu terjadi.

Sebaliknya, istilah hanya jika adalah kebalikan arah dari jika. Operasi ini disimbolkan dengan panah kiri (←). Contohnya, AB. Dalam matematika, operasi pembalikan ini disebut konvers dari suatu pernyataan. Yang harus diperhatikan adalah bahwa implikasi tidak sama dengan hasil konversnya, yaitu suatu kejadian belum tentu akibat dari faktor yang dimaksud (bisa disebabkan oleh faktor lain).

Ringkasnya, tabel kebenaran dari implikasi dan konversnya adalah berikut:

A B AB
(implikasi)
AB
(konvers)
benarbenarbenarbenar
benarsalahsalahbenar
salahbenarbenarsalah
salahsalahbenarbenar

Terakhir, yang dimaksud jika dan hanya jika (↔) adalah hasil konjungsi (operasi dan) dari operasi jika dan operasi hanya jika. Dari tabel di atas, yang bernilai benar untuk keduanya hanya saat A dan B benar. Karena itulah, operasi ini juga bisa disimbolkan dengan sama dengan tiga (≡).

Jadi, kalau bertemu kata-kata jika dan hanya jika, jangan bingung lagi, ya, dengan maksudnya. Semoga bermanfaat!

Minggu, 31 Agustus 2025

꧁ꦮꦪꦃꦲꦺꦢꦢꦶꦱꦶꦗꦶꦧꦼꦧꦉꦁꦔꦤ꧀꧂

ꦕꦼ()(ka)ꦏ꧀ꦧ(k ba)ꦲꦺ(he)ꦠꦸ(tu)ꦭꦶ(li)(sa)ꦤ꧀ꦲꦶ(n hi)ꦏꦶ(ki)(.)

ꦲꦸ(hu)ꦮꦶ(wi)ꦱ꧀ꦮ(s wa)ꦪꦃ(yah)ꦲꦺ(he)(ha)(wa)ꦏ꧀ꦏꦺ(k-ke)ꦝꦺ(dhe)ꦮꦺ(we)(da)ꦢꦶ(di)ꦱꦶ(si)ꦗꦶ(ji)(.)(ha)(ja)(nga)ꦤ꧀ꦠꦶ(n-ti)(ha)(na)ꦱꦶꦁ(sing)(ma)ꦭꦃ(lah)ꦚꦼ(nyê)ꦫꦁ(rang)(ka)ꦤ꧀ꦕ(n-ca)ꦤꦺ(ne)ꦝꦺ(dhe)ꦮꦺ(we)(,)(pa)(dha)(pa)(dha)(ra)ꦏ꧀ꦪ(k-ya)ꦠ꧀(t,)(pa)(dha)(pa)(dha)ꦮꦺꦴꦁ(wong)ꦕꦶ(ci)ꦭꦶ(li)ꦏ꧀꧈(k.)

(ha)(wa)ꦏ꧀ꦏꦺ(k-ke)ꦝꦺ(dhe)ꦮꦺ(we)ꦏꦸ(ku)ꦢꦸ(du)ꦲꦺ(he)ꦭꦶꦁ(ling)ꦪꦺ(ye)ꦤ꧀ꦩꦸꦁ(n mung)ꦱꦸꦃ(suh)ꦲꦺ(he)(ha)(wa)ꦏ꧀ꦏꦺ(k-ke)ꦝꦺ(dhe)ꦮꦺ(we)ꦲꦶ(hi)ꦏꦸ(ku)ꦮꦺꦴꦁ(wong)ꦮꦺꦴꦁ(wong)ꦒꦼ()ꦝꦺ(dhe)ꦱꦶꦁ(sing)ꦢꦸ(du)ꦮꦺ(we)ꦤꦶ(ni)ꦮꦼ()ꦮꦼ()ꦤꦁ(nang)ꦏꦁ(kang)ꦒꦺꦴ(go)ꦔꦸ(ngu)ꦫꦸ(ru)ꦱ꧀ꦏ(s ka)ꦧꦸ(bu)ꦠꦸ(tu)(ha)ꦤ꧀ꦤꦺ(n-ne)ꦮꦺꦴꦁ(wong)ꦮꦺꦴꦁ(wong)(ka)ꦧꦺꦃ(beh)(,)(na)ꦔꦶꦁ(nging)(ma)ꦭꦃ(lah)ꦩꦸꦁ(mung)(ga)ꦮꦺ(we)ꦱꦸ(su)ꦒꦶꦃ(gih)ꦝꦺ(dhe)ꦮꦺ(we)ꦏ꧀ꦏꦺ(k-ke)ꦭꦤ꧀(lan)(ka)ꦤ꧀ꦕ(n-ca)(ka)ꦤ꧀ꦕ(n-ca)ꦤꦺ(ne)(.)

ꦕꦺꦴ(co)ꦤ꧀ꦠꦺꦴ(n-to)ꦤꦺ(ne)ꦱꦶꦁ(sing)(ga)ꦮꦺ(we)ꦱꦼ()ꦝꦶꦃ(dhih)ꦲꦶ(hi)ꦏꦸ(ku)(,)ꦲꦸ(hu)ꦮꦶ(wi)ꦱ꧀ꦲ(s ha)ꦏꦺꦃ(keh)(ka)ꦧꦂ(bar)ꦱꦶꦁ(sing)(ma)ꦭꦃ(lah)ꦔꦺꦴ(ngo)ꦩꦺꦴꦁ(mong)ꦪꦺ(ye)ꦤ꧀ꦫ(n ra)ꦏ꧀ꦪ(k-ya)ꦠ꧀ꦱꦶꦁ(t sing)ꦔꦺꦴ(ngo)ꦧꦺꦴꦁ(bong)ꦒꦼ()ꦝꦸꦁ(dhung)ꦭꦤ꧀(lan)ꦥꦿ(pra)(sa)(ra)(na)(.)(ha)(wa)ꦏ꧀ꦏꦺ(k-ke)ꦝꦺ(dhe)ꦮꦺ(we)(ba)ꦲꦺ(he)ꦮꦶ(wi)ꦱ꧀ꦱ(s sa)ꦩ꧀ꦧ(m-ba)ꦠ꧀ꦉ(t rê)(ga)()(nga)(la)ꦫꦁ(rang)(.)(ka)(ya)ꦔꦺꦴ(ngo)ꦤꦺꦴ(no)(ha)()ꦥ꧀ꦢꦶ(p di)ꦧꦸ(bu)ꦮꦁ(wang)ꦏꦁ(kang)ꦒꦺꦴ(go)ꦔꦺꦴ(ngo)ꦧꦺꦴꦁ(bong)(.)(ra)ꦏ꧀ꦪ(k-ya)ꦠ꧀ꦢꦶ(t di)(ga)ꦮꦺ(we)(pa)ꦢꦸ(du)ꦝꦺ(dhe)ꦮꦺ(we)ꦝꦺ(dhe)ꦮꦺ(we)(.)

ꦱꦶꦁ(sing)ꦲꦺꦴ(ho)(ra)ꦭꦸ(lu)ꦩ꧀ꦫꦃ(m-rah)ꦏꦸ(ku)ꦮꦶ(wi)(,)(ka)ꦧꦂ(bar)(ka)ꦧꦂ(bar)(ra)ꦏ꧀ꦪ(k-ya)ꦠ꧀ꦭ(t la)ꦒꦶ(gi)ꦥꦿꦺꦴ(pro)ꦠꦺ(te)ꦱ꧀ꦩ(s ma)ꦭꦃ(lah)ꦲꦺꦴ(ho)(ra)ꦗꦼ()ꦝꦸ(dhu)ꦭ꧀ꦲꦶꦁ(l ing)ꦠꦶ(ti)ꦥ꦳ꦶ(vi)(la)ꦤ꧀ꦭꦶ(n li)(ya)ꦤꦺ(ne)(,)(na)ꦔꦶꦁ(nging)(ka)ꦧꦂ(bar)ꦏꦺꦴ(ko)ꦧꦺꦴ(bo)(nga)ꦤ꧀ꦩ(n ma)ꦭꦃ(lah)ꦗꦼ()ꦝꦸꦭ꧀(dhul)(.)ꦏꦸ(ku)ꦮꦶ(wi)(ba)ꦲꦺ(he)ꦮꦶ(wi)ꦱ꧀ꦮ(s wa)ꦪꦃ(yah)ꦧꦼ()ꦔꦶ(ngi)(na)ꦭꦶ(li)(ka)(ra)ꦏ꧀ꦪ(k-ya)ꦠ꧀ꦱꦶꦁ(t sing)ꦥꦿꦺꦴ(pro)ꦠꦺ(te)ꦱ꧀ꦮꦶ(s wi)ꦱ꧀ꦧꦸ(s bu)(ba)ꦫꦤ꧀(ran)(.)ꦲꦺ(he)ꦭꦶꦁ(ling)!(!)ꦱꦶꦁ(sing)ꦔꦺꦴ(ngo)ꦧꦺꦴꦁ(bong)ꦏꦸ(ku)ꦮꦶ(wi)ꦲꦸ(hu)ꦠꦸ(tu)(sa)ꦤ꧀ꦤꦺ(n-ne)ꦮꦺꦴꦁ(wong)ꦮꦺꦴꦁ(wong)(ka)ꦲꦺ(he)(ma)ꦤꦺꦃ(neh)(.)

ꦢꦸ(du)ꦫꦸꦁ(rung)(ma)ꦤꦺꦃ(neh)(ka)ꦤ꧀ꦕ(n-ca)ꦤꦺ(ne)ꦝꦺ(dhe)ꦮꦺ(we)ꦱꦶꦁ(sing)(ma)ꦭꦃ(lah)ꦢꦶ(di)(pa)ꦠꦺ(te)ꦤ꧀ꦤꦶ(n-ni)(ka)ꦫꦺꦴ(ro)ꦮꦺꦴꦁ(wong)ꦮꦺꦴꦁ(wong)(ka)ꦲꦺ(he)(.)(pa)ꦤ꧀ꦕꦺ(n-ce)ꦤ꧀ꦲꦺꦴ(n ho)(ra)ꦢꦸ(du)ꦮꦺ(we)(ha)ꦠꦶ(ti)ꦮꦺꦴꦁ(wong)ꦮꦺꦴꦁ(wong)(ka)(ya)ꦔꦺꦴ(ngo)ꦤꦺꦴ(no)(.)

ꦲꦶ(hi)ꦱꦶꦃ(sih)(ha)ꦏꦺꦃ(keh)(ba)ꦔꦼ(ngê)ꦠ꧀ꦱꦶꦁ(t sing)ꦲꦺꦴ(ho)(ra)ꦭꦸ(lu)ꦩ꧀ꦫꦃ(m-rah)ꦲꦶꦁ(hing)ꦤꦼ()(ga)(ra)ꦲꦶ(hi)ꦏꦶ(ki)(.)(ha)(wa)ꦏ꧀ꦏꦺ(k-ke)ꦝꦺ(dhe)ꦮꦺ(we)ꦏꦸ(ku)ꦢꦸ(du)(da)ꦢꦶ(di)ꦱꦶ(si)ꦗꦶ(ji)ꦏꦁ(kang)ꦒꦺꦴ(go)ꦲꦁꦭ(ngla)(wa)ꦤ꧀ꦩꦸꦁ(n mung)ꦱꦸꦃ(suh)ꦧꦼ()(ba)ꦉꦁ(rêng)ꦔꦤ꧀(ngan)(.)(ha)(ja)(nga)ꦤ꧀ꦠꦶ(n-ti)(ha)(na)ꦱꦶꦁ(sing)(ma)ꦭꦃ(lah)ꦚꦼ(nyê)ꦫꦁ(rang)(ka)ꦤ꧀ꦕ(n-ca)ꦤꦺ(ne)ꦝꦺ(dhe)ꦮꦺ(we)(.)(ha)(ja)(ma)ꦭꦃ(lah)ꦔꦿ(ngra)ꦪꦃ(yah)ꦲꦶ(hi)ꦢꦺꦴ(do)ꦢꦺꦴ(do)(la)ꦤ꧀ꦤꦺ(n-ne)(ka)ꦤ꧀ꦕ(n-ca)ꦤꦺ(ne)ꦝꦺ(dhe)ꦮꦺ(we)(.)

(ha)ꦠꦶ(ti)(ha)ꦠꦶ(ti)ꦠꦼ()ꦫꦱ꧀(rus)(,)(pa)(ra)(ka)ꦤ꧀ꦕ(n-ca)!(!)

Kamis, 31 Juli 2025

Jangan Remehkan Tsunami di Bawah Semeter!

Halo! Ini pesan pengingat singkat buat kita semua.

Kemarin pagi, terjadi gempa besar dengan magnitudo 8,7 (BMKG) di Semenanjung Kamchatka, Rusia. Gempa ini menyebabkan tsunami. Di sebagian wilayah Kamchatka, Rusia, tinggi tsunami mencapai 5 meter. Di Iwate, Jepang, tinggi tsunami mencapai 1,3 meter. Di Kota Jayapura, Papua, Indonesia, tinggi tsunami mencapai 20 sentimeter. Tinggi tsunami yang di bawah semeter ini pun lantas menimbulkan beberapa orang jadi meremehkan tsunami, padahal tsunami di bawah semeter pun juga tetap berbahaya.

Tsunami (bahasa Simeulue: smong) adalah gelombang air yang muncul karena kejadian di dasar laut. Hal ini berbeda dari ombak yang biasa kita lihat di pantai; ombak pantai umumnya disebabkan oleh angin. Perbedaan penyebab ini membedakan perilaku dari kedua gelombang. Tsunami memiliki daya dorong dari dasar sampai permukaan, sedangkan ombak pantai hanya mendorong yang di permukaan. Yang pernah main ke pantai dan maju sampai muka air setidaknya sepinggang pasti bisa merasakan perbedaan daya dorong antara yang di dekat permukaan (pinggang) dan yang di dasar laut (kaki). Bayangkan saja kalau ombak yang datang juga mendorong kaki kita (yang terjadi di tsunami): pastilah kita sudah jatuh dan tersapu ombaknya.

Jadi, kita tidak boleh meremehkan tsunami walau tingginya di bawah semeter. Daya rusak tsunami lebih besar daripada ombak pantai biasa. Oleh karena itu, sudah seharusnya kita segera mengenali tanda-tanda tsunami datang dan segera melakukan evakuasi jika tanda-tanda itu muncul.

Sampai di sini dahulu, ya. Semoga kita senantiasa diberikan keselamatan.

Senin, 30 Juni 2025

Sidang dan Revisi Tesis

Halo! Kali ini, aku ingin cerita sedikit tentang kehidupanku saat ini, singkat saja.

Bulan Juni ini penuh dengan kegiatan, baik kuliah maupun kerja proyekan. Aku menyelesaikan pengumpulan data, analisis data hasil percobaan, dan penulisan laporan penelitianku. Selain itu, aku juga dapat (kerja) proyek pada bulan ini. Padat betul rasanya.

Kabar baiknya, Selasa pagi lalu, aku maju sidang tesis. Alhamdulillah, aku diluluskan! Hanya saja, catatan revisinya memang lumayan banyak. Saat ini, aku masih merevisi laporanku.

Selama sidang itu, rasanya deg-degan banget. Ada beberapa komentar yang kesulitan untuk kujawab. Untungnya, jawabanku dianggap cukup bagi para dosen penguji untuk meluluskanku.

Aku teringat masa-masa sidang skripsi dahulu itu. Rasanya juga sama. Hanya saja, memang lebih berat sidang tesis kali ini karena topik yang dibahas lebih mendalam.

Sampai di sini dahulu, ya, ceritaku. Aku mau lanjut merevisi laporanku. Sampai jumpa!

Minggu, 25 Mei 2025

Urutan Operasi dan Sifat Asosiatif

Pernahkah kalian menemukan kalimat matematika yang berisi operasi dengan prioritas/urutan pengerjaan yang sama? Sebagai contoh, 7 - 3 - 2 akan menghasilkan 2 (bukan 6) karena yang terletak di sebelah kiri dikerjakan terlebih dahulu walaupun kedua pengurangan memiliki prioritas yang sama. Kira-kira mengapa, ya?

Apa itu prioritas? Urutan pengerjaan itu apa?

Dalam matematika, urutan pengerjaan adalah kumpulan aturan/konvensi urutan operasi yang dilakukan saat menghitung sebuah kalimat matematika. Prioritas atau urutan pengerjaan suatu operasi juga disebut dengan preseden (precedence). Prioritas yang lebih tinggi berarti akan dikerjakan terlebih dahulu. Begitu juga sebaliknya.

Keberadaan urutan pengerjaan ini digunakan untuk mengurangi ambiguitas, tetapi tetap hemat notasi. Kalau ingin mendahulukan salah satu operasi, kita bisa menggunakan tanda kurung, ( dan ), untuk membungkus operasi yang perlu didahulukan. Sebagai contoh, 7 × (3 - 2) akan menghasilkan 7 (bukan 19). Kalau ada lebih dari satu tingkat kurung, kita bisa menggunakan jenis kurung yang berbeda untuk menghindari kebingungan. Misalnya, [5 × (4 + 2)] - 7.

Urutan pengerjaan konvensional yang diadopsi dalam berbagai bidang, termasuk di luar matematika, adalah sebagai berikut:

  1. tanda kurung,
  2. perpangkatan dan akar,
  3. perkalian dan pembagian, lalu
  4. penjumlahan dan pengurangan.

Kalau kita perhatikan, terdapat beberapa operasi yang menempati prioritas yang sama. Bagaimana menentukan yang didahulukan kalau berturutan? Ini yang disebut dengan sifat asosiatif atau keasosiatifan (associativity).

Apa itu asosiatif?

Dalam matematika, sifat asosiatif adalah sifat suatu operator biner (operasi terhadap dua bilangan) yang tidak mengubah hasil ketika tanda kurungnya diubah. Sebagai contoh, (2 + 3) + 5 sama dengan 2 + (3 + 5) sama dengan 10 sehingga operasi penjumlahan bersifat asosiatif.

Yang perlu diperhatikan adalah asosiatif tidak mengubah urutan penulisan operator. Asosiatif berbeda dengan komutatif. Contoh yang umum memang memiliki kedua sifat tersebut sehingga tak jarang disalahpahami oleh kebanyakan orang.

Sifat komutatif adalah sifat operator biner yang tidak mengubah hasil ketika urutan penulisan kedua bilangan yang dikenai operasinya ditukar. Sebagai contoh, 2 + 3 sama dengan 3 + 2 sama dengan 5 sehingga operasi penjumlahan bersifat komutatif.

Memang ada, ya, operasi yang bersifat komutatif, tetapi tidak bersifat asosiatif?

Operasi yang bersifat komutatif, tetapi tidak bersifat asosiatif, memang ada, tetapi memang jarang muncul. Sebagai contoh, operasi batu-gunting-kertas (atau gajah-manusia-semut) memiliki sifat komutatif, tetapi tidak bersifat asosiatif.

  • batu vs. gunting = batu
  • gunting vs. batu = batu

... tetapi ....

  • (batu vs. gunting) vs. kertas = kertas
  • batu vs. (gunting vs. kertas) = batu

Jadi, operasi batu-gunting-kertas memiliki sifat komutatif, tetapi tidak bersifat asosiatif.[1][2] Ini juga alasan permainan batu-gunting-kertas hanya boleh dimainkan oleh tepat dua orang, tidak boleh kurang ataupun lebih.[3]

Bagaimana dengan operasi non-asosiatif?

Operasi yang tidak memiliki sifat asosiatif memiliki urutan pengerjaan masing-masing. Biasanya, hal ini diatur dengan menentukan suatu operasi sebagai asosiatif kiri atau kanan. Asosiatif kiri adalah mengerjakan dari kiri ke kanan. Asosiatif kanan sebaliknya.

  • Asosiatif kiri: 1 ▫ 2 ▫ 3 ▫ 4 = ((1 ▫ 2) ▫ 3) ▫ 4
  • Asosiatif kanan: 1 ▪ 2 ▪ 3 ▪ 4 = 1 ▪ (2 ▪ (3 ▪ 4))

Contoh asosiatif kiri adalah pengurangan dan pembagian:

  • 1 - 2 - 3 - 4 = ((1 - 2) - 3) - 4
  • 1 ÷ 2 ÷ 3 ÷ 4 = ((1 ÷ 2) ÷ 3) ÷ 4

Contoh asosiatif kanan adalah perpangkatan:

  • 234 = 2(34)

Namun, ada juga yang wajib menggunakan tanda kurung karena tidak ada konvensinya, misalnya perkalian silang vektor (cross product):

  • A̅ × (B̅ × C̅) ≠ (A̅ × B̅) × C̅

Penutup

Dengan mengetahui urutan operasi/preseden dan sifat asosiatif tiap operasi, kita bisa mulai untuk mengubah kalimat matematika dari notasi sisipan ke notasi akhiran untuk kalimat yang lebih kompleks. Selanjutnya, kita coba bahas algoritma shunting yard/depo gerbong, yuk! Semoga bermanfaat!

Catatan akhir

Aku menerapkan konsep dalam tulisanku kali ini untuk menyelesaikan masalah pada program pembuat soal di web TTL. Aku juga menyiarkannya di YouTube, loh!

Senin, 28 April 2025

Notasi Sisipan dan Notasi Akhiran dalam Kalimat Matematika

Pernahkah kalian memperhatikan perbedaan kalkulator dagang dengan kalkulator ilmiah? Bagaimana bisa kalkulator ilmiah menentukan urutan perhitungan? Loh, kalkulator yang di ponsel pintar itu kalkulator ilmiah?

Apa perbedaannya?

Perbedaan keduanya ada pada urutan menghitungnya. Kalkulator dagang memiliki keterbatasan memori dan daya komputasi sehingga perhitungan langsung dilakukan setiap tombol operator berikutnya ditekan (termasuk tanda sama dengan), sedangkan kalkulator ilmiah membaca kalimat matematika (KM) secara keseluruhan, menentukan urutan perhitungan, lalu melakukan perhitungan sesuai urutan seharusnya.

Sebagai contoh, berikut yang muncul ketika menekan tombol 2 + 3 × 7 = pada kalkulator dagang. Perhatikan bahwa perhitungan langsung dijalankan setiap tombol operator ditekan dan nilai itu yang disimpan dalam memorinya yang terbatas.

Tombol yang Ditekan Hasil pada Layar Memori Internal Kalimat Matematika
2202
+222 +
3322 + 3
×55(2 + 3) ×
775(2 + 3) × 7
=3535((2 + 3) × 7)

Bagaimana kalkulator ilmiah menentukan urutan perhitungan?

Sebagai manusia, kita biasanya akan mencari operator yang urutannya didahulukan, misalnya perkalian (×) lebih dahulu daripada penjumlahan (+). Kalimat matematika (KM) yang biasa kita pakai menggunakan notasi sisipan (infix notation), yaitu tanda operator berada di antara dua bilangan/KM yang akan dikenai operasi. Misalnya 2 + 3 berarti operasi penjumlahan antara 2 dan 3 dengan tanda tambah (+) berada di antara keduanya.

Salah satu cara yang lebih mudah bagi komputer adalah dengan menggunakan notasi akhiran (postfix notation atau reverse Polish notation/RPN), yaitu tanda operator berada di akhir dua bilangan/KM yang akan dikenai operasi. Misalnya 2 3 + berarti operasi penjumlahan antara 2 dan 3 dengan tanda tambah (+) berada di akhir/setelah keduanya.

Cara ini lebih mudah untuk diprogram dan dijalankan oleh komputer dengan menggunakan struktur data tumpukan/stack. Kita cukup memasukkan tiap bilangan/KM ke dalam tumpukan. Bila kita bertemu dengan tanda operator, kita ambil dua teratas dari tumpukan lalu melakukan operasi terhadap keduanya. Hasilnya ditaruh di atas tumpukan kembali. Setelah selesai, hasilnya adalah satu bilangan di tumpukan itu.

Sebagai contoh, berikut cara menghitung 2 3 7 × + dengan notasi akhiran. Perhatikan tumpukan setiap kita sampai tanda operator.

Tumpukan Kursor Sisa Kalimat
223 7 × +
3
2
37 × +
7
3
2
7× +
21
2
×+
23+

Bagaimana cara mengubah dari notasi sisipan ke notasi akhiran?

Ada beberapa cara untuk mengubahnya. Yang terkenal karena sederhana adalah algoritma shunting yard/depo gerbong karena bisa diilustrasikan dengan depo gerbong. Algoritma ini ditemukan oleh Edsger Wybe Dijkstra dalam artikelnya tahun 1961. Kita bahas lain kali, ya.

Potongan layar artikel yang menunjukkan diagram depo gerbong dengan masukan dari sisi kanan, keluaran di sisi kiri, dan depo gerbong di sisi bawah
Diagram depo gerbong

Eh, kalkulator di ponsel pintar bagaimana?

Oh, iya. Coba saja jalankan 2 + 3 × 7 = pada kalkulator di ponsel pintar kalian. Jawaban yang mana yang muncul?

Penutup

Itu yang bisa kutulis kali ini. Topik ini terpikirkan karena sempat ada masalah pada program pembuat soal di web TTL, khususnya pembuat soal operasi pecahan yang masih menggunakan cara kalkulator dagang dan belum menggunakan cara kalkulator ilmiah. Semoga bermanfaat!

Jumat, 21 Maret 2025

Mati Listrik saat Tarawih: Relevansi Islam Sepanjang Masa

Halo! Kali ini, aku mau cerita pengalamanku saat Tarawih pekan lalu.

Kamis pekan lalu malam (atau malam Jumat pekan lalu), aku ikut rangkaian salat Isya–Tarawih di masjid dekat rumah. Masjidnya cukup besar. Ukuran lantai bagian dalam sekitar 12 meter × 12 meter. Ada sembilan baris: 6 untuk putra dan 3 untuk putri. Ada lantai dua juga, tetapi hanya dipakai untuk acara-acara tertentu, misal salat Jumat dan TPQ.

Rangkaian salat Tarawih di masjid ini 11 rakaat: 8 rakaat Tarawih (dua rakaat salam) dan 3 rakaat Witir. Bakda Isya dan sebelum Tarawih, ada ceramah singkat. Biasanya, yang jadi imam Isya dan imam Tarawih orang yang sama.

Waktu itu, sekitar 20.02 WIB, kami sedang melaksanakan Tarawih rakaat ke-3 (salat ke-2). Suasana saat itu sedang hujan. Aku berada di barisan laki-laki yang paling belakang (baris ke-4) dan di bagian tengah/belakang imam. Saat imam sedang membaca surah Al-Fatihah, mendadak listrik masjid mati. Suara imam yang lirih (mungkin karena sudah terbiasa dengan pelantang/loudspeaker) ditambah dengan bunyi hujan menyebabkan bacaan imam sukar didengar.

Saat imam memberi aba-aba untuk rukuk, "Allāhu akbar!" terdengar suara dari salah satu jemaah yang mengulangi aba-aba imam, "Allāhu akbar!" dengan suara yang lebih lantang. Posisinya sebaris denganku di sisi kanan masjid. Untuk aba-aba imam selanjutnya, para jemaah ikut mengulangi aba-aba imam dengan suara cukup lantang (di-jahr-kan) sampai selesai salat.

Setelah selesai salat Tarawih ke-2, ada yang memeriksa listrik masjid dan menyalakan listrik kembali. Sepertinya ada korsleting pada jaringan listrik kipas karena kipasnya tidak menyala selama salat-salat berikutnya. Sekitar akhir Syakban seingatku, memang ada beberapa kipas baru yang dipasang. Bisa jadi ada kekeliruan dalam pemasangannya. Setidaknya, pemutus sirkuit (MCB) melakukan tugasnya dan mengisolasi yang terjadi korsleting sehingga jaringan listrik lain masih bisa menyala dan salat berjemaah kembali dilanjutkan seperti biasanya.

Selama salat Tarawih ke-2 itu, aku terenyuh dan bangga karena ajaran Islam memang berlaku untuk semua kalangan dan semua masa. Untuk ceritaku ini, misalnya, ajaran Islam tentang mengulang aba-aba imam masih relevan walau sudah ada teknologi mikrofon dan pelantang sehingga salat berjemaah tetap bisa dilaksanakan walau sedang mati listrik dan hujan.

Aku jadi teringat masjid-masjid yang masih melakukan cara ini walau sudah menggunakan pelantang, yaitu Masjidilharam, Masjid Nabawi, dan (di Indonesia) Masjid Istiqlal. Aku merasa sedang berada di masjid-masjid tersebut karena cara yang sama juga diterapkan walau hanya dua rakaat.

Sampai di sini dahulu, ya, ceritaku. Selamat melanjutkan, bahkan meningkatkan, ibadah-ibadah selama bulan Ramadan selagi masih ada waktu. Sampai jumpa!

Jumat, 28 Februari 2025

Keamanan Bersuara: Autentikasi Dua Faktor

Halo! Kali ini singkat saja, ya.

Pernah beredar kabar-kabar menyedihkan tentang kebebasan bersuara/berekspresi yang menjadi fondasi demokrasi. Salah satunya tentang pembajakan akun yang bersuara tersebut. Setelah menyuarakan tentang hal-hal tertentu, akun mereka justru dibajak. Walau tidak diketahui identitasnya, bukanlah hal yang tidak mungkin kalau pihak berwenang memiliki kemampuan untuk melakukannya, terlebih mereka adalah pihak yang dikritik.

Hampir semua platform komunikasi masyarakat Indonesia menggunakan layanan luar negeri, misal WhatsApp, LINE, Telegram, Facebook, Twitter, Instagram, TikTok, dan Gmail. Satu-satunya layanan dalam negeri hanyalah SMS dan panggilan suara seluler/telepon pulsa. Hal ini memiliki keuntungan tersendiri bagi pihak-pihak yang ingin bersuara dengan aman, yaitu akun tidak bisa diambil alih secara langsung tanpa surat pengadilan yang jelas. Layanan luar negeri pun bisa saja menolak surat tersebut. Pihak berwenang bisa saja memblokir layanan tersebut, tetapi kurasa tidak mungkin mereka akan melakukannya karena mereka pun juga menggunakannya.

Beberapa layanan ini utamanya menggunakan kata sandi sebagai cara masuknya. Namun, ada beberapa yang menggunakan nomor telepon via SMS atau telepon pulsa sebagai cara masuk utama, misal WhatsApp dan Telegram. Hal ini membuka celah bagi pihak berwenang untuk mengambil alih akun yang mereka rasa "merusak ketenteraman". Lantas, bagaimana cara mengatasi masalah ini sebagai masyarakat yang ingin bersuara?

Caranya adalah dengan menambahkan faktor autentikasi lainnya! Sebagai contoh, WhatsApp memiliki fitur autentikasi dua faktor dengan PIN yang disebut verifikasi dua langkah. Bila fitur itu dinyalakan, akun WhatsApp seseorang tidak bisa diambil alih hanya dengan memasukkan kode dari SMS yang diterima (yang sangat mungkin dialihkan oleh pihak berwenang), tetapi perlu memasukkan kode PIN yang dihafalkan (seperti sandi pada umumnya).

Dengan autentikasi dua faktor, kita bisa bersuara tanpa takut akun kita diambil alih. Namun, perlu diperhatikan bahwa keselamatan diri secara fisik bisa jadi tidak seaman yang dikira. Namun, setidaknya, belum ada cara untuk mengakses isi pikiran sampai saat ini (untuk mengetahui PIN yang dihafal) secara paksa sehingga kita bisa memilih untuk tidak memberi tahu walau mungkin akan babak belur, bahkan mati. Begini amat, ya, tinggal di wilayah yang pihak berwenangnya memusuhi rakyatnya.

Sampai di sini dahulu, ya. Tetap suarakan hak-hak kita dan tolong jaga diri juga.

Selamat menjalankan ibadah puasa bagi yang menjalankan! Sampai jumpa!

Kamis, 30 Januari 2025

Satu Tahun Rutin Menulis Blog

Halo!

Pada bulan Januari 2024 lalu, aku berencana untuk mengepos setidaknya sekali setiap bulan. Hal ini kulakukan agar aku bisa rutin menulis apa pun itu, sekaligus agar blogku tidak terlalu sepi.

Aku menulis berbagai macam hal, dari pengalaman pribadi hingga materi pelajaran/perkuliahan. Aku bahkan menulis seri kriptografi dari yang sederhana hingga yang kompleks. Meski demikian, yang kutulis hanyalah yang bisa kutulis dalam waktu beberapa jam atau beberapa hari. Itu pun karena kupaksa diriku untuk menulis, terutama saat sudah mendekati akhir bulan.

Rencanaku tetap merutinkan untuk mengepos setidaknya sekali setiap bulan, bahkan mungkin mencoba mengepos dua kali tiap bulannya. Hal ini mungkin sulit tercapai untuk kuartal pertama tahun ini, bahkan semester pertama tahun ini, karena aku masih harus menulis untuk Publikasi Ilmiah dan Tesis, dua mata kuliah terakhir yang harus kuselesaikan dalam studi S-2 ini.

Kualitas tulisanku kuserahkan kepada kalian, para pembaca, untuk menilainya. Aku hanya ingin ada tulisan rutin di blogku ini, kadang kusiapkan berhari-hari, kadang hanya sempat kusiapkan beberapa jam.

Semoga rencana-rencana baik kita semua tercapai, ya. Sampai jumpa!