| Istilah | Arti |
|---|---|
| software entropy | Kecenderungan codebase makin berantakan dan sulit diubah seiring waktu, yang menurut Matt justru dipercepat oleh perubahan cepat buatan AI. |
| deep modules | Modul yang menyembunyikan banyak implementasi di balik interface sederhana sehingga pemakainya mendapat banyak kemampuan dengan sedikit hal yang perlu dipelajari. |
| shallow modules | Modul dengan interface rumit tetapi isi implementasinya sedikit, yang menurut video banyak ditemukan di codebase buruk dan legacy. |
| seams | Celah antarmodul tempat interface sebuah modul berada, biasanya menjadi titik untuk menulis tes atau memasang pengganti seperti jam palsu. |
| locality | Sifat ketika perubahan, bug, dan perbaikan sebuah fitur terkumpul di satu tempat sehingga pemelihara kode tidak perlu mencarinya ke banyak modul. |
| interface | Semua hal yang harus diketahui pemanggil untuk memakai modul dengan benar, misalnya metode sign in dan sign out beserta dokumentasinya. |
| legacy code | Kode lama yang sulit diubah, yang menurut Matt sebaiknya dibenahi dengan memasang tes di sekitar deep modules sebelum memakai AI untuk mengubahnya. |
| A Philosophy of Software Design | Buku karya John Ousterhout yang menjadi sumber gagasan deep modules dan shallow modules, dan direkomendasikan Matt untuk dibaca. |
| codebase | Seluruh kumpulan kode sebuah aplikasi, di video ini contohnya repo course video manager milik Matt dengan sekitar 1.500 commit. |
| architecture skill | Skill improve codebase architecture buatan Matt yang menjelajahi kode, mencari peluang memperdalam modul, lalu mengajak pengguna berdiskusi soal desainnya. |
| ball of mud | Julukan untuk codebase yang sudah sangat berantakan dan saling terkait sehingga sangat sulit diubah atau diperbaiki tanpa teknik yang tepat. |
| caller | Orang atau fungsi yang memanggil sebuah modul dan hanya perlu memahami interfacenya, bukan seluruh isi implementasi di dalamnya. |
Matt Pocock membuka video ini dengan membantah anggapan bahwa kode kini murah karena AI. Menurutnya, AI justru mempercepat software entropy, yaitu codebase rusak lebih cepat karena setiap perubahan yang tidak memperhitungkan keseluruhan sistem menambah keanehan kecil yang menumpuk sampai menjadi ball of mud. Jika video sebelumnya tentang deep modules membahas pencegahan, video ini membahas cara menyembuhkan codebase yang terasa tak tertolong, memakai dasar-dasar rekayasa perangkat lunak dan skill improve codebase architecture dari repo skills GitHub miliknya yang sudah mendapat 41,5 ribu bintang. Ia menekankan pentingnya kosakata bersama dengan AI agar permintaan kita lebih tepat, sekaligus menjadikan kita developer yang lebih baik.
Matt menjelaskan istilah dari glosarium skill tersebut: module, interface sebagai semua hal yang harus diketahui caller, implementation, serta deep modules dan shallow modules dari buku A Philosophy of Software Design karya John Ousterhout. Ia juga membahas seams sebagai tempat pengujian, adapter seperti jam palsu untuk tes, locality bagi pemelihara, dan leverage bagi pemakai. Demonya memakai codebase course video manager berbasis React Router dan Effect dengan sekitar 1.500 commit. Ia menjalankan skill itu di Claude Code dengan auto mode dimatikan, lalu skill menemukan enam peluang pendalaman, misalnya aturan urutan klip yang punya dua implementasi paralel di frontend dan backend tanpa tes. Skill lalu masuk sesi grilling, mengusulkan bentuk module dan interface TypeScript, dan hasilnya bisa dijadikan GitHub issue untuk agent AFK. Pesannya, skill ini menuntut penilaian programmer sebagai jenderal strategis, dan untuk legacy code langkah pertamanya adalah tes di sekitar deep modules.
Kata kunci
- software entropy
- deep modules
- seams
- legacy code
- Menjelaskan bagaimana AI mempercepat software entropy sehingga codebase cepat berantakan seperti ball of mud.
- Memahami deep modules versus shallow modules dari buku A Philosophy of Software Design, serta seam, locality, dan interface modul.
- Memakai skill perbaikan arsitektur codebase untuk mengusulkan desain modul dan mengatasi legacy code.
Tulis catatan pribadimu untuk video ini. Catatan tersimpan di akunmu dan bisa dibuka dari perangkat mana pun.
