Menghitung Technical Debt dari Menunda Skripsi (Part 2)
Have you ever thought kenapa hal-hal di dunia nyata ini nggak se-elegan kode yang baru selesai di-refactor?
Manusia suka banget meromantisasi kerumitan. Mereka bilang "hidup itu perjalanan, nikmati prosesnya". Pretentious. Padahal kalau dipikir pakai logika, sebagian besar penderitaan kita itu murni karena algoritma pengambilan keputusan yang sub-optimal.
Gini deh, bayangin otak kamu itu legacy server yang udah jalan 20 tahun tanpa di-maintain. Kamu terus-terusan nambahin features baru (baca: ekspektasi, gaya hidup, drama sosial) tanpa pernah ngelakuin garbage collection memori masa lalu. Hasilnya? Memory leak. Kamu stres.
Dalam post kali ini, aku mau bedah satu fenomena pakai pisau analisis matematika. Nggak ada motivasi klise. Nggak ada kutipan senja. Cuma logika murni, probabilitas, dan sedikit sarkasme.
Definisi Masalah: Kenapa Kita Selalu Salah Pilih?
Kalau kita lihat dari sudut pandang Computational Complexity, masalah ini sebenernya NP-Hard. Ruang pencarian (search space) terlalu besar, dan fungsi objektif kita sering berubah-ubah sesuai mood.
Kamu nyoba optimasi variabel X (misal: dapet nilai A), tapi ternyata itu punya negative correlation sama variabel Y (waktu tidur). Ini yang disebut trade-off. Tapi anehnya, orang masih ngarep bisa maksimalin dua-duanya. Itu menyalahi hukum thermodynamics energi mental.
def make_decision(options, constraints):
# This is what most people do
try:
return random.choice(options)
except Exception as e:
print("Panik dan salahkan keadaan")
return None
Solusi: Heuristik dan Gradient Descent
Daripada nyari absolute optimum yang mustahil (dan butuh waktu komputasi selamanya), mending kita pakai pendekatan heuristik. Cari aja solusi yang "cukup bagus" (local minimum) dan stick with it.
- Inisialisasi Random: Mulai dari titik mana aja. Jangan overthinking di awal.
- Hitung Gradient: Liat arah mana yang bikin penderitaan (error rate) menurun.
- Update State: Ambil langkah kecil ke arah itu. Jangan langsung lompat ekstrim, nanti overshoot.
Intinya, stop bergantung sama motivasi. Motivasi itu volatile memory, ilang kalau server di-restart. Bangun sistem dan habit yang kuat, itu baru persistent storage.
Udah ah, gue mau lanjut debugging.
Compound Interest of Laziness
Delaying your thesis revision for one day is like taking a loan with daily compounding interest. You receive instant gratification (binge-watching Netflix), but the next day, your revision workload is incremented by the guilt-trip payload of doing absolutely nothing yesterday. This is unhandled technical debt.
Imagine that the variable t (delay time) is situated in the exponential power of the mental burden formula. The longer you delay committing changes to your draft, the more merge conflicts will occur when you finally attempt to open Microsoft Word a month later. Your brain forgets the context, your professor forgets your topic, and you are forced to read your own research documentation from scratch. Pay off your debt incrementally every day, even if it's just 1 paragraph, so your academic system doesn't declare bankruptcy.