HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

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

3839 articles Page 143/384 Sans filtre

06:05

Artemis II will use laser beams to live-stream 4K moon footage at 260 Mbps

La mission Artemis II de la NASA a décollé et utilisera un système optique appelé O2O pour diffuser en direct des images 4K depuis la surface lunaire. Le système Orion Artemis II Optical Communications (O2O) repose sur des liaisons laser et peut transmettre des vidéos 4K jusqu'à 260 Mbps tout en servant à l'échange rapide de procédures, de photos et de plans de vol. Des prises de vue inédites de la face cachée de la Lune pourraient être réalisées avec des appareils Nikon, tandis que des stations laser au sol situées à Las Cruces et Table Mountain ont été choisies pour leurs ciels généralement dégagés. Les communications radio traditionnelles via le Deep Space Network resteront en usage comme secours en cas d'obstruction par les nuages ou de perte de visibilité directe entre le vaisseau et la Terre. La NASA rappelle que des démonstrations précédentes ont atteint 622 Mbps et que certains projets en orbite proche de la Terre ont dépassé 200 Gbps, montrant un potentiel de débit beaucoup plus élevé pour les communications laser.

06:04

Queueing Requests Queues Your Capacity Problems, Too

L'auteur décrit un cas où une API avec une capacité de 1000 requêtes/s voit son trafic doubler pendant une heure, entraînant l'accumulation de 3,6 millions de requêtes en file et une latence perçue d'environ une heure alors que la latence serveur reste proche d'une seconde. Il montre aussi qu'un dépassement plus modeste de 10% pendant une heure engendre 360 000 requêtes mises en file et environ six minutes d'attente en FIFO, illustrant l'impact linéaire du déficit de capacité. L'analyse compare différentes stratégies d'extraction (FIFO, sélection aléatoire, sélection pondérée par quartiles), concluant que l'on peut redistribuer la latence entre requêtes mais pas réduire la souffrance totale, chaque stratégie améliorant certains percentiles au détriment d'autres. L'article explique que les files déplacent le problème dans le temps plutôt que de le résoudre, évoque des alternatives comme l'autoscaling et la planification proactive, et souligne que les files visibles (physiques) donnent aux utilisateurs une meilleure information que des latences imprévisibles. La recommandation finale est de préférer l'augmentation de capacité ou des solutions transparentes plutôt que d'utiliser des files logicielles comme panacée, car celles‑ci rendent les performances imprévisibles et peuvent imposer des coûts de latence importants aux clients.

06:04

I Built an SMS Gateway with a $20 Android Phone – Jonno.nz

Twilio facture environ 0,05–0,06 $ par SMS, ce qui devient rapidement coûteux pour un MVP qui envoie rappels et notifications. L'auteur a transformé un téléphone Android bon marché en passerelle SMS avec l'application open source SMS Gateway, limitant le coût au tarif du forfait mobile, souvent nul sur les plans prépayés. L'application propose un mode local (serveur HTTP sur le réseau local) et un mode cloud (relai via api.sms-gate.app), expose une API REST, gère les webhooks signés HMAC et inclut une stratégie de retry. L'article montre une intégration Next.js avec une abstraction de fournisseur pour pouvoir basculer entre SMS Gateway, Twilio ou un fournisseur de test console. Pour la production il recommande un appareil dédié branché, désactiver l'optimisation de la batterie, surveiller l'état via des webhooks de ping et privilégier le cloud si le serveur n'accède pas au réseau local, ce qui permet d'importantes économies par rapport à Twilio.

06:04

Magic the Gathering Deck Shuffler

Le service permet de jouer n'importe quel deck, n'importe où, avec d'autres participants. Il offre la possibilité de choisir n'importe quel deck, y compris des préconstruits Commander ou des listes importées depuis Archidekt. La table de jeu se met en place sur une seule planche partagée dans Miro ou Mural. La communication et l'interaction de jeu se déroulent principalement via Discord. L'interface présente des options pour démarrer rapidement une partie et accéder aux fonctions proposées.

06:04

Lemonade by AMD: a fast and open source local LLM server using GPU and NPU

Il s'agit d'une plateforme d'IA locale open source conçue pour garantir la confidentialité des données et une exécution efficace sur un PC. Elle fournit une API unifiée compatible avec OpenAI pour le chat, la vision, la génération d'images, la transcription et la synthèse vocale, et s'intègre à de nombreuses applications. L'architecture native en C++ est légère (environ 2 Mo), propose une installation en une minute, s'auto‑configure selon le GPU ou NPU, prend en charge plusieurs moteurs (comme llama.cpp, Ryzen AI SW et FastFlowLM) et permet d'exécuter plusieurs modèles simultanément sur Windows, Linux et macOS (bêta). Sur des machines disposant d'une grande mémoire unifiée (par exemple 128 Go), il est possible de charger des modèles volumineux tels que gpt-oss-120b ou Qwen-Coder-Next, et des options comme --no-mmap sont proposées pour accélérer le chargement et augmenter la taille du contexte. La solution inclut une interface graphique pour télécharger et basculer rapidement entre les modèles, est portée par la communauté locale et bénéficie d'un flux de mises à jour régulières.

06:04

Post Mortem: axios NPM supply chain compromise

Deux versions malveillantes d'axios (1.14.1 et 0.30.4) publiées depuis un compte npm compromis ont injecté la dépendance plain-crypto-js@4.2.1, qui installait un cheval de Troie d'accès à distance sur macOS, Windows et Linux. Les versions malveillantes ont été disponibles environ trois heures avant suppression et la recommandation est de vérifier les lockfiles, supprimer node_modules/plain-crypto-js/, rétrograder axios (1.14.0 ou 0.30.3) et faire pivoter toutes les clés et identifiants sur les machines affectées. Le compte du mainteneur principal a été compromis via une campagne de social engineering et un RAT sur sa machine, permettant à l'attaquant de publier les paquets malveillants. La réponse a inclus la suppression des versions compromises de npm le 31 mars, l'effacement complet des appareils du mainteneur concerné, la réinitialisation de tous les identifiants et la mise en place de mesures pour renforcer la sécurité des publications. Les équipes collaborent avec des experts et des plateformes comme npm, StepSecurity et Snyk pour enquêter, publier des guides de remédiation et adopter des protections telles que OIDC, des releases immuables et de meilleures pratiques CI/CD.

06:03

Prefer do notation over Applicative operators when assembling records (2024)

L'article conseille d'utiliser la notation do pour assembler des enregistrements plutôt que les opérateurs Applicative (<$>)/(<*>) pour des types implémentant Monad ou Applicative. La notation do est plus ergonomique et lisible, notamment quand on ajoute des actions intermédiaires comme des invites, car elle permet de décomposer le code en plusieurs instructions plutôt qu'en une seule expression complexe. Elle est insensible à l'ordre des champs dans la définition du type, ce qui évite des bugs silencieux si les champs du record sont réordonnés. Elle fournit aussi des messages d'erreur plus explicites (par exemple en signalant directement les champs non initialisés) comparés aux erreurs de types curriés générées par l'approche Applicative. La méthode ne fonctionne que pour les types définis en syntaxe record (pas pour des arguments positionnels) mais peut être utilisée avec des Applicatives non monadiques via l'extension ApplicativeDo, par exemple pour les Parsers d'optparse-applicative.