- Meski kapasitas penyimpanan sudah ditambah berkali-kali, penggunaan ikut meningkat; dalam survei Mastodon dengan 81 responden, sekitar setengahnya juga menggunakan lebih dari 75% disk mereka
- Ini sebagian bisa dijelaskan dengan logika entropi bahwa ada lebih banyak cara untuk mencapai keadaan penuh daripada kosong, tetapi itu tidak sepenuhnya menjelaskan perilaku pengguna
- Kebiasaan menunda beres-beres sampai mendekati batas lalu hanya menghapus seperlunya membuat disk tetap berada dalam kondisi hampir jenuh secara terus-menerus
- Software yang melambat, utang teknis yang menumpuk, jalan yang macet, dan jadwal yang padat juga menunjukkan pola yang sama: baru ditangani setelah rasa sakit mencapai titik kritis
- Menetapkan batas buatan yang lebih kecil daripada total sumber daya, seperti anggaran, bisa membantu menghindari optimasi prematur sekaligus mencegah masalah dibiarkan sampai ke batasnya
Mengapa ruang penyimpanan terus penuh
- Drive root hanya menyisakan 17GB dari 0.47TB yang tersedia, sehingga ruang kosong tinggal 3%; drive 12TB yang dipasang tambahan juga hanya menyisakan 140GB, sekitar 1%
- Kapasitas penyimpanan telah berlipat ganda berkali-kali, dari sekitar 80MB pada 1990-an menjadi puluhan TB, tetapi tetap saja sebagian besar selalu terpakai
- Fakta bahwa software untuk mencari file yang bisa dibersihkan sudah ada sejak lama juga menunjukkan bahwa masalah ini telah berlangsung terus-menerus
- Dari 81 responden survei Mastodon, sekitar setengah menggunakan hard drive mereka lebih dari 75%, sehingga kondisi penyimpanan yang penuh lebih umum daripada yang kosong
- Karena ada lebih banyak keadaan yang membentuk disk penuh daripada disk kosong, dimungkinkan penafsiran berbasis entropi bahwa jika keadaan diubah secara acak tanpa mempertimbangkan jumlah data, sistem akan bergerak menuju kejenuhan
- Namun disk tidak terasa sebagai masalah sampai benar-benar tidak bisa menyimpan lagi, dan pada titik itu keadaannya sudah terlalu berantakan sehingga sulit menilai file mana yang harus dihapus
- Pengguna hanya merapikan secukupnya untuk membeli waktu lalu berhenti, sehingga disk kembali cepat mencapai batas
- Bahkan jika kapasitas penyimpanan ditingkatkan beberapa orde besarnya, perilaku ini tidak berubah
Titik batas rasa sakit dan batas buatan
- Pola menunda penanganan sampai masalah mencapai tingkat yang tak tertahankan berulang di banyak bidang
- Software tidak dioptimalkan sampai terlalu lambat, sehingga umumnya tetap lambat terus-menerus
- Utang teknis menumpuk sampai pekerjaan pada kode menjadi menyakitkan dan refactoring tak terhindarkan
- Developer yang kurang berpengalaman bahkan kadang memulai ulang dari nol, sehingga sebagian besar codebase menjadi berantakan
- Jaringan jalan baru diperluas setelah kemacetannya sudah tak tertahankan
- Pola makan tidak dikelola sampai harus membeli celana yang lebih besar
- Bahkan setelah berhenti dari pekerjaan penuh waktu dan menjadi pekerja mandiri sehingga kewajiban dan arahan hilang, jadwal tetap terisi sesibuk sebelumnya, kadang bahkan lebih sibuk
- Jika menunggu sampai titik batas, pekerjaan yang harus ditangani akan jauh lebih besar dibanding jika diselesaikan sedikit demi sedikit sambil berjalan, tetapi di sisi lain optimasi prematur juga tidak diinginkan
- Untuk menyeimbangkan dua masalah ini, kita bisa memanfaatkan Jevons paradox dengan menetapkan batas praktis yang lebih kecil daripada total sumber daya yang tersedia, lalu mengoptimalkan sesuai batas itu
- Dalam keuangan pribadi ini disebut anggaran, tetapi di bidang lain prinsip yang sama berulang kali diabaikan
- Jika Anda men-deploy software ke Raspberry Pi, memakainya sendiri, lalu mengoptimalkannya, software itu akan berjalan cepat juga di Threadripper
- Codebase yang bisa dijelajahi dalam Vim pada terminal 80×25 juga akan bisa dijelajahi di IDE modern yang kuat
- Saat sumber daya dan fitur bertambah, kelihatannya kita bisa melakukan lebih banyak hal, tetapi dalam praktiknya justru bisa membuat kita melakukan hal yang sama dengan biaya lebih besar
1 komentar
Komentar di Lobste.rs
Itu adalah batasan yang menyakitkan, tetapi menghapus satu kategori permintaan dukungan pelanggan sepenuhnya. Para pesaing hanya mendukung Mac dan Linux, atau hanya merilis versi Windows sambil menjanjikan dukungan UNIX; melihat mereka terus-menerus direpotkan pertanyaan pengguna “kapan Linux?” membuat kami merasa lega. Kami masih mendapat pertanyaan “kapan porting BSD?”, tetapi masih dalam batas yang bisa ditangani
Instruksi SIMD terbaru memang menarik, tetapi patokan semua optimisasi saya adalah Intel Haswell dan AVX2 di MacBook Pro keluaran 2015. Kode yang berjalan baik di lingkungan itu tetap berjalan sama baiknya hari ini
Setiap kali naik dari 256GB ke 512GB, konten yang saya simpan juga ikut bertambah. Selalu ada repositori untuk dikloning, musik untuk diunduh, video YouTube dan film untuk disimpan, dan ukuran file juga membesar saat berpindah dari 720p ke 1080p dan 4K. Game pun makin bongsor sampai-sampai harus menghapus satu game Steam untuk memasang game Steam lain. Pada akhirnya saya penasaran apakah ini sekadar fenomena sederhana: kita mengisi keranjang saat ini sebanyak mungkin sampai mendapat keranjang yang lebih besar
Saya memberi bintang pada repositori yang saya suka di GitHub atau Codeberg dan sejenisnya. Saya berharap suatu hari nanti, seperti fediverse, bintang bisa dibagikan di berbagai forge Git yang berbeda sehingga tidak perlu mempertahankan akun di GitHub, GitLab, dan Codeberg masing-masing. Saya ingin tahu apakah Anda mengkloning kodenya sendiri untuk berjaga-jaga jika repositori hilang atau tidak bisa diakses
/nixhampir selalu terisi lebih dari 90%, kecuali tepat setelah instalasi yang benar-benar baru. Nix dengan jelas menunjukkan sudut pandang pengembang bahwa, mirip manajemen memori, ruang disk baru direklamasi lewat garbage collection hanya saat dibutuhkan. Artefak build perantara dari berbagai versi juga memakan ruang yang sangat besarServer media saya tidak penuh, karena saya memakai RAID heterogen yang perlahan membesar selama bertahun-tahun: setiap kali drive lama rusak, saya menggantinya dengan drive yang lebih besar dengan harga serupa. Saya juga sudah menyerah pada upaya mendigitalkan semua CD dan DVD di rumah. CD audio dan game Wii yang memakai kompresi lossless masih bernilai, tetapi HD-DVD sama sekali tidak sepadan
Agar data berharga tidak hilang, biasanya saya mencatatnya di Nix dan menyimpannya di folder proyek yang menggunakan Git, tetapi pekerjaan itu merepotkan. Mempertahankan perangkat semacam mesin waktu ini selama bertahun-tahun membutuhkan usaha luar biasa besar, tetapi rasanya seperti satu-satunya cara untuk mengelola skala dan kompleksitas yang terus meningkat