HN Digest
Briefing personnel.

Lire vite.
Garder l'essentiel.

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

11293 articles Page 30/1130 Sans filtre

Show HN: Our space game has a built-in RISC-V emulator that runs Linux

Le projet PasRISCV est un émulateur RISC‑V 64 bits développé en Object Pascal, distribué en open source sous licence zlib et utilisé pour faire tourner un système Linux complet dans le jeu SEEDS. L'émulation est complète (machine virtuelle avec affichage, stockage et interruptions), supporte RV64GC, extensions Hypervisor et Vector et fonctionne via une approche hybride interpréteur + JIT (JIT disponible sur hôtes x86‑64), avec un mode flottant logiciel pour un comportement IEEE‑754 strict. Le système Linux démarre via la chaîne OpenSBI→U‑Boot et utilise des images disque attachées en VirtIO ou NVMe (avec possibilités read‑only pour mises à jour et partitions utilisateur séparées), tandis que des répertoires hôtes peuvent être exposés via VirtIO‑9P/FS pour faciliter le développement. Pour l'I/O multimédia, le jeu utilise principalement un framebuffer simple (traité par des shaders pour effets rétro), tandis que l'émulateur propose aussi VirtIO GPU et autres adaptateurs et émule plusieurs cartes son rétro (PCM, OPL2/3) utilisées notamment par le mini‑jeu Space Prowler et son chiptune créé avec un éditeur interne. La communication entre la VM et le jeu se fait via vsock et un format binaire optimisé, le réseau utilisateur est fourni par une pile NAT interne mais désactivé dans le jeu pour des raisons de sécurité, et l'émulateur offre des outils de débogage (désassembleur, serveur GDB) facilitant l'intégration et l'automatisation.

Automating my 35mm film scanning pipeline

L'auteur décrit son attachement à la photographie argentique et au Canon AE-1P, en expliquant que la pellicule produit des images chimiques uniques selon la lumière, l'objectif et le film. Sa chaîne de traitement initiale—prise de vue, envoi au labo, découpe et numérisation des négatifs, inversion manuelle dans darktable et retouches—prenait en moyenne quatre heures par rouleau de 36 poses et devenait lassante. Il a tenté d'automatiser entièrement le processus en laissant un agent (Claude) piloter le scanner via SANE, mais une erreur de commande a bloqué le chariot et endommagé temporairement le matériel, nécessitant une réparation manuelle. Finalement il a conservé VueScan pour l'acquisition puis développé une chaîne semi-automatisée avec inversion par code numpy, détection et correction des poussières via modèles d'inpainting (LaMa), seuils de révision pour le grain et indexation locale des images avec Qwen3‑VL. Les images sont publiées sur le web via Cloudflare R2, le projet a demandé 11 jours et 64 commits pour aboutir à une galerie de 22 rouleaux et 314 photos, et l'auteur a retrouvé le plaisir de photographier tout en gardant une part de travail manuel.

How to hack time, with C2PA

L'article décrit une démonstration où l'auteur a falsifié une image de ticket de loterie tout en conservant une signature C2PA et un horodatage de TSA valides. Il explique que C2PA permet des "exclusions" de plages d'octets non couvertes par la signature, ce qui ouvre la possibilité de signer le hash d'une chaîne vide si l'exclusion englobe tout le fichier. L'auteur montre un exemple concret où le manifeste exclut l'intégralité du fichier et où la signature correspond au hash d'une chaîne vide, permettant des retouches postérieures sans invalider les signatures ni l'horodatage. Il souligne que corriger ce défaut est délicat parce que certains formats de fichiers, comme PNG, requièrent des exclusions pour des champs recalculés tels que le CRC32. Sa proposition est de spécifier de façon explicite et contraignante quelles plages d'exclusion sont autorisées par format de fichier et d'exiger que les outils de vérification appliquent ces contraintes.

RetailReady (YC W24) Is Hiring

La startup YC W24 a levé 6,6 millions de dollars, compte plus de 50 clients et a quadruplé son chiffre d'affaires sur les 12 derniers mois. Elle développe un moteur de conformité pour la chaîne d'approvisionnement utilisant la vision par caméra pour guider l'emballage en entrepôt et réduire les erreurs d'expédition. Le poste d'implementations basé à San Francisco offre une rémunération de 100 000 à 140 000 dollars, une participation de 0,02 % à 0,06 % et implique jusqu'à 50 % de déplacements chez les clients. Les responsabilités couvrent le déploiement du logiciel chez des marques et 3PLs, l'assurance qualité en collaboration avec les ingénieurs et la remontée d'insights produits depuis le terrain. L'équipe, issue d'entreprises comme Stord, Microsoft et Manhattan Associates, met en avant une culture collaborative, un travail en présentiel à San Francisco et une volonté d'impact opérationnel durable.

The Softmax function and its derivative

Cette fonction prend un vecteur à N composantes de réels arbitraires et renvoie un vecteur de mêmes dimensions composé de valeurs dans l'intervalle (0,1) qui somment à 1, en transformant chaque composante par un exponentiel normalisé qui préserve l'ordre relatif des éléments. Ses sorties se prêtent à une interprétation probabiliste utile en apprentissage automatique, notamment pour la classification multiclasse où des logits produits par une multiplication matricielle W·x sont convertis en probabilités de classe. En tant que fonction vectorielle, sa dérivée générale est une matrice Jacobienne dont les éléments s'écrivent pour les composantes i et j comme p_i(δ_{ij}-p_j), ce qui se condense en notation matricielle par diag(p)-p p^T. L'implémentation naïve exp(x)/sum(exp(x)) peut provoquer des débordements numériques pour des valeurs extrêmes, et une astuce stable consiste à soustraire la valeur maximale des entrées avant d'appliquer l'exponentielle pour éviter les NaN. Associée à la perte par entropie croisée et un vecteur one-hot, la composition simplifie grandement le gradient pour les paramètres en donnant des termes proportionnels à (p - y) et permet des calculs efficaces sans multiplier explicitement de grandes Jacobiennes.

RSS Feed Best Practices (2022)

L'article propose des conseils techniques pour publier un blog, axés sur la manière de diffuser le contenu plutôt que sur la qualité rédactionnelle. Choisissez un format standard (Atom de préférence ou RSS 2), définissez correctement le Content-Type, utilisez uniquement des URL absolues et ajoutez des balises link rel=alternate pour la découverte du flux. Servez le flux et tous les médias via HTTPS, fournissez de préférence le contenu intégral dans l'élément content et proposez des liens ou tokens d'authentification pour les contenus payants. Assurez des identifiants d'articles stables et uniques, gérez rigoureusement les dates de publication et de mise à jour, incluez un lien self canonique et catégorisez les entrées pour faciliter les abonnements ciblés. Réduisez la charge serveur en fixant des en-têtes de cache et en supportant les requêtes conditionnelles (ETag/Last-Modified), activez WebSub pour les mises à jour en temps réel, autorisez CORS pour les clients côté navigateur et optimisez la performance; la pagination et le styling sont des améliorations secondaires.

Docker has always used microVMs (well since 2016)

Depuis 2015 Docker a remplacé VirtualBox par une approche intégrée fondée sur un VMM en bibliothèque pour offrir une expérience native sur Mac et Windows. Les équipes ont développé hyperkit puis Docker VMM en s'appuyant sur des bibliothèques unikernel (Mirage) et sur LinuxKit pour un noyau et un système racine très réduits. Cette microVM embarquée a permis d'exécuter Docker sans privilèges root sur toutes les plateformes, de limiter strictement les interfaces hôte/VM et de simplifier l'interopérabilité avec les VPN et les politiques réseau. En 2026 la technologie microVM sert de base à Docker Desktop et à Docker Sandboxes, qui fournissent une isolation stricte et des capacités de gouvernance pour exécuter des agents et des charges de travail. L'article "A Decade of Docker Containers" et la documentation associée proposent un contexte historique et technique plus détaillé sur l'évolution de cette architecture.

Federal judge calls Flock 'indiscriminate mass surveillance'

Un juge fédéral a statué qu'un adjoint du shérif de Tulsa a violé le quatrième amendement en recherchant sans mandat le numéro d'immatriculation d'une femme dans la base de données Flock Safety. Le juge Sara Hill a estimé que l'adjoint n'avait "aucune raison apparente" pour cette recherche autre que le fait que le véhicule avait une plaque californienne. Les preuves obtenues après la recherche, y compris la découverte alléguée de 91 livres de méthamphétamine, doivent être supprimées comme le fruit d'un arbre empoisonné. Hill a critiqué les recherches sans mandat dans la base Flock en les qualifiant de surveillance de masse indiscriminée qui permet de cataloguer les déplacements des véhicules sur une longue période. Plusieurs gouvernements locaux et d'États ont cessé d'utiliser cette technologie, le sénateur Bernie Sanders a introduit le Block Flock Act pour en interdire l'usage aux agences fédérales, et le PDG de Flock a appelé à un compromis tout en proposant des réductions volontaires d'effectifs.

C++ Insights – See your source code with the eyes of a Compiler

Cet outil basé sur Clang réalise une transformation source-à-source pour rendre visibles les opérations que le compilateur effectue implicitement. Il montre par exemple les fonctions membres générées automatiquement, les conversions de types et les transformations de constructions comme les lambdas, les boucles for à portée et les structured bindings, et peut déduire les types derrière auto ou decltype. L'objectif est de produire du code compilable reflétant la vue du compilateur, bien que ce ne soit pas toujours possible partout et que le projet suive l'évolution des normes C++. Le projet fournit des instructions de compilation détaillées pour une construction hors ou dans l'arbre Clang, des options CMake, des conseils pour Windows, Arch Linux, macOS ARM, et un script getinclude.py pour résoudre les chemins d'inclusion système. Des conteneurs Docker, des extensions pour éditeurs, des scripts d'autocomplétion et un dépôt GitHub permettent d'utiliser, d'étendre, de signaler des bogues, de contribuer et de soutenir le projet via des sponsors.