Un bon de livraison qui connaît sa commande

Un entrepôt imprime un bon pour le chauffeur et garde un enregistrement pour lui. Trois jours plus tard, la feuille signée revient et quelqu’un doit la remettre à côté de l’enregistrement auquel elle se rapporte. Imprimer les codes sur le bon réglerait la question en un instant, au prix d’une colonne de codes faits pour les machines sur une feuille qu’un client lit et signe.

Les codes voyagent donc sous la page. Chaque ligne du bon est tracée avec une liste de faits qui lui est attachée — la commande pour laquelle elle a été préparée, le code article, le rayon d’où il vient — sous des noms que l’entrepôt a choisis lui-même ; l’endroit où le chauffeur signe contient la tournée et le camion. Pas une seule lettre de tout cela n’est tracée. Un programme qui lit le fichier retrouve chaque code en face de la ligne à laquelle il appartient, et un client qui lit la feuille trouve un bon de livraison. Le dernier ne contient rien du tout : il se tient à côté du repère de pliage, et sa place est tout ce qu’il dit.

Ce que montre cet exemple

  • Les noms et les valeurs sont les vôtres ; ils sont écrits et attachés à ce qui a été dessiné.
  • Rien n’en est imprimé : la feuille que le client lit reste ce qu’elle était.
  • Une liste est écrite une seule fois et désignée depuis chaque endroit où elle a sa place.

Le code source complet

Rien n’est omis et rien n’est simplifié : c’est le programme exactement tel qu’il tourne, pour le développeur qui utilise cette bibliothèque. La troisième est la description elle-même : une simple liste de ce que la page doit dire, et c’est elle qu’on envoie au service.

Voir le code Rust Voir le code Python Voir le code JSON

Le document lui-même

Ouvrir le document en anglais Ouvrir le document en français Ouvrir le document en allemand Ouvrir le document en espagnol Ouvrir le document en italien Ouvrir le document en portugais

Exemples proches de celui-ci

Une feuille qui mesure ce qu’elle annonce

Trois règles graduées — centimètres, pouces et points — sur une page qui dit à ce qui l’imprime de la sortir exactement à sa taille réelle, et de ne rien proposer d’autre. Posez un mètre ruban sur la feuille imprimée et vous pourrez vérifier vous-même.

Un registre dont chaque page dit d’où elle vient

Deux séances reliées en un seul fichier. Chaque page a son propre relevé — ce qu’elle est, de quelle main elle a été écrite, le jour où elle l’a été — la photographie de la deuxième page en a un aussi, et chaque transcription est rattachée à la page qu’elle transcrit plutôt qu’au fichier entier.

Un fichier qui explique ses entrées

La référence d’un service d’archives, le département dont le document vient, la date jusqu’à laquelle il doit être gardé et sa classification, écrits dans un fichier qu’une archive accepte encore. Aucune règle d’archivage ne sait ce qu’est une date de conservation, donc chaque entrée est accompagnée d’une description d’elle-même, et c’est cette description qui amène un contrôleur à accepter un fait que vous seul avez inventé. Une deuxième page ajoute une fiche de prêt dont les entrées sont un oui ou non, un type de fichier, un nom de personne, une mesure et deux adresses web, et donne à cette page son propre relevé caché.

Un document qui se lit à voix haute

Deux pages qui contiennent une copie d’elles-mêmes que personne ne voit : voici un titre, voici un tableau, et voici dans quel ordre les lire. Le logiciel qui lit le document à voix haute suit cette copie plutôt que l’ordre où les traits ont été dessinés, et saute le titre courant. Sur la page, rien ne change à l’œil.

Une liste dont les images parlent aussi

Une liste de pièces dont la première colonne est une image plutôt qu’un mot. Chaque image donne la phrase qu’on entend à sa place, si bien que rien de cette liste n’échappe à qui ne la voit pas. Sur la page, les images restent de simples images.

Un avis balisé qui dit ce qu’est chaque partie

Un avis de livraison dont la structure cachée dit où se place chaque élément, ce que veut dire une abréviation et sous quels en-têtes se range chaque cellule du tableau, avec son en-tête courant, son numéro de page et ses numéros de ligne signalés comme décor ; puis toutes les numérotations de liste et tous les rôles qu’un élément peut recevoir.

Tous les exemples, par sujet