HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

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

3464 articles Page 67/347 Sans filtre

06:00

The End of Eleventy

La campagne Kickstarter lancée par Font Awesome pour Build Awesome — une rébrand d'Eleventy — a atteint son objectif mais a été annulée et reportée en raison de problèmes d'envoi d'emails qui ont brisé son élan. Eleventy, créé par Zach Leatherman, est un générateur de sites statiques léger et flexible largement adopté par des organisations majeures, et Leatherman a rejoint Font Awesome en cherchant des modèles de financement durable pour le projet. Build Awesome propose des fonctionnalités professionnelles comme l'édition visuelle collaborative, la construction dans le navigateur et des modèles premium afin de monétiser l'écosystème, une approche qui rappelle des initiatives passées ayant rencontré des difficultés. De nombreux développeurs 11ty expriment des réserves quant à une centralisation commerciale qui pourrait aliéner la base technique, ajouter des abonnements et modifier l'esprit communautaire, tandis que l'auteur décrit aussi une alternative sociale et à tarif libre qu'il gère. L'article conclut que la monétisation des générateurs de sites statiques reste problématique et paradoxale pour leur public historique, en rendant hommage aux contributeurs bénévoles qui ont façonné ces outils.

06:10

RSoC 2026: A new CPU scheduler for Redox OS

L'auteur a remplacé l'ordonnanceur Round Robin par un ordonnanceur Deficit Weighted Round Robin (DWRR) afin de pouvoir attribuer des priorités différenciées aux processus. Le DWRR avantage nettement les files à haute priorité mais peut induire de la famine et des latences élevées pour les priorités basses. Une variante intercalée (Interleaved DWRR) limite la famine en alternant l'exécution entre files, réduisant les temps de réponse tout en conservant la priorisation. Des simulations et mesures réelles montrent que l'intercalage améliore les temps de réponse par rapport au DWRR non intercalé, avec des gains pratiques comme pixelcannon passant d'environ 1000 à ~1150 FPS et schedrs augmentant d'environ 243 à 360 opérations/s. Le code est disponible via plusieurs merge requests et la prochaine étape prévue est de remplacer la logique statique par les calculs dynamiques de lag de l'algorithme EEVDF.

06:09

Bluesky April 2026 Outage Post-Mortem

L'équipe de Bluesky a subi une panne intermittente affectant environ la moitié des utilisateurs pendant environ huit heures, et l'auteur présente ses excuses pour l'interruption. La cause racine était un endpoint GetPostRecord sans limitation de concurrence qui lançait des dizaines de milliers de goroutines, saturant les connexions à memcached et épuisant les ports éphémères à cause de nombreux sockets en TIME_WAIT. Le diagnostic a été compliqué par une observabilité insuffisante et l'absence de métriques par client, ainsi que par des logs d'erreur provenant de multiples caches rendant difficile l'identification du bon point défaillant. Un effet en chaîne est survenu lorsqu'un grand nombre d'erreurs memcached a généré des écritures log bloquantes massives, entraînant la création d'un grand nombre de threads runtime, des pauses GC, des OOM intermittents et des redémarrages qui aggravaient l'épuisement de ports. La résolution temporaire consistait à utiliser un dialer créant des adresses loopback aléatoires pour élargir l'espace IP+port, et les leçons retenues incluent la nécessité d'observabilité fine par client, des métriques pour les gros lots de requêtes et de privilégier métriques/tracing plutôt qu'un logging excessif.

06:09

A security scanner as fast as a linter – written in Rust

Le projet propose un scanner de sécurité local extrêmement rapide capable d'analyser un dépôt en quelques centièmes de seconde pour fournir un retour immédiat aux développeurs. Il intègre plus de cent règles prédéfinies couvrant dix langages (JavaScript/TypeScript, Python, Go, Ruby, Java, PHP, Rust, C#, Swift) et des contrôles spécifiques à des frameworks comme Express, Django, Rails, Spring ou Laravel. L'outil est fourni en un seul binaire Rust utilisant tree-sitter pour l'analyse AST et rayon pour le parallélisme, sans besoin de JVM, d'interpréteur Python, d'accès réseau ni d'étape de téléchargement de règles. Il peut charger un sous-ensemble compatible de règles Semgrep/OpenGrep, détecte aussi des secrets et clés privées, et produit des sorties terminal, JSON ou SARIF pour une intégration en CI, en extension VS Code ou en hooks pre-commit. La philosophie n'est pas de remplacer complètement Semgrep mais d'offrir un feedback local très rapide avec une passerelle d'adoption, des analyses sur fichiers modifiés et des baselines de dépôt pour faciliter l'intégration en équipe.

06:09

The best seat in town

JCDecaux, inventeur du mobilier urbain moderne, a remplacé à Paris 417 toilettes par 435 cabines auto-nettoyantes en 18 mois dans la perspective des Jeux, chaque cabine étant utilisée en moyenne 200 fois par jour. Les toilettes se nettoient automatiquement après chaque usage grâce à des jets et capteurs qui désinfectent cuvette et sol, et elles améliorent l'accès à la ville pour personnes âgées, personnes handicapées, parents et usagers nocturnes. L'entreprise gère aussi plus de 4 000 éléments de mobilier urbain — abribus, colonnes Morris et kiosques — et pilote des expérimentations végétalisées ainsi que des règles publicitaires visant à mieux intégrer ces objets au paysage. Le modèle économique repose sur la vente d'espaces publicitaires qui finance l'entretien et la cohérence du système, un principe appliqué ailleurs comme à San Francisco où des cabines similaires ont été installées sans coût pour la ville. En revanche, Los Angeles a connu des retards et des installations limitées de toilettes et d'abribus avant 2028, ce qui souligne un déficit d'investissement dans ces infrastructures urbaines et prive la ville des bénéfices pratiques et humains observés à Paris.

06:09

Simulating a 2D Quadcopter from Scratch

Cet article construit un modèle élémentaire d’un quadricoptère plan en dérivant les équations du mouvement dans un repère y (horizontal), z (vertical) et un angle de rotation φ. Les équations de Newton-Euler donnent m ÿ = -(F1+F2) sinφ, m z̈ = (F1+F2) cosφ - mg et I φ̈ = (F1-F2) ℓ, qui sont reformulées en variables d’état. L’entrée est choisie comme u = [u1, u2] = [F1+F2, F1-F2] et l’état x = [y, z, φ, ẏ, ż, φ̇] permet d’écrire le système premier ordre ẋ = f(x,u). Le code Python définit les paramètres physiques, implémente la dynamique, intègre par la méthode d’Euler et trace/visualise les trajectoires en testant des cas à couple nul puis non nul. Dans le cas sans couple l’horizontal et l’angle restent constants tandis que z croît quadratiquement, et avec un couple non nul la rotation réduit la composante verticale de poussée jusqu’à ce que l’engin retombe ou bascule.

06:08

We've raised $17M to build what comes after Git

GitButler a levé 17 millions de dollars en Série A menée par a16z, avec le soutien continu des investisseurs seed Fly Ventures et A Capital. Scott Chacon, cofondateur de GitHub, annonce l'arrivée de Peter Levine d'a16z au conseil et s'appuie sur quinze ans d'expérience pour expliquer la vision du projet. Les fondateurs estiment que Git, conçu pour des flux de travail plus anciens, ne répond plus aux pratiques modernes et crée des frictions dans la collaboration, la revue et l'intégration des changements. La préversion technique du CLI GitButler vise les workflows trunk-based et les branches empilées, prend en charge humains, agents et scripts, et s'intègre à n'importe quel projet Git pour faciliter l'organisation, le multitâche et les annulations. L'objectif déclaré est de construire une nouvelle infrastructure pour le développement logiciel qui conserve le contexte des interactions, coordonne agents et équipes et rend le travail d'équipe plus social, plutôt que de proposer simplement un "meilleur git".

06:08

FBI used iPhone notification data to retrieve deleted Signal messages

Le FBI a pu récupérer des messages Signal supprimés d’un iPhone en extrayant des données stockées dans la base de données des notifications de l’appareil. Selon les éléments du procès, seuls les messages entrants ont été retrouvés, ce qui semble lié au fait que la prévisualisation du contenu des notifications n’était pas désactivée sur l’appareil. La méthode exacte reste incertaine en l’absence de détails sur l’état du téléphone, mais l’extraction pourrait provenir d’une sauvegarde ou de l’utilisation d’outils commerciaux exploitant des vulnérabilités iOS. Le rapport souligne aussi que le jeton utilisé pour les notifications push n’est pas immédiatement invalidé lors de la suppression d’une application, ce qui peut permettre au serveur de continuer à pousser des notifications que l’iPhone stocke. Ni Signal ni Apple n’ont commenté la gestion ou le stockage des notifications, et Apple a récemment modifié la validation des jetons de notification push dans iOS 26.4, un élément temporellement notable mentionné par le média.