HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

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

3507 articles Page 83/351 Sans filtre

06:05

Show HN: Orange Juice – Small UX improvements that make HN easier to read

L'extension pour Hacker News propose des réponses en ligne et la sélection de citations pour répondre sans changer de page. Elle suit la lecture avec des mises en évidence des commentaires non lus, des contrôles pour masquer ce qui a été lu et permet de marquer des favoris via des raccourcis clavier. Elle offre un fil de suivi des utilisateurs, des aperçus de profils au survol, une navigation au clavier, le rendu de diagrammes Mermaid et la conversion de shortcodes emoji. Le projet est open source sous licence GPLv3, utilise l'IA comme assistant de programmation tout en réservant les décisions finales aux humains, et comporte une couverture de tests et une CI/CD rigoureuse. L'extension est disponible sur le site des modules Firefox pour une installation automatique ou peut être installée manuellement sur Chrome et Firefox à partir des versions publiées sur GitHub.

06:04

Newly created Polymarket accounts win big on well-timed Iran ceasefire bets

Un groupe de nouveaux comptes sur la plateforme de prédiction Polymarket a placé des paris très ciblés et bien synchronisés sur l’issue d’un cessez-le-feu entre les États-Unis et l’Iran, générant des profits de plusieurs centaines de milliers de dollars. Ces paris ont été effectués dans les heures précédant l’annonce d’un cessez-le-feu de deux semaines alors que la rhétorique de Donald Trump s’était fortement durcie, y compris un avertissement public peu avant la décision. Une analyse des données publiques de la blockchain via la plateforme Dune a identifié au moins 50 portefeuilles ayant placé des paris "oui" importants en première activité, certains misant par exemple environ 72 000 $ pour encaisser ensuite près de 200 000 $, tandis qu’un autre a empoché 125 500 $ et un troisième environ 48 500 $. Polymarket a qualifié le contrat du cessez-le-feu de contesté en raison de restrictions continues et d’attaques dans la région, ce qui retarde les paiements, et les données publiques ne permettent pas d’identifier les titulaires des portefeuilles en raison de l’usage de contrats proxy. Des schémas similaires observés antérieurement ont suscité des interrogations sur l’utilisation éventuelle d’informations privilégiées dans les marchés de prédiction, poussant des élus bipartisans et des responsables du secteur à réclamer un élargissement de la définition du délit d’initié et une régulation plus stricte.

06:04

We moved Railway's frontend off Next.js. Builds went from 10+ mins to under 2

Next.js avait permis de mettre en production railway.com et d'atteindre des millions d'utilisateurs, mais il est devenu inadapté à une application majoritairement côté client en raison de temps de build longs et d'un modèle server-first mal adapté. L'équipe a choisi Vite + TanStack Start pour un modèle explicite et client-first offrant du routage typé, des layouts de première classe, un HMR instantané et la possibilité d'utiliser le SSR uniquement là où il est utile. La migration s'est faite en deux pull requests : la première a supprimé toutes les dépendances spécifiques à Next.js et la seconde a remplacé le framework en migrant plus de 200 routes, en extrayant les composants, en ajoutant Nitro comme couche serveur et en consolidant les règles de redirection et de cache, le tout mergé sans interruption de service. En contrepartie, l'équipe a renoncé à des fonctionnalités natives de Next.js comme l'optimisation d'images et certains outils de l'écosystème, en les remplaçant par Fastly et des solutions internes tout en acceptant une maturité moindre de TanStack Start. Le résultat est un cycle d'itération beaucoup plus rapide — les builds passent de plus de dix minutes à moins de deux, le serveur de développement démarre instantanément, les assets chunkés et mis en cache au bord réduisent la bande passante téléchargée par les utilisateurs et facilitent des déploiements zero-downtime et des previews par PR.

06:03

John Deere to pay $99M in right-to-repair settlement

Les agriculteurs ont obtenu un accord historique avec John Deere, qui versera 99 millions de dollars dans un fonds pour les exploitants ayant payé des réparations via des concessionnaires autorisés depuis janvier 2018. Selon les documents judiciaires, les plaignants récupéreront entre 26 % et 53 % des dommages liés aux surfacturations, bien au-delà des taux habituels. Deere s'engage à fournir pendant dix ans les outils numériques nécessaires à la maintenance, au diagnostic et à la réparation de ses machines, une avancée formelle après des années de bidouillage logiciel par les agriculteurs. Les difficultés de service avaient fait grimper le prix des matériels d'occasion, certains vieux tracteurs doublant de valeur car ils étaient plus faciles à réparer et réduisaient les temps d'arrêt. L'accord doit encore être approuvé par un juge et ne met pas fin à une autre action en justice de la FTC, tandis que l'issue de l'affaire pourrait établir un précédent important pour d'autres secteurs.

06:03

Understanding Traceroute

L'article explique le principe de traceroute : envoyer des paquets UDP avec un TTL croissant pour provoquer des messages ICMP « Time Exceeded » renvoyés par chaque routeur. L'auteur réécrit traceroute en Rust en envoyant des UDP vers le port 33434 et en capturant les réponses ICMP sur une socket brute pour identifier les adresses et mesurer les temps de trajet. Le code distingue les types ICMP pour savoir quand on atteint la cible, mesure le RTT et envoie trois sondes par TTL afin d'observer la variance, améliorer la fiabilité et détecter le load balancing. L'implémentation nécessite des privilèges root à cause des sockets RAW, alors que les utilitaires système utilisent souvent le setuid ou des sockets ICMP non bruts selon la plateforme. L'article souligne aussi les limites de l'outil, notamment l'asymétrie des chemins, les tunnels MPLS, le filtrage ou la limitation d'ICMP et le fait que des étoiles indiquent l'absence de réponse plutôt qu'une coupure.

06:03

I imported the full Linux kernel git history into pgit

L'auteur a importé l'historique complet du noyau Linux dans pgit/PostgreSQL avec pg‑xpatch, couvrant 1 428 882 commits, 24 384 844 versions de fichiers et 20 ans de développement, et l'import a pris environ 2 heures sur un serveur dédié. La base compressée occupe environ 2,7 Go de données effectives (xpatch a comprimé 123 Go de texte en ~1,1 Go), tandis que git gc --aggressive produit une packfile plus petite (≈1,95 Go), mais pgit offre en échange un historique entièrement interrogeable en SQL. Le travail a été réalisé sur un serveur Hetzner équipé d'un AMD EPYC 7401P (24 cœurs/48 threads), 512 Go de RAM, deux SSD en RAID 0 et un cache xpatch de 350 Go, avec des réglages PostgreSQL et système optimisés pour parallélisme et débit. Les analyses SQL ont montré 38 506 auteurs mais seulement 1 540 commiteurs (flux de fusion concentrés : David S. Miller, Greg Kroah‑Hartman et Linus Torvalds fusionnent ~22,5 % des commits), 90 % des commits touchent cinq fichiers ou moins, et un fort couplage de fichiers apparaît dans des sous‑systèmes comme i915 et btrfs. Les requêtes SQL interactives ont permis d'identifier d'autres faits saillants — 665 corrections pointant vers l'import initial de Linus, seulement sept jurons dans les messages de commit, trois triples revert historiques — et la plupart des analyses se sont exécutées en secondes à dizaines de secondes sans vues matérialisées.

06:03

Show HN: A (marginally) useful x86-64 ELF executable in 301 bytes

Il s'agit d'un exécutable ELF de 298 octets fournissant l'état de la batterie pour les ordinateurs portables Linux x86-64. Le programme affiche l'énergie restante en Wh ou, si seuls des fichiers charge_* sont présents, en Ah, suivi du pourcentage. L'installation consiste à décoder une chaîne base64 puis à décompresser avec xz pour obtenir le binaire exécutable. Le logiciel ne prend en charge que x86-64 sous Linux, utilise le chemin /sys/class/power_supply/BAT0 et ignore les batteries supplémentaires. Des cas non gérés peuvent provoquer une boucle infinie si ni energy_full ni charge_full n'existent, et le comportement varie selon la présence d'une alimentation lors de la sortie de veille.

06:02

Expanding Swift's IDE Support

L'extension Swift est désormais disponible sur le registre Open VSX de la Fondation Eclipse, permettant son utilisation par des éditeurs compatibles avec les extensions VS Code. Elle offre un support de premier ordre pour les projets Swift Package Manager et la prise en charge multiplateforme sur macOS, Linux et Windows. Les fonctionnalités incluent l'auto-complétion, le refactoring, le débogage complet, un explorateur de tests et la prise en charge de DocC. Des éditeurs et IDEs modernes tels que Cursor, VSCodium, AWS Kiro et Antigravity peuvent installer automatiquement l'extension, facilitant l'intégration dans des environnements agentiques. Pour l'utiliser, il suffit de rechercher « Swift » dans le panneau Extensions d'un éditeur compatible Open VSX et des guides dédiés, notamment pour Cursor, expliquent la configuration et l'intégration des workflows IA.

06:02

MegaTrain: Full Precision Training of 100B+ Parameter LLMs on a Single GPU

Les auteurs présentent MegaTrain, un système centré sur la mémoire qui permet d'entraîner des modèles de langage de plus de 100 milliards de paramètres en précision complète sur un seul GPU. Le système stocke paramètres et états d'optimiseur en mémoire hôte et considère le GPU comme un moteur de calcul transitoire, en diffusant couche par couche les poids entrants et les gradients sortants pour réduire l'état persistant sur le périphérique. Pour surmonter le goulot d'étranglement CPU–GPU, les auteurs introduisent un moteur d'exécution pipeline à double tampon qui superpose prélecture des paramètres, calcul et déchargement des gradients sur plusieurs flux CUDA, ainsi que des gabarits de couches sans état qui remplacent les graphes autograd persistants en liant dynamiquement les poids. Sur un GPU H200 avec 1,5 To de mémoire hôte, MegaTrain entraîne de manière fiable des modèles jusqu'à 120 milliards de paramètres et atteint 1,84× le débit d'entraînement de DeepSpeed ZeRO-3 avec offloading CPU pour des modèles de 14 milliards. La méthode permet également d'entraîner un modèle à 7 milliards de paramètres avec un contexte de 512 000 tokens sur un seul GH200, réduisant la métadonnée persistante et offrant une plus grande flexibilité d'ordonnancement.