User-friendly, human-readable
Pourquoi faut-il taper l’option -h
des commandes df et free ? Les développeurs de ces outils pensent que cette option est superflue ?
Personnellement une option nommée --human-readable
(-h
), je pense qu’il serait utile, opportun et judicieux de l’intégrer par défaut.
free total used free shared buffers cached Mem: 32634444 27410980 5223464 376440 93224 18234220 -/+ buffers/cache: 9083536 23550908 Swap: 0 0 0 free -h total used free shared buffers cached Mem: 31G 26G 5.0G 370M 91M 17G -/+ buffers/cache: 8.7G 22G Swap: 0B 0B 0B
Je n’ai pas assez de barbe pour apprécier la notation « moins human-readable » (sans -h
). On passe à un niveau supérieur avec la commande df.
df /dev/nvme0n1p1 /dev/sdb Sys. de fichiers blocs de 1K Utilisé Disponible Uti% Monté sur /dev/nvme0n1p1 239314556 50879376 176208928 23% / /dev/sdb 1921803544 620797656 1203313776 35% /media/cascador/Data df -h /dev/nvme0n1p1 /dev/sdb Sys. de fichiers Taille Utilisé Dispo Uti% Monté sur /dev/nvme0n1p1 229G 49G 169G 23% / /dev/sdb 1,8T 593G 1,2T 35% /media/cascador/Data
Évidemment la notation « moins human-readable » a des qualités : Plus précise, utile dans des scripts. Cependant à l’heure de l’utilisation de disques en To, il faudrait peut-être s’éloigner d’une notation précise pour se rapprocher d’une notation plus lisible, compréhensible et simple pour l’utilisateur (user-friendly).
Norme et exception (usage par défaut et option)
Cette question rejoint une interrogation plus large chez moi, quand doit-on opérer une bascule entre norme et exception ?
Si 9 fois sur 10 la majorité des utilisateurs font df -h
ne faut-il pas considérer -h
comme une norme de facto et plus une option ? Et alors modifier le code de df pour que de base sans devoir préciser -h df
renvoie les infos en human-readable. Bien entendu une nouvelle option serait ajoutée afin de conserver la notation « moins human-readable » qui reste nécessaire. df en human-readable deviendrait la norme, la notation « moins human-readable » l’exception.
Au doigt mouillé 98% des personnes utilisent la commande ln pour créer un lien symbolique (symbolic link) ln -s
, pourquoi ln
crée un hard link par défaut ? Le hard link est l’exception dont on se sert 2 fois de l’an et le lien symbolique la norme, quand les développeurs de la commande ln vont la modifier pour qu’elle crée un lien symbolique par défaut ?
La façon dont l’outil est conçu et codé rentre en compte, je ne me suis pas penché sur le code de ln mais je suppose qu’il y a de bonnes raisons à ce que la création d’un hard link soit le choix par défaut. Enfin j’espère.
Remettre l’utilisateur au centre
Cela ne change en rien ma réflexion, en 2020 tout outil devrait être tourné vers l’utilisateur, être user-friendly et human-readable par défaut. Devoir utiliser free -h
, df -h
, ln -s
revient à devoir préciser qu’on est humain et l’utilisation naturelle et simple qu’on veut de l’outil.