HN Digest
Briefing personnel.

Lire vite.
Garder l'essentiel.

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

11659 articles Page 205/1166 Sans filtre

Static Allocation, Constant Work

L'auteur explique que l'erreur use-after-free se manifeste différemment selon que la mémoire soit recyclée dans un pool ou réallouée librement, la première causant un aliasing déterministe sans confusion de type sauf en présence d'enums en ligne. Il propose d'éviter les confusions de type en utilisant des allocateurs typés ou des pools segmentés par type, ce qui réduit la réutilisation inter-types au prix d'une légère inefficacité mémoire. Comme alternative aux allocations dynamiques, la stratégie de l'allocation statique consiste à fixer dès l'initialisation le nombre maximal d'ordres et à refuser les demandes excédentaires pour garantir une dégradation contrôlée et éviter des échecs catastrophiques. Le principe de travail constant consiste à représenter les emplacements libres par un ordre neutre préinitialisé et à faire circuler les ordres sans créer ni détruire d'objets, ce qui simplifie la logique d'états et facilite les assertions exhaustives. Ces techniques améliorent la prévisibilité des performances et la vectorisation possible du code, mais elles exigent des compromis en mémoire et en conception et ne conviennent pas à tous les cas.

OpenAI's GPT-6 Astra on ARC-AGI-3

GPT-6 Astra obtient des scores d'état de l'art sur ARC-AGI-3, atteignant 62,7 % avec le harness Standard pour environ 26 k$ et 99,9 % avec le Provider Adapter pour environ 19 k$. Astra dépasse le niveau humain en efficacité d'action, nécessitant moins d'actions que la médiane humaine sur 96 % des niveaux et en moyenne 51,7 % d'actions en moins par niveau. Le modèle transforme des environnements inconnus en modèles symboliques compacts et crée une notation algébrique spécifique au domaine pour suivre l'état et planifier des actions. Dans le harness PRO-LONG, Astra a construit des outils personnalisés — parseurs de plateaux, modèles d'état, algorithmes de recherche et petites bibliothèques de jeu — en exploitant un bac à sable d'exécution de code. ARC-AGI-3 mesure exploration, modélisation, fixation d'objectifs et exécution de plans dans des environnements interactifs, et les auteurs notent qu'Astra représente un progrès notable sans pour autant constituer une preuve d'AGI, le benchmark devant évoluer.

How to get a free .arpa domain

Le domaine .arpa est réservé à l'infrastructure Internet mais il est possible d'y obtenir des enregistrements DNS exploitables via certains services. L'auteur a repris l'idée d'e164.arpa et explique qu'avec ip6.arpa on peut utiliser la délégation inverse IPv6 pour créer un nom de domaine exploitable. La procédure consiste à créer un tunnel chez Hurricane Electric pour obtenir un préfixe IPv6 routé, formater et inverser ses nibbles pour obtenir le nom en .ip6.arpa, puis ajouter la zone chez un registrar DNS comme deSEC. Il faut ensuite modifier la délégation rDNS dans Tunnelbroker pour pointer vers deSEC et créer les enregistrements DNS correspondants, par exemple un CNAME vers l'hébergeur. Pour l'hébergement, l'auteur recommande Surge pour sa simplicité et signale que l'obtention d'un certificat HTTPS est souvent compliquée pour les domaines .arpa.

The browser's main thread is expensive

Lorsqu'on parle d'optimisation frontend, on pense surtout au réseau, au shrink du bundle et au cache, mais sur les écrans très interactifs c'est le blocage du thread principal qui provoque le jank et fige le défilement, la saisie et les animations malgré toutes les économies ailleurs. Le thread principal exécute JavaScript et la majeure partie du pipeline de rendu — callbacks rAF, calcul des styles, layout et paint — tandis que le compositeur n'assemble que les couches finales; avec 60 Hz le budget par image est ~16,6 ms (pratiquement ~10 ms) et toute tâche longue (généralement >50 ms) bloque l'interface. Pour mieux utiliser cette ressource limitée on peut scinder les gros travaux en tâches plus courtes (yield via setTimeout, MessageChannel ou requestAnimationFrame), regrouper les opérations fréquentes (batching, debounce, throttle, rendre une fois par frame) et prioriser les tâches avec des files et le pattern idle‑until‑urgent. Quand on ne peut pas rester sur le main thread, on pousse le travail vers le compositeur en animant des propriétés composables (transform, opacity) et en appliquant FLIP pour éviter les layouts par frame, ou on externalise les calculs lourds dans des web workers via postMessage et objets transférables pour limiter le coût des copies. Enfin, différer et éliminer le travail est souvent la meilleure optimisation : code splitting, rendu paresseux avec IntersectionObserver, arrêter les animations hors écran, et réduire la charge en abandonnant, fusionnant ou mémorisant les mises à jour, tout en acceptant des compromis selon le contexte et le matériel.

A PCB business card with a batteryless LED, powered by the phone that taps it

L'auteur a conçu une carte de visite en circuit imprimé intégrant une puce NFC et une LED sans batterie qui s'allume au contact d'un téléphone. La LED est alimentée par la récupération d'énergie du champ radio du téléphone via la broche d'harvest du NTAG I²C Plus, tandis que la puce communique en modulant le champ du téléphone. Les puces livrées vierges n'étaient pas formatées en NDEF et les applications grand public ont refusé d'écrire l'URL en raison de restrictions de niveau élevé. L'auteur a donc développé une petite application iOS utilisant Core NFC en mode bas niveau pour envoyer directement les commandes mémoire et programmer les cartes. Après fabrication de dix exemplaires par un service d'assemblage, il retient que l'idée d'alimenter des objets inertes via un téléphone ouvre des pistes intéressantes pour des dispositifs sans batterie.

GLP-1s are being linked to fewer serious infections, including TB

Deux études récentes ont associé l'utilisation d'agonistes des récepteurs GLP-1, comme le sémaglutide et le tirzepatide, à un risque réduit d'infections graves. L'étude publiée dans Nature Communications, basée sur des dossiers médicaux déidentifiés de 2017 à 2025, a trouvé que les utilisateurs de GLP-1 étaient moins susceptibles d'être diagnostiqués avec la tuberculose pendant jusqu'à cinq ans. L'étude parue dans le BMJ chez des personnes atteintes de diabète de type 2 et de maladie cardiovasculaire a montré que le tirzepatide diminuait les événements cardiovasculaires majeurs ainsi que les infections entraînant une hospitalisation et la mortalité. Les auteurs insistent sur le fait que ces travaux sont observationnels et rétrospectifs, ce qui signifie qu'ils établissent une corrélation sans prouver de relation causale directe. Les chercheurs proposent que l'amélioration du contrôle glycémique et la perte de poids puissent expliquer ces effets mais appellent à des études expérimentales et prospectives pour confirmer les mécanismes et la solidité des résultats.