Di tempat kerja, saya bertanggung jawab untuk mengelola seluruh data yang bervariasi pada sistem file standar. Sebagian dari ini datang dengan klasifikasi yang masuk akal (berdasarkan kesamaan, kebutuhan, akses baca / tulis, dll), tetapi bagian yang lebih besar sebenarnya mendokumentasikannya: dokumen / file / media apa yang harus dituju, apa yang seharusnya tidak ada dalam direktori ini, "untuk sesuatu yang sedikit berbeda, lihat ../../other-dir", dll.
Saat ini, saya telah mendokumentasikan ini menggunakan file plaintext readme
di setiap direktori yang ingin saya dokumentasikan. Jika seseorang tidak yakin apa yang dimaksudkan dalam direktori apa pun, mereka membaca file itu.
Ini berfungsi dengan baik, tetapi tampaknya aneh bahwa saya memiliki solusi kustom primitif ini untuk masalah yang harus dialami oleh setiap pengelola struktur direktori non-sepele. Setiap perusahaan yang saya kenal, misalnya, memiliki semacam sistem file bersama di mana terminologi yang disepakati untuk kategorisasi adalah penting. Dalam pengalaman saya, orang hanya perlu belajar apa dengan percobaan-dan-kesalahan dan eksperimen.
Jadi izinkan saya untuk mengusulkan solusi yang lebih baik, dan mudah-mudahan Anda dapat memberi tahu saya jika itu ada. Direktori apa pun pada sistem file apa pun dapat memiliki nama file plaintext tersembunyi .readme
. Isinya adalah bahasa manusia deskriptif. Ini menggunakan beberapa markup seperti penurunan harga, dengan sedikit lebih dari tebal, miring, dan (relatif) hyperlink ke direktori lain. Sekarang browser file yang diaktifkan dengan tepat akan memeriksa file bernama .readme
setiap kali menampilkan direktori. Jika ada, isinya diurai dan ditampilkan dalam panel yang tidak mencolok di dekat widget jalur-direktori. Tautan apa pun di dalamnya dapat diklik, dan pengguna akan dibawa ke direktori target tautan itu.
Saya pikir upaya penerapan standar semacam itu akan membayarkan berkali-kali lipat dalam keuntungan usabilitas. Kami akan memiliki, misalnya, plugin untuk Nautilus, Konqueror, dll. Ini dapat digunakan untuk menampilkan informasi direktori dalam daftar file standar yang dilayani oleh webserver. Dan seterusnya.
Jadi, pertanyaan: apakah hal seperti itu ada? Jika tidak, mengapa tidak? Apakah orang berpikir itu ide yang bermanfaat?
sumber
Jawaban:
Sejauh yang saya tahu tidak ada standar. Inilah beberapa ide dari pengalaman saya.
Atur, jangan pernah mengubahnya
Ini adalah sebagian besar perusahaan gagal. Tidak ada yang lebih buruk daripada struktur sistem file yang terus berubah. Jika tidak mungkin untuk tetap konstan maka sistem file murni hanyalah wadah yang salah untuk mengatur informasi Anda. Gunakan database atau Sistem Manajemen Konten.
Gunakan nama direktori yang deskriptif dan konsisten
Tidak ada yang punya waktu untuk membaca
.filing
file atau apa pun. Jika nama direktori Anda tidak menjelaskan diri sendiri, Anda mungkin akan hilang juga.Tulis dokumentasi untuk struktur direktori Anda
Tulis dokumen tempat Anda menjelaskan peran setiap direktori. Berikan banyak contoh. Jadikan itu tersedia untuk siapa saja yang harus bekerja dengan struktur Anda, tetapi jangan percaya siapa pun akan membacanya. Seharusnya lebih seperti Alkitab bagi Anda. Tidak mudah menemukan contoh untuk dokumen semacam itu, karena jelas perusahaan tidak mempublikasikannya. Contoh dari perangkat lunak open source adalah Filesystem Hierarchy Standard .
Jika ini terdengar agak negatif, itu benar. Saya belum pernah melihat repositori non-sepele berdasarkan sistem file dengan lebih dari lima pengguna yang bekerja dalam jangka panjang dalam praktiknya. Masalahnya adalah bahwa kategori apa pun yang Anda buat, orang akan memiliki ide yang sangat berbeda tentang mereka. Jadi untuk akhirnya menjawab pertanyaan Anda:
Apakah hal semacam itu ada?
Tidak, kurasa tidak.
Jika tidak, mengapa tidak?
Menurut pendapat saya: Untuk hierarki statis kecil dengan beberapa pengguna itu berlebihan. Untuk hierarki perubahan besar dengan banyak pengguna, itu tidak akan berfungsi karena gagasan kategori (= direktori, folder) tidak berskala.
Apakah orang berpikir itu ide yang bermanfaat?
Hm, itu ide yang menarik. Untuk melihat apakah orang akan menggunakannya, seseorang harus mengimplementasikannya. Alih-alih
.filing
file Anda bisa menyimpan informasi itu dalam aliran data alternatif (ya, folder juga dapat memiliki ADS). Anda bisa menggunakan atribut diperluas di Linux dan OSX. Masalah terbesar mungkin akan menambal browser file.sumber
.filing
file Anda bisa menyimpan informasi itu dalam aliran data alternatif (ya, folder juga dapat memiliki ADS). Anda dapat menggunakan atribut tambahan di Linux dan OSX." Mungkin, saya bayangkan, tetapi menurunkan portabilitas dan transparansi yang menurut saya sangat penting. Bagaimana jika saya ingin meletakkan semuanya di repo git? File Plaintext digunakan untuk konfigurasi khusus direktori (misalnya htaccess), jadi mengapa tidak mendokumentasikan juga?wasabi patut dicoba. Di root proyek Anda, sumber teks biasa akan berfungsi sebagai gambaran umum proyek yang solid dan Anda dapat membuang dokumen yang sama di browser untuk beberapa hasil yang lebih bagus.
Memang, ini bukan solusi berbasis sistem file, tetapi sampai semua sistem file mendukung sesuatu yang umum, wasabi (atau implementasi Anda sendiri) bisa menjadi pilihan terbaik.
sumber
Gagasan Anda memiliki beberapa kelebihan, tetapi saya khawatir ketika Anda membutuhkan sesuatu seperti ini, itu berarti Anda membutuhkan sesuatu yang lebih terstruktur. Yaitu CMS, mungkin hanya yang ringan, tapi pasti sesuatu yang lebih dari sekadar file teks.
Terutama jika Anda ingin membatasi penulisan (atau bahkan mengakses) dokumen tertentu (dan karena itu mengandung folder) untuk beberapa bagian dari basis pengguna Anda.
Anda tidak menentukan OS Anda, tetapi ada produk unggulan (dan gratis) seperti alfresco yang mungkin dapat melayani Anda lebih baik daripada pengaturan Anda saat ini.
sumber
Ini ide. Tulis skrip yang menanyakan berbagai pertanyaan kepada pengguna tentang file dan / atau melakukan beberapa kecocokan dalam konten file itu sendiri, dan kemudian merekomendasikan lokasi untuk meletakkan file atau meletakkannya di sana sendiri. Script bisa sesederhana atau serumit yang Anda inginkan.
Script bertindak sebagai sistem manajemen file, sistem pendukung keputusan, dan dokumentasi langsung dari hierarki sistem file. Linux Filesystem Hierarchy Standard adalah sedikit mitos jika Anda memikirkannya, karena ada perbedaan yang sangat besar antara distro. Namun sebagian besar pengguna Linux / Unix sebenarnya tidak harus belajar tentang hirarki sistem file itu sendiri karena terdapat berbagai perangkat lunak yang diinstal dalam sistem yang mengelola hirarki dengan cara yang distandarisasi (manajer paket, alat konfigurasi, dll). Berbagai kerangka kerja aplikasi juga membuat skrip untuk mengelola direktori-direktorinya, misalnya Django memiliki perintah manajemen untuk membuat proyek baru, atau modul aplikasi baru, atau file migrasi squash, dll.
Ini memiliki keuntungan tambahan bahwa skrip dapat membuat berbagai symlink jika file perlu dicari lebih dari satu cara, misalnya indeks berdasarkan pembuat file atau tanggal pembuatan atau aturan bisnis apa pun yang Anda miliki. Anda dapat mensimulasikan penandaan dengan symlink. Tag adalah simplink sederhana dari suatu
tags
direktori, jaditags/mytag/myfile
mungkin symlink keactual/myfile
.Selain itu juga dimungkinkan untuk mengubah struktur hierarki sistem file tanpa mengubah antarmuka pengguna.
Filesystem adalah database. Bukan basis data relasional, tetapi basis data hierarkis. Pikirkan tentang hal ini seperti mengelola basis data, Anda tidak benar-benar ingin mengharuskan orang untuk mempelajari struktur relasional, tetapi Anda ingin aplikasi untuk disajikan kepada pengguna sebagai berbagai tugas yang perlu mereka lakukan (mis. Anda melakukan bulanan Laporan XYZ, hebat, lalu taruh di folder ini, dan buat symlink ini, dan kemudian Anda perlu memodifikasi file lain untuk merekam bahwa Anda telah melakukan laporan untuk bulan ini, dll).
sumber