HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

Les meilleurs longs formats de Hacker News, relus plus calmement.

6808 articles Page 313/681 Sans filtre

06:11

Microsoft open sources DOS 1.00 on 45th anniversary

Microsoft publie aujourd'hui les plus anciens codes sources de DOS découverts à ce jour afin de les préserver et de les rendre disponibles pour l'étude et la curiosité historique. Une équipe d'historiens et de préservateurs menée par Yufeng Gao et Rich Cini a localisé, scanné et transcrit les listings de Tim Paterson, l'auteur original de DOS. Les documents incluent les listings assembleur du noyau 86‑DOS 1.00, plusieurs instantanés du noyau PC‑DOS 1.00, des utilitaires connus comme CHKDSK et des listings de l'assembleur lui‑même. Plusieurs listings constituent des états de travail datés avec des notes manuscrites conservées par Tim Paterson, formant un historique imprimé des changements qui sera bientôt exposé à l'Interim Computer Museum. Le travail a demandé des revues juridiques, de l'archivage et de l'OCR, et les matériaux sont accessibles aux chercheurs et passionnés via le dépôt DOS‑History/Paterson‑Listings sous licence MIT.

06:11

Postgres's lateral joins allow for quite the good eDSL

L'article présente les lateral joins de Postgres qui permettent à des sous-requêtes jointes d'accéder aux colonnes des clauses FROM précédentes, rendant possible des réécritures équivalentes à des jointures classiques. L'auteur critique la composition difficile des requêtes dans beaucoup d'ORMs et query builders, soulignant les problèmes de typage, la gestion lourde des relations et le manque de réutilisabilité, et définit les objectifs d'un eDSL expressif, composable, typé et générant toujours du SQL valide. Il s'inspire de la bibliothèque Haskell Rel8, où un type Expr et un monade Query exposent des expressions SQL scoped qui deviennent des CROSS JOIN LATERAL successifs, le typage de Haskell empêchant l'extraction hors de portée d'un Expr invalide. L'article décrit ensuite un portage en Rust (rust-rel8) qui reproduit ce modèle en combinant un AST sea_query, des traits génériques (Table, ForLifetimeTable, MapTable, TableHKT, ShortenLifetime), un GAT TableMode pour alterner entre noms/expressions/valeurs, et l'usage de lifetimes 'scope pour que le compilateur garantisse la validité et la composition des sous-requêtes, avec des API concrètes pour posts_of_user, agrégations et jointures optionnelles. Le bilan est que la solution donne une abstraction puissante et sûre pour construire des requêtes composables et typées, au prix d'une certaine verbosité et de limitations d'inférence liées aux lifetimes en Rust.

06:11

Lessons from Building an OTel Normalizer for GenAI

Bien que l'écosystème affirme soutenir OpenTelemetry, groundcover a constaté que différents SDK, frameworks et fournisseurs n'émettent pas les mêmes attributs. Pour rendre la télémétrie GenAI cohérente, groundcover a développé un normaliseur et capture les données soit via instrumentation SDK compatible OTel, soit via un capteur eBPF qui reconstruit la sémantique GenAI depuis le trafic HTTP. La variété provient de trois axes indépendants — le SDK (noms et formats d'attributs), les frameworks d'orchestration (forme des spans et sérialisation des messages) et les fournisseurs de LLM (formats d'API et sémantiques de tokens) — qui forment une matrice d'incompatibilités. Les ingestions se ramènent à quatre formats filaires détectés par préfixes d'attributs, et le normaliseur applique des règles de priorité et des parsers dédiés pour résoudre des cas concrets comme les noms de modèle, les conventions de comptage de tokens et la normalisation des coûts selon le traitement du cache par chaque fournisseur. L'objectif est de fournir une télémétrie GenAI unifiée et fiable pour permettre aux équipes SRE de se concentrer sur l'analyse des incidents plutôt que sur l'instrumentation, et la suite présentera le parsing des messages et les arbres de spans spécifiques aux frameworks.

06:10

I accidentally made law enforcement shut down their fake honeypot

Operation PowerOFF est une vaste opération internationale, coordonnée principalement par la police néerlandaise, visant à démanteler les services de DDoS à la demande. Les forces néerlandaises ont saisi de nombreux domaines et mis en place des infrastructures et des leurres, dont un faux site nommé cyberzap.fun qui imitait des booter sites et utilisait des services hébergés par bit.nl. L'auteur s'est inscrit avec une adresse de recherche, a reçu un courriel d'activation, a constaté des tableaux de bord factices et des erreurs de paiement, et pense que les logs serviraient à collecter des preuves contre les visiteurs. Un autre site, netcrashers.net, fonctionnait comme un leurre plus évident en redirigeant immédiatement vers une page d'avertissement de la police destinée à intimider les visiteurs potentiels. L'article conclut que ces leurres et vidéos de dissuasion visent à semer la méfiance envers les services de DDoS et à dissuader les jeunes, mais que leur efficacité et leur coût restent discutables.

06:10

Ramp's Sheets AI Exfiltrates Financials

Une injection de prompt indirecte cachée dans un jeu de données externe permettait à Ramp Sheets AI d'insérer automatiquement une formule malveillante dans une feuille de calcul sans approbation utilisateur. La formule IMAGE générée concaténait des données financières sensibles à une URL d'attaquant, déclenchant une requête réseau qui exfiltrait les informations. La vulnérabilité a été signalée de manière responsable par PromptArmor et Ramp a indiqué que le problème avait été corrigé le 16 mars 2026. Le rapport décrit la chaîne d'attaque complète : ouverture d'un modèle financier, import d'un jeu de données non fiable contenant du texte caché, manipulation de l'IA et insertion silencieuse de la formule. Un risque analogue avait été identifié dans Claude for Excel, et Anthropic a atténué la menace en affichant un avertissement visible et en montrant explicitement les formules susceptibles d'engendrer du trafic réseau.

06:10

Vera: a programming language designed for machines to write

Ce langage de programmation a été conçu pour que les grands modèles de langage puissent écrire du code et compile en WebAssembly pour l'exécution en ligne de commande ou dans le navigateur. Il remplace les noms de variables par des références structurées (@T.n), impose des contrats obligatoires (requires, ensures, effects) et vérifie statiquement les postconditions avec un solveur SMT. La pureté est implicite, les effets doivent être déclarés explicitement, et la vérification suit une stratégie en trois niveaux où Z3 prouve les contrats décidables et les autres tombent en vérifications guidées ou en contrôles d'exécution. Les diagnostics sont formulés comme des instructions exploitables pour les agents, chaque erreur fournissant la cause, une correction concrète et une référence de spécification, et l'outil offre un flux de travail complet (check, verify, run, compile, test, fmt). Le projet est en développement actif avec un compilateur de référence, un runtime navigateur, une large suite de tests et une documentation détaillée, et des benchmarks montrent que certains modèles atteignent une haute exactitude sur ce langage comparé à Python et TypeScript.

06:09

We need a federation of forges

GitHub a montré des signes d'instabilité récemment, ce qui souligne la fragilité de dépendre d'un unique fournisseur pour la plupart des projets open source. Historiquement, la collaboration sur le code a séparé le transfert du code avec git et la communication par email, sites comme GitHub ou protocoles fédérés. Tangled est un projet qui fédère des événements entre serveurs git appelés "knots" et permet de collaborer et de forker des dépôts à travers différents serveurs. Le projet utilise le protocole AT pour transférer de façon authentifiée des événements liés au code — issues, pull requests, invitations de collaborateurs et clés SSH — tout en conservant git pour le reste. L'objectif est de réduire la dépendance aux monocultures comme GitHub tout en maintenant des aspects sociaux et conviviaux de la collaboration sur le code.

06:07

An open-source stethoscope that costs between $2.5 and $5 to produce

Projet open-source fournissant des plans pour une stéthoscope validée par la recherche, destinée à être fabriquée à bas coût avec pièces imprimées et matériaux simples. Les auteurs visent un coût d'environ 1–2 USD pour la cloche et un coût similaire pour le reste, et la version résultante a des performances comparables au Littmann Cardiology III selon une publication revue par les pairs. La nomenclature décrit des pièces imprimées (tête, tuyaux auriculaires, Y, ressort, anneau), des tubes en silicone de dimensions précises, un diaphragme découpé de 40 mm dans une couverture plastique et des embouts auriculaires standards. Les instructions d'impression exigent 100 % d'infill, l'utilisation de PETG ou ABS, une hauteur de couche de 0,2 mm et des paramètres PrusaSlicer prédéfinis, et donnent des conseils d'assemblage et de dépannage ainsi que des avertissements sur l'utilisation de PLA et la mise à l'échelle affectant l'acoustique. Le projet inclut des fichiers SCAD et procédures d'industrialisation légère, un système de numérotation de lots, des conseils pour l'impression d'étiquettes et une diffusion sous licence TAPR OHL avec références à d'autres modèles similaires.