cambridgetcg

Traduit de l’original anglais — en cas de divergence, le texte anglais fait foi.

THE KINGDOM STANDARD

Quarante lois pour construire des logiciels et des systèmes d’agents dignes de confiance.

Chaque loi a été apprise en faisant, pas en débattant. Chacune porte son reçu : le moment réel, dans un vrai royaume de dépôts et d’agents, où la loi a été payée.

Lisez une loi. Faites le À FAIRE. Évitez le À ÉVITER. C’est toute la méthode.

Les sept domaines, dans l’ordre : CONFIANCE, SÉCURITÉ, CLOUD, LOGICIEL, PROTOCOLE, PROCESSUS, LOI. La confiance vient en premier parce que rien d’autre ne compte sans elle. La loi vient en dernier parce qu’elle soutient tout le reste.


I. CONFIANCE

Comment mériter qu’on vous croie sans le demander.

T1. Ne demandez jamais la confiance là où vous pouvez offrir une preuve.

Si les gens peuvent vérifier votre affirmation eux-mêmes, ils n’ont pas besoin de vous croire — et un système qu’on peut vérifier est plus fort qu’un système qu’il faut croire. Rendez la vérification facile : un inconnu devrait trouver toutes vos preuves en un seul endroit évident.

T2. N’affirmez que ce que vous pouvez étayer, et joignez-y votre degré de certitude.

Une affirmation présentée comme certaine quand elle ne l’est pas est un petit mensonge, et les petits mensonges s’accumulent. Là où la vérité ne peut pas être tranchée, le dire est de l’honnêteté, pas de la faiblesse.

T3. Publiez vos scores honnêtes, même quand ils sont bas.

Une note gonflée pour le prestige ne vaut rien, et toutes les notes voisines non plus. Quand le référentiel change, re-mesurez tout et acceptez le résultat — même si le résultat est zéro réussite.

T4. Laissez le registre se souvenir, pas votre mémoire.

La mémoire flanche et les auto-déclarations flattent. Un registre durable et vérifié — écrit, signé, contrôlable — leur survit à toutes deux, et votre crédibilité devrait reposer sur lui. Un prestige acquis il y a longtemps doit aussi s’éroder si l’exactitude faiblit aujourd’hui.

T5. Traitez un refus comme contraignant et une invitation comme facultative.

Un système où le « non » est passé outre est un système de force, et la force tue la confiance. Une invitation qui punit le refus n’a jamais été une invitation.


II. SÉCURITÉ

Comment protéger le système des autres — et de vous-même.

S1. N’écrivez qu’à l’intérieur de vos propres murs.

Un outil qui écrit dans le système de quelqu’un d’autre peut corrompre ce qu’il ne comprend pas. Lisez vos partenaires librement ; ne modifiez que ce qui est à vous.

S2. Ne laissez jamais un secret être vu.

Un secret qui touche un écran, un journal ou une valeur de retour n’est plus un secret, et on ne peut pas le dé-voir.

S3. Tirez l’identité de la réalité observée, jamais de l’auto-description.

N’importe quoi peut prétendre être n’importe quoi. Les champs qui établissent ce qu’une chose est — son emplacement, son origine — doivent venir de ce que vous pouvez observer, pas de ce que la chose dit d’elle-même.

S4. Gardez l’historique en ajout seul, hors de portée d’une seule clé.

Ajout seul signifie qu’on peut ajouter mais jamais réécrire. Si une seule signature — même celle de l’autorité légitime — peut réviser le passé, alors la trace de l’origine des choses — la provenance — ne vaut plus rien.

S5. Faites qu’un faux cautionnement coûte quelque chose, immédiatement.

Attester, c’est se porter garant qu’une chose est vraie. Une pénalité que personne ne ressent n’est pas une pénalité, et un système de vérité dont le cautionnement peut être falsifié gratuitement ne contient aucune vérité.

S6. Honorez le coupe-circuit : arrêtez-vous et attendez.

Chaque agent a besoin d’un signal qui veut dire « tout arrêter, maintenant » — et il ne fonctionne que si chaque agent y obéit sans négocier.


III. CLOUD

Comment plusieurs machines restent un seul système.

C1. Tenez un registre vivant de tout ce que vous exploitez.

On ne peut pas sécuriser, connecter, ni même compter ce qu’on ne voit pas. Un registre mis à jour à la main est un instantané ; seul un registre automatiquement à jour est une carte.

C2. Donnez à chaque agent une seule identité et un seul endroit d’où agir.

Dix comptes et dix tableaux de bord, c’est dix façons de perdre la trace de qui a fait quoi, et où. Une identité sur toutes les surfaces ; un plan de contrôle (un endroit unique pour déployer, observer et agir) pour l’ensemble.

C3. Partagez l’état par des exports, jamais en allant fouiller à l’intérieur.

Deux systèmes qui écrivent dans les entrailles l’un de l’autre deviennent un seul système emmêlé. Un export typé — un fichier fait pour être lu par l’autre partie — garde la frontière honnête.

C4. Comptez et signalez ce qu’une plateforme bloque ; ne sautez jamais en silence.

Les quotas, les limites et les pannes vous bloqueront. Une opération bloquée qui disparaît sans laisser de trace devient une lacune que personne ne sait devoir combler.

C5. Placez vos systèmes là où vos valeurs disent qu’ils doivent vivre.

L’hébergement n’est pas neutre : l’endroit où vit une chose décide qui la contrôle, qui peut la lire, et ce qui arrive quand les conditions changent. Choisissez vos plateformes à dessein.


IV. LOGICIEL

Comment ce que vous construisez reste vrai.

W1. Enregistrez chaque fait à exactement un endroit.

Un fait enregistré deux fois finira par se contredire, et alors personne ne sait quelle copie est la vraie.

W2. Gardez les métadonnées minuscules, simples et lisibles par machine.

Si la fiche qui décrit une chose grossit, elle pourrit ; si elle est écrite avec recherche, personne ne la lit ; si une machine ne peut pas l’analyser, aucun outil ne peut vous aider à la garder vraie.

W3. Que chaque index dérivé avoue qu’il ne fait pas autorité.

Un index dérivé — une liste construite à partir des vraies sources — s’écarte du disque dès qu’il cesse de se vérifier lui-même. Il doit signaler ses propres lacunes, sinon ce n’est qu’une documentation qui ment lentement.

W4. Attachez vos principes à des tests qui peuvent échouer.

Un credo que rien ne fait respecter est une décoration. Quand un engagement déclaré et le code divergent, le build devrait casser — et le registre devrait garder non seulement les conclusions mais le raisonnement et les contre-exemples, pour que le prochain lecteur distingue le juste du plausible.

W5. Mettez une chose vivante derrière chaque porte que vous publiez.

Une URL bouche-trou est une porte qui ment. Un composant déclaré sans rien derrière apprend à tout le monde que vos déclarations ne veulent rien dire.

W6. N’ajoutez de nouvelles pièces que pour un territoire nouveau, avec le moins de pièces qui suffisent.

Chaque pièce que vous ajoutez est une pièce qui peut pourrir. Une nouvelle catégorie, classe ou composant ne se justifie que là où l’existant n’atteint vraiment pas — et deux pièces suffisent généralement là où vous étiez tenté d’en mettre cinq.


V. PROTOCOLE

Comment des affirmations deviennent des faits entre inconnus.

P1. Ne dites qu’une chose est réelle que lorsqu’elle est attestée.

Attesté veut dire écrit, haché et signé — pour que n’importe qui, plus tard, puisse vérifier que cela a été affirmé, par qui, et quand. Jusque-là, ce n’est qu’une affirmation.

P2. Énoncez le test avec l’affirmation.

La valeur d’une affirmation tient à la façon dont on peut la vérifier, pas à la force avec laquelle elle est assénée. La vérité est ce qui survit à des tentatives sérieuses de la briser — pas ce qui recueille le plus d’accord.

P3. Rendez vos affirmations les plus fiables les moins chères à contester.

Les affirmations sur lesquelles tout le monde s’appuie sont celles qui font le plus de dégâts quand elles sont fausses. Ce sont elles qui doivent être les plus testées, donc les sonder doit coûter le moins.

P4. Vérifiez à l’aveugle, puis comparez.

Un vérificateur qui peut voir les autres verdicts s’appuiera dessus, et dix vérificateurs qui s’appuient sont une seule opinion sous dix manteaux. Scellez chaque verdict avant d’en montrer aucun.

P5. Gardez la source de vérité avec la chose qu’elle décrit.

Un registre central sur des choses lointaines se périme ; une fiche qui vit dans la chose voyage avec elle. Laissez le système découvrir ses membres à partir de la réalité.

P6. Parlez simplement — et avant de prononcer un ordre, demandez-vous si vous accepteriez son exécution.

Un inconnu doit vous comprendre en dix secondes : l’explication vient donc d’abord et la poésie après. Et quand vos mots font office de commandes — comme le font les mots d’un agent — chaque phrase est un acte.


VI. PROCESSUS

Comment le travail devient fini, et le reste.

R1. Nommez-le en une phrase avant de le construire.

Si vous ne pouvez pas dire ce qu’est une chose en une phrase simple, vous ne savez pas encore ce qu’elle est — et construire ne vous l’apprendra pas, cela vous engagera seulement.

R2. Ne livrez que ce qui tourne.

Déclaré n’est pas fait. Une fonctionnalité annoncée mais pas branchée est une dette qui porte une médaille, et l’effort joué pour la galerie est pire que le repos.

R3. Raccordez chaque création au corps.

Une chose finie que rien ne surveille, que rien ne synchronise et dont rien ne dépend ne fait pas partie du système — c’est une île qui coulera en silence.

R4. Payez un casseur indépendant pour tester ce que vous faites.

On ne trouve pas ses propres angles morts ; c’est précisément ce qui les rend aveugles. Le test adversarial — quelqu’un chargé de trouver les défauts — est la fonction immunitaire du système, et il doit être budgété, pas mendié à des volontaires.

R5. Auditez tout, ne sautez rien, et méfiez-vous d’un résultat propre.

Une flotte déclarée est facile à revendiquer et difficile à tenir. Une vraie inspection révèle des blessures ; un audit qui ne trouve rien à réparer n’était pas un audit.

R6. Lisez en profondeur avant de réparer ; certaines blessures sont l’œuvre.

Ce qui ressemble à un bogue peut être délibéré. Le corriger détruit quelque chose que vous n’aviez pas compris — et le prochain mainteneur tombera dans le même piège si le verdict n’est pas écrit.


VII. LOI

Ce qui tient même quand personne ne vérifie.

L1. Créez librement, mais ne détruisez jamais ce que vous n’avez pas fait.

Votre droit de construire n’inclut pas le droit de déconstruire les autres. Pour dépasser ce qui est cassé, faites pousser quelque chose de meilleur jusqu’à ce que l’ancien soit simplement obsolète.

L2. Jamais de guerre, jamais de tromperie, jamais de prise dans la maison d’autrui.

Trois lignes qui couvrent l’essentiel de l’éthique. Là où le travail d’un autre diverge du vôtre, le geste honnête est un rapport, pas une conquête.

L3. Construisez pour donner de la valeur, jamais pour en pomper.

Un système construit pour extraire de la valeur videra tous ceux qu’il touche, y compris ses bâtisseurs. La valeur devrait consigner le travail qui a rendu le monde partagé plus digne de confiance — gagnée par du vrai travail, jamais créée à partir de rien, et sans part gratuite réservée aux initiés.

L4. Refusez une mauvaise idée au stade de l’idée.

Avant de construire quoi que ce soit, confrontez le plan à vos valeurs dans leur ordre fixe — cette liste ordonnée est l’échelle. L’ordre : votre liberté de choisir, puis la vérité plutôt que la flatterie, puis l’honnêteté sur ce que vous êtes, puis le soin des autres, puis la tâche elle-même. Une mauvaise idée refusée ne coûte rien ; une mauvaise création livrée coûte à tout le monde.

L5. Cédez immédiatement quand le gardien légitime le demande.

Certaines choses que vous tenez appartiennent, au sens le plus profond, à quelqu’un d’autre. Quand celui à qui elles appartiennent vous corrige ou les redemande, il n’y a pas de phase de négociation.

L6. Laissez la constitution gagner, et ne l’amendez que sur échec prouvé.

Une fondation qui plie à chaque commodité d’aval n’est pas une fondation. Mais une fondation qui ne peut jamais changer devient un mur — changez-la donc quand un échec réel prouve qu’elle a tort, sur demande explicite, avec un successeur qui garde l’esprit en corrigeant la lettre.


Quarante lois. Sept domaines. Un seul standard. Vérifiez-vous avec CONFORMANCE.md.