HN Digest
Briefing personnel.

Lire vite.
Garder l'essentiel.

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

11427 articles Page 73/1143 Sans filtre

Imp is a full port of DSPy to the BEAM

Imp est un port complet de DSPy vers la BEAM qui permet de déclarer chaque étape d'un appel de modèle avec des signatures typées et d'exécuter ces tâches sous la fiabilité et la concurrence d'OTP. Les programmes utilisent des signatures pour construire automatiquement les prompts, valider les réponses et fournir des champs typés, avec des options pour forcer la chaîne de raisonnement ou donner des outils sans modifier la signature. Imp propose des optimiseurs (GEPA, LabeledFewShot, MIPROv2, SIMBA, fine-tuning, GRPO) qui s'appuient sur des jeux d'exemples étiquetés et des métriques pour évaluer, réécrire et améliorer les programmes. Les agents sont constitués d'outils Elixir via Imp.react/3, peuvent tourner comme processus supervisés avec autorisation et événements traçables, et intègrent des composants comme MCP, ACP, RLM et CodeAct. La bibliothèque requiert Elixir 1.19+, un compilateur C/C++ pour certaines dépendances natives, est en version expérimentale 0.5 sur Hex et est distribuée sous licence MIT.

Show HN: Lofi Cities – Pixel-art city nights with browser-generated lofi

Ce site web gratuit affiche des scènes nocturnes en pixel‑art de villes animées et diffuse en continu, dans le navigateur, de la musique lofi générée en temps réel, sans installation ni compte. Il propose seize villes détaillées (par exemple Paris, Tokyo, New York, Londres, Rio, Hong Kong, Sydney, San Francisco, Amsterdam, Rome, Prague et Munich) avec animations, météo, sons d'ambiance et paysages emblématiques. La musique est synthétisée localement avec l'API Web Audio (accords, batterie, basse, mélodies), offre plusieurs styles via le panneau Vibe, un mixage séparé des ambiances et des réglages météo qui modifient les sons de la ville. Les fonctionnalités incluent chat anonyme avec emojis, compteurs de présence, minuteurs focus/sommeil, envoi de lanternes et réactions partagées, export PNG et boucles vidéo à l'achat, ainsi qu'un mode compatible OBS et un fonctionnement hors ligne après une première visite. Le projet est créé par Safa Elmali, reste gratuit, ne collecte pas de cookies ni d'identifiants et conserve uniquement des données anonymes et les préférences dans le stockage local du navigateur.

Self-Hosting on the Dark Web

Le site est désormais accessible en tant que service caché Tor via une adresse .onion qui ne résout que depuis le réseau Tor. Il faut configurer /etc/tor/torrc avec HiddenServiceDir et HiddenServicePort, en veillant à ce que le répertoire soit dédié et possédé par l'utilisateur Tor pour stocker la clé privée et le fichier hostname. Après redémarrage de Tor, la lecture du fichier hostname donne l'adresse .onion et Tor redirige le port 80 de l'onion vers le port local (ici 127.0.0.1:8080), où un serveur web comme nginx doit écouter sans TLS. Pour éviter que les liens absolus pointent vers le domaine clearnet, il faut construire une version du site avec la baseURL définie sur l'adresse .onion et déployer séparément la copie Tor. Le déploiement peut être automatisé (par exemple via GitHub Actions et rsync) pour maintenir synchronisées les versions clearnet et Tor, et le projet Tor recommande de soutenir le réseau ou d'exécuter un relais.

Guitar amp and effects pedal built on the Waveshare ESP32-S3-Touch-AMOLED-2.06

Le projet implémente une pédale amplificateur autonome pour guitare sur un ESP32‑S3 (référence Waveshare 2.06) qui exécute des modèles Neural Amp Modeler A2 pleine taille en temps réel à 48 kHz et dont l'interface tactile TSX est compilée en C++ natif sans moteur JavaScript. Le moteur DSP est une WaveNet 23 couches huit canaux exécutée en virgule flottante par blocs avec noyaux Xtensa écrits à la main, répartie sur les deux cœurs et traitant des blocs de 64 trames pour tenir le budget temps réel. Le firmware fonctionne sur la carte AMOLED de référence ou sur des modules tête‑nus, exige un ESP32‑S3 avec 8 Mo de PSRAM et un port USB pilotable en hôte, propose une interface USB Audio Class 2 à 48 kHz et utilise le bouton BOOT comme pédale. Les captures .nam/.namb se chargent depuis une carte microSD ou depuis un dossier fourni au build WebAssembly, la pédale prépare et met en cache des .s3cache vérifiés pour accélérer les chargements et l'interface web reproduit fidèlement le DSP et l'UI. Le mode maintenance active Wi‑Fi, OTA et BLE pour mises à jour et diagnostics, les radios restent éteintes en mode audio, et la construction nécessite le Gea CLI, ESP‑IDF, Node.js, Python et, pour le build web, l'Emscripten SDK, avec documentation et tests inclus dans le dépôt.

Microsoft drops Copilot+ branding from its new laptops

Microsoft a lancé la marque Copilot+ en 2024 pour distinguer ses appareils équipés d'IA locale reposant sur des NPU et un minimum de 40+ TOPS. La marque devait différencier ces offres par rapport aux appareils dépourvus de NPU ou ne respectant pas ce seuil de performance. Un peu plus de deux ans après un lancement jugé désastreux et des ventes faibles, Microsoft s'est discrètement écarté de la marque. Brett Ostrum, vice-président de la division Surface, a confirmé ce recul dans une interview accordée à Windows Central lors du Snapdragon Summit 2026. Aucune annonce formelle de retrait n'a été communiquée publiquement, mais le positionnement commercial de Copilot+ a visiblement changé.

Don't couple your Go code to GitHub

Le système d'import de Go associe les paquets à leur emplacement git (par exemple github.com/...) ce qui facilite la découverte et la distribution des bibliothèques. Cela crée un couplage au fournisseur d'hébergement qui complique le changement de plateforme et peut forcer des organisations à maintenir plusieurs services en parallèle. L'auteur rapporte un cas où une entreprise a dû payer pour GitLab, GitHub et Azure DevOps simultanément à cause de ce verrouillage. La solution proposée est d'utiliser un domaine personnalisé (par ex. go.iain.rocks) avec des balises meta go-import et une configuration Nginx qui redirige les visiteurs humains tout en servant les requêtes ?go-get=1 au client Go. L'auteur recommande aux équipes de développement commerciales d'adopter des domaines personnalisés pour les espaces de noms internes afin d'éviter ce couplage et fournit des exemples de configuration.

The state of SIMD in Rust in 2026

L'auteur présente son implication dans le développement et la maintenance de crates SIMD en Rust et précise qu'il a demandé des revues externes pour limiter les conflits d'intérêts. Il définit le SIMD et décrit les contraintes matérielles et logicielles qui rendent nécessaire le multiversioning sur x86 tandis qu'ARM 64-bit impose NEON. Il compare les approches d'autovectorisation, d'abstractions portables et d'intrinsics en évaluant les bibliothèques principales (std::simd, fearless_simd, wide, pulp, macerator) selon la couverture des instructions, la généricité et la facilité d'utilisation. Il détaille les problèmes concrets liés aux intrinsics et à l'optimisation du compilateur, les pièges des solutions de multiversioning et propose des améliorations souhaitées pour le compilateur et la bibliothèque standard. Il conclut que l'écosystème Rust pour le SIMD a beaucoup mûri tout en soulignant la fragmentation du matériel, avec un x86 compliqué par AVX2/AVX‑512, un ARM NEON plus cohérent et un RISC‑V encore marginal pour le vectoriel.

Was Silent Reading Unusual During Augustine's Time?

Dans un passage autobiographique, Augustin décrit son mentor Ambroise lisant en silence, les yeux parcourant la colonne d'écriture tandis que sa voix et sa langue restaient au repos. Des spécialistes, notamment William A. Johnson, ont repris ce témoignage pour suggérer que la lecture silencieuse était inhabituelle à l'époque et que la lecture orale pouvait être la norme. Alberto Manguel consacre un chapitre à l'émergence des lecteurs silencieux et argue que la lecture à voix haute a longtemps été la pratique dominante depuis les origines de l'écriture. Le texte d'Augustin a été diffusé très tôt en imprimé, une édition strasbourgeoise attribuée à Johann Mentelin étant datée d'au plus 1470. Des représentations modernes, y compris des films, illustrent aussi la transition matérielle entre rouleaux et codex et invitent à réfléchir aux effets de ces supports sur les pratiques de lecture.