Cara Membaca Kode Orang Lain Tanpa Frustrasi
Kenapa Membaca Kode Lebih Sulit dari Menulisnya?
Kita terbiasa menulis kode dalam konteks yang kita pahami sepenuhnya — kita tahu alasan di balik setiap keputusan. Membaca kode orang lain artinya merekonstruksi konteks dan alasan itu dari kode yang sudah jadi, tanpa akses ke pikiran penulisnya.
Strategi 1: Mulai dari Pintu Masuk, Bukan dari Awal File
Jangan mulai membaca dari baris pertama file pertama yang kamu buka. Cari entry point: index.js, main.py, route utama, atau handler HTTP pertama. Dari sana, ikuti aliran eksekusi seperti debugger — request masuk, melewati apa, sampai kemana.
Strategi 2: Baca Test Sebelum Implementasi
Test — kalau ada — adalah dokumentasi yang bisa dieksekusi. Test menjelaskan apa yang seharusnya dilakukan fungsi, edge case yang dipertimbangkan, dan asumsi yang dipegang penulisnya. Membaca test sering lebih cepat memberikan pemahaman daripada membaca implementasi secara langsung.
Strategi 3: Gambar Arsitekturnya
Saat menelusuri codebase yang tidak familiar, gambar diagram sederhana: komponen apa saja yang ada, bagaimana mereka saling memanggil, data mengalir dari mana ke mana. Tidak perlu formal — whiteboard atau kertas sudah cukup. Diagram ini akan menjadi peta mental yang sangat berharga.
Strategi 4: Gunakan Git History sebagai Dokumentasi
git log --follow -p src/auth/middleware.js # lihat evolusi satu file
git blame src/auth/middleware.js # siapa menulis baris mana, kapan
git show abc1234 # lihat context lengkap satu commit
Commit message yang baik menjelaskan "kenapa" di balik perubahan — informasi yang tidak ada di kode itu sendiri.
Strategi 5: Buat Glossary Kode
Saat menemukan istilah domain-spesifik yang sering muncul (ledger, fulfillment, settlement), catat artinya dalam konteks codebase ini. Banyak bug terjadi karena developer baru salah memahami makna istilah yang dipakai seluruh codebase.
Strategi 6: Eksperimen Kecil di Lingkungan Lokal
Kalau bingung dengan fungsi tertentu, cara tercepat memahaminya adalah menjalankan dan memodifikasinya. Tambahkan console.log, ubah return value, lihat apa yang berubah. Eksperimentasi aktif jauh lebih efektif daripada membaca pasif.
Yang Harus Dihindari
Jangan langsung refactor kode yang tidak kamu pahami — kamu bisa menghancurkan behavior yang sengaja dipertahankan untuk alasan yang tidak tertulis. Pahami dulu, baru ubah. Dan jangan pernah berasumsi kode yang terlihat aneh pasti salah — ada kemungkinan ada alasan baik di baliknya yang tidak kamu lihat.