HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

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

3839 articles Page 146/384 Sans filtre

06:00

C89cc.sh – standalone C89/ELF64 compiler in pure portable shell

Ce script POSIX implémente un analyseur et compilateur C89 entièrement en shell, lisant le code source sur stdin et produisant un exécutable ELF64 x86-64 sur stdout. Il construit un arbre syntaxique abstrait (AST) via un parseur détaillé, gère les tokens, les commentaires, la consommation et la progression pour éviter les boucles infinies. Un émetteur permet de reconstituer le source depuis l'AST et un backend codegen convertit l'AST en octets machine dans un tampon avec gestion des étiquettes, des relocations, des symboles et des sections de données. Le dépôt intègre une mini-libc incluse par défaut fournissant des wrappers syscall, des fonctions de chaîne, un allocateur simple et des helpers d'E/S pour produire des binaires autonomes. Des utilitaires internes prennent en charge l'émission d'octets hex, l'alignement de la pile, les conventions d'appel System V et la génération complète de l'en-tête ELF et du programme loader.

06:00

Tailscale's new macOS home

Sur certains MacBooks munis d'une encoche, l'icône Tailscale dans la barre de menus pouvait disparaître dans la zone sans pixels, rendant l'application difficile à trouver. Apple ne fournit pas aux développeurs d'outils pour empêcher le rendu d'icônes dans l'encoche ou pour proposer un mécanisme de débordement, ce qui a entraîné des rapports de bogues. En solution temporaire, l'application a utilisé occlusionState pour détecter qu'elle était cachée et afficher une alerte contextuelle, méthode utile mais sujette à des déclenchements involontaires lors de changements d'affichage. Comme solution durable, Tailscale propose désormais une interface macOS en fenêtre, disponible par défaut depuis la version 1.96.2 et accessible depuis le Dock ou Spotlight, qui fonctionne en parallèle à l'utilitaire de la barre de menus. Cette interface offre une liste consultable des appareils et de leur état, des actions rapides (ping, copie d'adresses IP, Taildrop), une sélection de nœuds de sortie avec recommandation, un point rouge sur l'icône du Dock pour les erreurs critiques, un mini lecteur et un guide de prise en main, et l'équipe sollicite des retours tout en travaillant sur une interface équivalente pour Windows.

06:00

Decisions that eroded trust in Azure – by a former Azure Core engineer

L'auteur, ingénieur expérimenté ayant travaillé sur le noyau Windows et sur Azure depuis 2010, a rejoint l'équipe Overlake d'Azure Core le 1er mai 2023. Lors d'une réunion, il a découvert que l'organisation envisageait de porter de nombreux composants et agents Windows (jusqu'à 173 agents) vers une petite puce ARM fanless exécutant Linux sur la carte Overlake, ce qu'il jugeait techniquement irréaliste compte tenu des contraintes matérielles. Il a constaté un manque de compréhension organisationnelle sur le rôle et la nécessité de ces nombreux agents et a estimé que cette confusion créait un risque opérationnel majeur pour les nœuds Azure. L'auteur met en garde que cette accumulation d'éléments mal maîtrisés, utilisée pour orchestrer des charges critiques comme les API d'OpenAI, des services gouvernementaux et des services historiques comme SharePoint Online, peut provoquer des interruptions graves et des conséquences commerciales et de sécurité nationale. Après avoir tenté d'alerter la hiérarchie, analysé les systèmes et adressé des lettres aux dirigeants, il rapporte n'avoir reçu que peu de réponses satisfaisantes et annonce la publication d'une suite à la série d'articles.

06:00

Google releases Gemma 4 open models

La nouvelle génération de modèles ouverts met l'accent sur une intelligence par paramètre maximisée et une efficacité de calcul et de mémoire pour les appareils mobiles, l'IoT et les ordinateurs personnels. Ces modèles proposent des flux de travail agentifs permettant de créer des agents autonomes avec planification, navigation d'applications et appel de fonctions natif. Ils offrent un raisonnement multimodal avancé pour l'audio et le visuel, une prise en charge de 140 langues et des options de fine-tuning pour adapter les performances à des tâches spécifiques. Les architectures sont conçues pour être efficaces afin d'exécuter les modèles sur du matériel local et plusieurs tailles de modèles sont proposées, avec des performances élevées sur des benchmarks tels que MMLU, AIME, LiveCodeBench et GPQA. Une communauté et un écosystème sont encouragés pour explorer des cas d'usage et partager des développements autour de ces modèles.

06:08

Show HN: Zerobox – Sandbox any command with file, network, credential controls

Il s'agit d'un outil léger et multiplateforme de sandboxing de processus reposant sur le runtime sandbox d'OpenAI Codex. La solution applique une politique de refus par défaut et permet de contrôler finement les écritures, les accès réseau et les variables d'environnement. Les secrets sont injectés de façon sécurisée en remplaçant des placeholders dans l'environnement par les vraies valeurs au niveau du proxy uniquement pour les hôtes approuvés. Une interface en ligne de commande et un SDK TypeScript offrent des commandes, des exécutions JavaScript et des configurations détaillées pour les permissions de fichiers, de réseau et d'environnement. Le projet prend en charge macOS et Linux, fournit un binaire unique avec un overhead d'environ 10 ms, et propose des exemples pour protéger les builds, les tests et le sandboxing d'outils d'IA.

06:08

Ada and Spark on ARM Cortex-M – A Tutorial with Arduino and Nucleo Examples

Ce guide présente l'utilisation des langages Ada et SPARK sur des microcontrôleurs ARM Cortex-M pour les développeurs de systèmes embarqués. Le dépôt de code d'accompagnement est fourni sous la forme d'une archive nommée ada-on-cortex.zip pour illustrer les exemples pratiques. Le contenu couvre la documentation et les outils, l'écriture du premier programme, la liaison et le démarrage, ainsi que l'insertion de code machine et la gestion des interruptions. Plusieurs chapitres traitent des entrées/sorties numériques, des temporisations simples, des nombres aléatoires, des machines à états finis, du partage d'état et du minuteur système. Des sections expliquent aussi le mélange Ada avec C/C++, la gestion des erreurs d'exécution avec SPARK, et un bonus propose un ordonnanceur très simple ainsi que des références pour consulter ou acheter le livre.

06:08

Show HN: CLI to order groceries via reverse-engineered REWE API (Haskell)

Korb est une interface en ligne de commande écrite en Haskell qui permet d'utiliser de manière programmatique les APIs de REWE pour créer et commander des paniers pour retrait en magasin, avec toutes les sorties au format JSON. Le flux d'utilisation typique décrit implique l'ajout d'articles via un raccourci (fichier markdown partagé), la génération automatique d'un modèle d'achats récurrents par l'agent, l'ajustement des suggestions, la revue et confirmation du panier, puis la validation de la commande et la mise à jour de la liste de courses. L'installation propose des binaires précompilés pour macOS et Linux ou une compilation depuis les sources nécessitant GHC et Cabal ainsi que les certificats mTLS extraits de l'application REWE. La CLI expose des commandes pour rechercher des magasins et produits, gérer les favoris et le panier, sélectionner des créneaux de retrait et passer ou annuler des commandes, ainsi que des fonctionnalités complémentaires comme la suggestion d'articles et le téléchargement d'eBons. Le projet est non officiel et repose sur des APIs rétro‑ingénierées, inclut une version de l'algorithme de suggestion formellement vérifiée en Lean 4 avec des tests différentiels aléatoires, et comporte un avertissement d'utilisation à ses risques et périls.

06:08

Show HN: Semantic atlas of 188 constitutions in 3D (30k articles, embeddings)

L'outil propose une carte interactive permettant de sélectionner des systèmes constitutionnels par pays et d'explorer leurs points sémantiques en 3D. Chaque point dans l'espace 3D représente un article constitutionnel ou une unité juridique significative, et la proximité reflète la similarité sémantique plutôt que l'origine nationale. La plateforme offre des recherches par mots-clés pour trouver des occurrences littérales et des recherches sémantiques pour récupérer des passages conceptuellement proches même sans termes partagés. Des contrôles de filtrage, de présélections et de réordonnancement facilitent la comparaison de pays et l'examen des régions de l'espace sémantique mises en évidence par les résultats. Les métriques incluent la couverture et l'entropie mesurant l'étendue et la répartition thématique d'une constitution, tandis que les détails d'article indiquent le groupe thématique mondial et la probabilité d'affectation, avec la valeur -1 pour les segments non regroupés.

06:07

How-to guide: Commissioning a Sensor Physics R&D Lab

Ce guide pratique décrit comment concevoir et exploiter un laboratoire de développement et caractérisation de capteurs, en insistant sur le fait qu'un véritable labo R&D nécessite un local adapté et séparé des bureaux. L'installation doit être structurée en trois zones distinctes — laboratoire principal, atelier mécanique et zone PCB/PCBA — avec surfaces minimales, circuits et services dédiés (alimentation, gaz, vide, ventilation, réseau et protection ESD) et la recommandation explicite de sécuriser l'espace avant d'acheter du matériel. La priorisation des achats est phasée (infrastructure et équipement de base d'abord, instruments de conditionnement de signal et DAQ ensuite, et enfin équipements spécialisés selon les projets) et la liste détaillée couvre alimentations, multimètres, oscilloscopes, microscopes, lock-in, SMU, préamplis, TIAs, DAQ et générateurs d'impulsions. Le guide aborde également les besoins en contrôle environnemental et métrologie — chambres climatiques, isolation vibratoire, cages de Faraday, étalonnages traçables, ainsi que sécurité incendie, stockage de solvants et procédures pour sources radioactives — et insiste sur la gestion d'inventaire et l'étiquetage systématique. Sont enfin fournis des détails pratiques pour l'atelier mécanique (impression 3D, découpe laser, outillage), pour la zone PCB (stations de soudage Weller, extraction de fumées, nettoyage ultrasonique, composants et consommables) et des recommandations de marques et ressources pour approfondir les choix.