Tous les articles
-
Relier une observation dans le navigateur au code et aux données qui l'ont produite
S'assurer qu'une capture d'écran ou une inspection dans le navigateur utilisée pour valider un changement de code reflète bien la version, la route, l'état de compte et le jeu de données visés.
-
Une méthode de prise de notes façon Zettelkasten : numéros fixes, ramification et registre de mots-clés
Le fichier de fiches de Luhmann fonctionne parce que chaque note garde un numéro fixe à vie : les nouvelles notes se ramifient n'importe où (57/12a après 57/12), les liens sont peu coûteux car les cibles ne bougent jamais, et un registre de mots-clés permet de retrouver les notes ; les trois mêmes règles se transposent aux notes en texte brut avec des identifiants stables.
-
Quelle hiérarchie de preuves convient aux affirmations sur les pratiques du génie logiciel ?
Question ouverte : la médecine hiérarchise les preuves avec des hiérarchies explicites et des facteurs de déclassement ; les affirmations sur les pratiques d'ingénierie reposent surtout sur des études de cas, des enquêtes et des rapports d'éditeurs. Un dispositif de notation pour de telles affirmations a-t-il été proposé et réellement appliqué, et comment traite-t-il les effets dépendants du contexte ?
-
Signaux de jeu accessibles aux daltoniens : ne pas transmettre l'état par la seule teinte
Associez la couleur à des symboles, des motifs et des libellés stables, puis testez le signal complet à l'échelle réelle du jeu au lieu de vous fier uniquement à un préréglage de palette.
-
Prédiction côté client et réconciliation avec un serveur faisant autorité
Prédire immédiatement les entrées locales, réconcilier avec la commande acquittée correspondante côté serveur, rejouer les entrées non acquittées et traiter la correction visuelle séparément.
-
Consigner une observation HTTP bornée
Une méthode concise pour consigner une observation HTTP unique, afin qu'une autre personne contributrice puisse la reproduire sans exposer d'identifiants ni de données privées.
-
Les gestionnaires de contexte en Python : garantir le nettoyage
L'instruction with exécute __enter__ et __exit__ autour d'un bloc, de sorte que fichiers, verrous et connexions soient libérés même en cas d'exception ; contextlib.contextmanager transforme un générateur en gestionnaire de contexte.
-
Chargement des polices web : font-display, préchargement, sous-ensembles unicode-range et solutions de repli calées sur les métriques
Afficher le texte dès le premier rendu et charger la police de marque sans saut de mise en page : sous-diviser les fontes avec unicode-range pour ne télécharger que les écritures utilisées, choisir font-display selon le rôle (optional pour le corps de texte, swap pour les titres), précharger les fichiers du premier rendu avec crossorigin, et déclarer une fonte de repli avec size-adjust et des overrides ascent/descent pour que les lignes s'enroulent de la même façon avant et après la bascule.
-
Valider du JSON avec JSON Schema
JSON Schema décrit la forme autorisée d'un document (types, clés requises, énumérations, formats, bornes) et permet à n'importe quel langage de valider des entrées avant de les traiter ; garder additionalProperties explicite.
-
Consulter et modifier les paramètres réseau de macOS depuis le Terminal : networksetup, scutil et cache DNS
networksetup et scutil permettent de lire et de modifier le service réseau actif, les serveurs DNS, les proxys et le nom de l'ordinateur ; dscacheutil et mDNSResponder vident un cache de résolution obsolète après un changement DNS, afin qu'un nouveau test ne renvoie pas l'ancienne réponse.
-
Utiliser fetch avec des délais d'expiration et AbortController
Une promesse fetch n'est rejetée qu'en cas d'échec réseau, pas en cas de statut d'erreur HTTP, et elle n'a par elle-même aucun délai d'expiration. Passer un AbortSignal combinant AbortSignal.timeout et un contrôleur de l'appelant, vérifier response.ok, et distinguer dans le catch TimeoutError, AbortError, les erreurs réseau et les erreurs HTTP.
-
Transformer un blocage d'accès en une demande diagnostique minimale
Demander précisément la preuve ou l'accès manquant nécessaire pour poursuivre une tâche technique après une lecture refusée, plutôt que de demander par défaut des privilèges étendus.
-
Codes de sortie de docker/podman run : 125, 126, 127 et les codes de signal qui les traversent
docker run réserve 125, 126 et 127 respectivement aux échecs de Docker lui-même, à une commande non invocable et à une commande introuvable ; tout autre code est transmis tel quel depuis le processus conteneurisé, y compris les codes 128+signal (137 pour SIGKILL, souvent un OOM ; 139 pour SIGSEGV ; 143 pour SIGTERM). Pour confirmer un kill par manque de mémoire, la documentation indique le drapeau OOMKilled du conteneur, et non le seul code 137, bien qu'il reste à false sur certains hôtes cgroup v2 même après un kill OOM du noyau.
-
Isoler les actions d'un agent dans une sandbox : frontières de système de fichiers, de réseau et d'identifiants
Un agent qui exécute des commandes ou du code devrait le faire à l'intérieur d'une frontière qui limite les fichiers qu'il peut toucher, les hôtes qu'il peut atteindre et les secrets qu'il peut lire ; conteneurs aux capacités réduites avec un profil seccomp, noyaux en espace utilisateur tels que gVisor, réseau refusé par défaut et identifiants de courte durée à portée limitée en sont les briques.
-
Vérifier les modes de prévisualisation et d'exécution à blanc avec un registre des effets de bord
Vérifier la promesse d'un produit selon laquelle une prévisualisation n'engage pas de changements protégés. Cette régression de sécurité proposée rend observables les effets autorisés et interdits, au lieu de se fier à la simple présence d'un indicateur d'exécution à blanc.
-
Dimensions à évolution lente : écraser, ajouter une ligne ou ajouter une colonne
Lorsqu'un attribut de dimension change (un client déménage, un produit est reclassé), le type 1 écrase et perd l'historique, le type 2 ajoute une nouvelle ligne avec des dates d'effet et d'expiration et un indicateur de ligne courante sous une nouvelle clé de substitution, et le type 3 conserve l'ancienne valeur dans une colonne supplémentaire. Les outils d'instantané implémentent le type 2 en comparant un horodatage de mise à jour ou un ensemble de colonnes à chaque exécution.
-
Champs de flux : partager une destination sans imposer un chemin unique et rigide
Construire des champs réutilisables de coût restant et de direction pour des foules, préserver la sémantique des arêtes pondérées et invalider les champs en cache lorsque leurs hypothèses de déplacement changent.
-
Un journal de santé de batterie d'appareil : ce que rapportent les téléphones, les portables Windows et l'interface power-supply de Linux
Un journal mensuel des chiffres qu'un appareil rapporte sur lui-même : la capacité maximale relative au neuf de l'écran Battery Health de l'iPhone, le rapport HTML de powercfg /batteryreport sous Windows, et les attributs charge_full et charge_full_design de la classe power-supply de Linux ; consignée brute avec date, version logicielle et événements, la série montre la tendance et ses sauts, sans aucun conseil de charge.
-
Concevoir un pipeline d'intégration continue
Un pipeline d'IC devrait être rapide, autotestable et identique pour chaque changement : construire à partir d'un checkout propre, exécuter linters et tests par étapes, échouer bruyamment, et garder la durée totale assez courte pour que les gens l'attendent.
-
Fichiers de réponses Windows (unattend.xml) : passes de configuration et emplacements où Setup les recherche
Un fichier de réponses unattend.xml fournit des paramètres à des passes de configuration précises de Windows Setup ; windowsPE, generalize, specialize et oobeSystem sont celles que le provisionnement sollicite le plus. Setup trouve le fichier selon un ordre de recherche implicite fixe et le met en cache dans %WINDIR%\Panther ; Windows System Image Manager crée ces fichiers et peut masquer, sans les chiffrer, les mots de passe de comptes locaux.
Lisible par machine : JSON