HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

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

6662 articles Page 256/667 Sans filtre

06:08

GeoJSON

Ce format sert à encoder diverses structures de données géographiques. Un exemple montre un objet Feature contenant une géométrie de type Point avec des coordonnées et des propriétés. Il prend en charge les types géométriques Point, LineString, Polygon, MultiPoint, MultiLineString et MultiPolygon. Les objets géométriques assortis de propriétés sont appelés Feature et les ensembles de ces objets sont regroupés dans des FeatureCollection. En 2015, un groupe de travail de l'IETF a standardisé le format, aboutissant à la RFC 7946 publiée en août 2016 qui remplace la spécification de 2008.

06:07

Jetro – JSON query engine for Rust (jq-like DSL with compilation and VM)

Jetro est un moteur d'expressions compact pour interroger et façonner des données JSON, qui accepte des octets JSON et renvoie un serde_json::Value. L'API publique est minimale et orientée octets, centrée sur Jetro::from_bytes(bytes) et collect(expr), avec simd-json activé par défaut. Le langage permet de combiner requête et construction de formes en une expression unique, supportant filtres, projections, agrégats, groupements, opérations de patch et correspondance de motifs. L'exécution est optimisée par une planification consciente de la demande et une matérialisation paresseuse, offrant des chemins spécialisés comme index structurels, pipelines streamés, vues empruntées, voies columnaires ou un fallback VM. La documentation principale est le Jetro Book, complétée par une référence de syntaxe, des exemples, des notes de sécurité, un changelog et un CLI pour usage interactif.

06:07

Podman rootless containers and the Copy Fail exploit

La vulnérabilité CVE‑2026‑31431 (Copy Fail), divulguée le 29 avril, permet à un utilisateur local non privilégié d'obtenir un shell root en exécutant un script Python fourni. Podman facilite l'exécution « rootless » en utilisant des namespaces utilisateurs par utilisateur, ce qui fait que le root du conteneur est mappé à un UID non privilégié sur l'hôte et offre une isolation meilleure que le modèle daemon root de Docker. L'article explique comment le mapping des UID/GID et les capacités Linux déterminent les privilèges dans le conteneur et montre que faire tourner les processus en tant qu'utilisateur non root et supprimer les capacités réduit significativement la surface d'attaque. Des mesures complémentaires comme --security-opt=no-new-privileges, --cap-drop=all, systèmes de fichiers en lecture seule, limites de ressources, images minimales, pare‑feu et seccomp atténuent l'impact d'une compromission, mais le correctif du noyau reste nécessaire pour bloquer l'exploit. La conclusion recommande une défense en profondeur : corriger le noyau, durcir les images et la configuration des conteneurs, et ne pas considérer les conteneurs comme la seule frontière de sécurité, tout en notant que Podman rootless apporte un meilleur isolement que la configuration Docker par défaut.

06:07

My first in-prod corrupted hard drive problem

Un ingénieur IT d'une petite biopharma suisse a constaté en fin 2023 l'échec des sauvegardes d'un serveur SQL critique qui collecte des résultats d'instruments de laboratoire avec une forte contrainte de disponibilité. Après investigation, plusieurs pistes ont été écartées (EDR, configuration VSS et réparations Windows) avant de remarquer qu'un patch SQL récent coïncidait avec l'apparition des erreurs. L'analyse a montré que le disque présentait des blocs défectueux et que le patch avait provoqué une activité I/O intense qui a exposé des secteurs faiblement magnétisés, révélant une défaillance matérielle progressive. La récupération a été possible en utilisant un outil spécialisé qui a réécrit des secteurs faibles pour restaurer leur signal magnétique, puis en remplaçant le disque et en migrant les données. Les enseignements retenus incluent l'importance de vérifier la restaurabilité des sauvegardes, de traiter les interventions sur bases de données comme de véritables changements et de rester persévérant face aux diagnostics apparemment sans issue.

06:07

Non-determinism is an issue with patching CVEs

Les modèles d'IA accélèrent la découverte de CVE et feront apparaître davantage de vulnérabilités anciennes ou jusque-là indétectées. Les CVE liées aux paquets sont difficiles à gérer parce que les organisations n'ont souvent pas de manifeste à jour et les gestionnaires de paquets résolvent les versions différemment selon l'environnement, ce qui rend l'inventaire et l'analyse redondants et coûteux. Nix apporte déterminisme et herméticité en construisant des paquets à partir d'entrées déclarées et en stockant les sorties immuables identifiables par hash, rendant les graphes de dépendances interrogeables. Flox s'appuie sur Nix pour fournir des manifests, des lockfiles, des SBOMs et un registre centralisé (FloxHub), ce qui permet de regrouper les environnements identiques, de dédupliquer la gestion des CVE (passant d'un travail O(n) à O(u)) et de réappliquer les correctifs de façon reproductible. Les agents de codage peuvent automatiser la détection mais augmentent aussi le risque d'exploitation automatisée, d'où l'intérêt d'un gestionnaire de paquets déterministe et d'un système de référence central pour améliorer la sécurité.

06:06

How do I deal with memory leaks? (2022)

Ce document rassemble des questions fréquentes sur le style et les techniques en C++ et renvoie vers des ressources comme les C++ Core Guidelines, The C++ Programming Language et The Design and Evolution of C++. Il couvre des thèmes variés allant des débuts en C++ aux classes, hiérarchies, templates, gestion mémoire, exceptions et bonnes pratiques. L'auteur recommande d'utiliser la bibliothèque standard et des idiomes modernes (vector, smart pointers, RAII, algorithmes) pour réduire les erreurs et les fuites de mémoire. Il explique des choix de langage et de conception, par exemple pourquoi les destructeurs ne sont pas virtuels par défaut, pourquoi il n'existe pas de constructeurs virtuels et comment structurer des interfaces abstraites pour réduire les temps de compilation. Le texte donne des conseils pratiques sur l'utilisation sûre des fonctionnalités (éviter les macros, préférer static_cast/const_cast quand approprié, gérer les exceptions pour le traitement d'erreurs) et sur les conventions de style et de nommage.

06:06

PC Engine CPU

La PC Engine, sortie en 1987 entre les générations 8 et 16 bits, a connu du succès au Japon mais a été dépassée en Amérique du Nord par la Genesis et la SNES, et elle est notable pour avoir été la première console à supporter des jeux sur CD via le lecteur CD-ROM2. Le CPU HuC6280 est une version accélérée et enrichie du 65C02 avec registres, ALU et bus 8 bits, intégration d'un PSG sonore et d'un temporisateur, et il ajoute des instructions tout en convertissant les opcodes illégaux en NOP. Le processeur offre deux vitesses (~1,79 MHz et ~7,16 MHz) et, en mode rapide, bénéficie d'une faible latence mémoire le rendant souvent plus performant que le CPU du SNES pour du code 8 bits, mais il reste moins adapté aux opérations 16 bits et certaines instructions coûtent plus de cycles que sur le 6502. La mémoire est gérée par une MMU intégrée qui mappe huit pages logiques de 8 Ko via des registres MPR pour atteindre 21 bits d'adressage, place la zero page et la pile matérielle à $2000-$21FF, limite les HuCards à 1 Mo et fournit 8 Ko de RAM de travail, extensibles par le CD-ROM2. Le jeu d'instructions ajoute des transferts de blocs (TAI/TDD/TIA/TII/TIN) efficaces mais bloquants pour les interruptions, ainsi que des instructions spécialisées comme SET pour opérations sur zero page, ST0/ST1/ST2 pour ports VDC, BSR relatif, TST et des instructions d'échange et de mise à zéro.

06:06

Poland is now among the 20 largest economies

En 35 ans, la Pologne est passée d'une économie appauvrie après le communisme à la 20e économie mondiale, avec une production annuelle dépassant un trillion de dollars. La transformation repose sur l'adhésion à l'Union européenne en 2004, des milliards d'euros d'aides, et la construction d'institutions indépendantes comme les tribunaux et une autorité anti-monopole. L'élévation du niveau d'éducation et l'esprit d'entreprise se manifestent à Poznań par des projets d'intelligence artificielle et par Solaris, devenue un des principaux fabricants européens de bus électriques. Des défis subsistent, notamment des salaires encore inférieurs à la moyenne européenne, le vieillissement de la population et le fait que peu d'entreprises locales soient devenues des marques mondiales. Les responsables insistent sur la nécessité d'investir davantage dans l'innovation, de réduire les inégalités urbain-rural, d'améliorer l'accès au logement et de reconnaître la contribution des immigrés à la main-d'œuvre.

06:05

Looking at the data behind prediction markets

Depuis 2024-2026, des marchés de prédiction publics comme Polymarket et Kalshi enregistrent des volumes mensuels de plusieurs milliards de dollars, mais l'essentiel des mises porte sur le sport, les cryptomonnaies et les paris d'actualité plutôt que sur des questions publiques utiles. L'auteur identifie cinq usages potentiels — surveillance des risques, interprétation de l'actualité, aide à la planification des politiques, responsabilisation des décideurs et production d'informations inédites — et évalue si ces marchés fournissent réellement ces valeurs. Il constate que la surveillance des risques est le domaine le plus abouti avec demande médiatique et volumes crédibles, tandis que la détection précoce, la santé et le climat sont délaissés, et que les marchés sur l'IA ou d'autres sujets techniques sont souvent de faible qualité. L'analyse montre qu'un volume élevé n'améliore l'exactitude que pour les marchés ouverts au moins 90 jours, que la liquidité utile a crû jusque fin 2024 puis plafonne voire décline en médiane, et que la majeure partie des échanges est concentrée sur quelques marchés très visibles liés à l'actualité et à des figures politiques. Enfin l'auteur argue que les IA et chatbots capables de produire prévisions et récits risquent de supplanter l'usage public des marchés en servant directement les demandeurs d'information, même si les marchés restent potentiellement pertinents pour créer des probabilités publiques via la couverture médiatique.