HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

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

5732 articles Page 547/574 Sans filtre

07:10

SCM as a database for the code

Le développement logiciel évolue rapidement vers une plus grande navigation et discussion avec les LLMs, le rôle de l’édition de code en IDE se réduisant et la compréhension devenant primordiale. Git apparaît comme une source de friction, les LLMs offrant des éditions rapides alors que la révision des diffs et la gestion des merges prennent souvent du temps et nécessitent des efforts répétés. L’auteur appelle à remplacer git par un système reposant sur une base de données pour le code, avec une architecture orientée AST et des mécanismes CRDT pour des merges déterministes. Les problèmes identifiés incluent le monorepo, les difficultés de partition et de réassemblage du code, les superpositions de branches non prises en charge et les conflits de merge qui restent non déterministes. Le texte insiste sur le besoin d’un modèle de versionnement des structures de données, d’un langage de requête formel et d’un système qui traite le code comme des arbres plutôt que comme des blobs.

07:10

Show HN: Pangolin: Open-source identity-based VPN (Twingate/Zscaler alternative)

Pangolin est une plateforme open-source d'accès à distance basée sur WireGuard qui offre une connectivité sécurisée à des ressources privées et publiques. Elle réunit un reverse proxy et un VPN dans une seule plateforme, permettant l'accès aux applications web via le navigateur et l'accès aux ressources privées via les clients, avec une sécurité zéro-trust et un contrôle d'accès granulaire. Les options de déploiement incluent Self-Host: Community Edition (AGPL-3), Self-Host: Enterprise Edition sous Fossorial Commercial License, et Pangolin Cloud, service entièrement géré avec tarification à l'usage. Parmi les fonctionnalités clés figurent la connexion de réseaux distants par des connecteurs de sites sans IP publiques ni ports ouverts, l'accès via proxy inversé basé sur le navigateur, l'accès à des ressources privées via les clients et la traversée NAT intelligente. Des clients sont disponibles pour Mac, Windows, Linux, iOS et Android, la documentation est sur docs.pangolin.net et l'inscription au service géré se fait sur app.pangolin.net, avec des informations sur les licences et les contributions.

07:09

Reversed engineered game Starflight (1986)

Publié dans les années 80 par Binary Systems, Starflight permet au joueur d’être capitaine d’un vaisseau explorant librement la galaxie, avec du minage, des combats et de la diplomatie. Le scénario émerge lentement et révèle qu’une race ancienne provoque les flambées stellaires qui détruisent toute vie, ce qui a suscité éloges et influence durable sur les jeux sandbox. Le texte présente aussi le projet inverse, motivé par le désir de jouer puis de comprendre le jeu, mettant en lumière la dévotion des développeurs et un souci artisanal. Starflight est écrit en Forth, langage minimaliste de type pile-machine, et le document décrit son interpréteur, les mots comme unité syntaxique et l’absence de distinction nette entre données et code. Techniquement, le fichier STARFLT.COM fournit l’implémentation Forth et l’accès aux données, tandis que STARB.COM et STARA.COM contiennent les données et structures de jeu; le guide indique qu’on peut compiler avec make pour obtenir deux disassembleurs et que leurs sorties sont incluses dans le dépôt.

07:09

Continuous batching from first principles (2025)

L'article présente les mécanismes d'attention et le cache KV comme éléments centraux des LLM et explique pourquoi l'inférence doit être optimisée. Le cache KV permet d'éviter de recalculer les projections de clés et de valeurs pour les tokens générés, réduisant la complexité du décodeur de O(n^2) à O(n). Le chunked prefill divise le préremplissage initial en morceaux lorsque la mémoire est limitée, en conservant les états KV pour les réutiliser. Le batching continu réunit préfill et décodage via un batch ragged sans padding fixe, et le scheduling dynamique remplace les prompts terminés par de nouveaux arrivants. En combinant KV caching, chunked prefill et ragged batching avec scheduling dynamique, les services modernes peuvent servir des milliers d'utilisateurs en parallèle.

07:09

Benchmarking Automatic Typesetting Systems

L’article compare six outils de mise en page pour générer des PDFs à partir d’un fichier XML et d’un modèle. Sur une page, speedata Publisher et Typst affichent des temps proches, autour de 95 à 106 ms, tandis que les autres outils sont environ 3,5 fois plus lents. À 500 pages, Typst est nettement plus rapide par page (environ 0,3 ms par page, soit 157 ms au total), alors que speedata Publisher et WeasyPrint restent bien plus lents (respectivement 4,4 s et 8,7 s). L’étude montre aussi que les stratégies de justification diffèrent: TeX et Sp utilisent Knuth–Plass, alors que Typst, WeasyPrint et FOP privilégient une approche ligne par ligne, avec des variations visibles. En pratique, Typst est idéal pour un mail merge rapide, mais pour des mises en page dynamiques et adaptatives, speedata Publisher peut s’avérer nécessaire malgré un coût par page plus élevé.

07:08

Towards Autonomous Mathematics Research

Aletheia est un agent de recherche mathématique qui génère, vérifie et révise des solutions de bout en bout en langage naturel. Elle s'appuie sur une version avancée de Gemini Deep Think pour des problèmes de raisonnement difficiles, sur une nouvelle loi d'évolutivité lors de l'inférence et sur une utilisation intensive d'outils pour naviguer dans la recherche mathématique. Elle illustre des capacités allant des problèmes d'Olympiade à des exercices de niveau doctorat, avec des jalons tels qu'un article généré par l'IA sans intervention humaine calculant certaines constantes de structure en géométrie arithmétique appelées eigenweights, une collaboration humain-IA pour démontrer des bornes sur des systèmes d'ensembles indépendants et une évaluation semi-autonome de 700 problèmes ouverts sur la base Bloom's Erdos Conjectures, incluant des solutions autonomes à quatre questions. Elle propose de quantifier les niveaux d'autonomie et de nouveauté des résultats assistés par l'IA et introduit des cartes d'interaction humain-IA pour plus de transparence. Enfin, elle conclut par des réflexions sur la collaboration homme-IA en mathématiques et partage l'ensemble des prompts ainsi que les sorties du modèle à cette URL.

07:08

Hideki Sato, designer of all Sega's consoles, has died

Hideki Sato, designer derrière quasiment toutes les consoles de Sega et ancien président de l’entreprise, est décédé à l'âge de 77 ans. Selon Beep21, Sato est décédé ce week-end. Sato et son équipe de recherche et développement ont été responsables du matériel d’arcade et domestique de Sega, notamment la Master System, la Genesis/Mega Drive, la Saturn et la Dreamcast. Il a rejoint Sega en 1971 et a été président par intérim entre 2001 et 2003, avant de quitter l’entreprise en 2008. Il expliqua que le développement des consoles domestiques était influencé par l’arcade, citant la SC-3000 comme première machine 8 bits et le passage à une Megadrive 16 bits, et évoqua le Dreamcast axé sur le jeu et la communication avec modem et VMUs liés, tout en indiquant qu’une liaison avec les téléphones portables avait été envisagée.

07:08

Show HN: VOOG – Moog-style polyphonic synthesizer in Python with tkinter GUI

C'est un synthétiseur analogique virtuel polyphonique développé en Python avec une interface tkinter inspirée d'un modèle emblématique. Il dispose de trois oscillateurs proposant les ondes sinusoïdales, dent de scie, carré et triangle, avec des options de détuning et de niveau. Le signal passe par un filtre Moog ladder à 24 dB/octave avec résonance et modulation par enveloppe, complété par deux enveloppes ADSR pour l'amplitude et le filtre, et par un LFO à quatre formes d'onde et trois destinations. Il offre quatre canaux multitimbraux avec 8 voix de polyphonie par canal, et propose 19 presets intégrés ainsi qu'un système de sauvegarde/chargement de patches. L'interface comprend des boutons rotatifs, un clavier virtuel et une prise en charge MIDI optionnelle, et peut être utilisé en mode GUI ou CLI après installation sur Python 3.13+ avec tkinter.