HN Digest
Briefing personnel.

Lire vite.
Garder l'essentiel.

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

11427 articles Page 1013/1143 Sans filtre

Show HN: Hopalong Attractor. An old classic with a new perspective in 3D

Cette étude décrit une implémentation Python de l’approximation de densité par pixels pour l’attracteur Hopalong, produisant une heatmap de densité des points et une comparaison avec l’estimation par histogramme. Elle repose sur une approche en deux passes: une première passe détermine l’étendue spatiale du trajet et une seconde mappe les points continus sur une grille de pixels tout en comptant les hits. L’exécution est accélérée par la compilation JIT de Numba et par des appels précompilés (dummy calls), avec une architecture pensée pour minimiser l’usage mémoire même pour de très grands nombres d’itérations. La visualisation utilise des palettes adaptées pour représenter les densités et discute les effets des résolutions et des tailles de bins sur le contraste et la précision, en comparaison des méthodes histogramme. Le texte explore également des variantes de programme, des cas limites liés à l’utilisation de copysign, et des extensions possibles en 3D ou avec des fonctionnalités optionnelles d’analyse des cycles.

Unlocking Python's Cores:Energy Implications of Removing the GIL

L'étude compare les builds avec GIL et sans GIL (free-threaded) de Python 3.14.2 pour évaluer le temps d'exécution, l'utilisation du CPU, la mémoire et l'énergie. Elle couvre quatre catégories de charges de travail : NumPy, noyaux séquentiels, charges numériques threadées et charges d’objets threadées. Pour les charges parallélisables avec des données indépendantes, le build sans GIL réduit le temps d'exécution jusqu'à 4 fois et l'énergie, tout en augmentant l'utilisation mémoire. En revanche, les charges séquentielles n'en retirent pas d'avantages et voient une hausse d'énergie de 13 à 43 %, et les charges où les threads accèdent fréquemment aux mêmes objets affichent des gains plus modestes ou une dégradation dû au contention de verrous. Globalement, l'énergie suit le temps d'exécution et l'absence de GIL n'apporte pas une amélioration énergétique significative; la mémoire augmente, en particulier la mémoire virtuelle, en raison des verrous et d’un nouvel allocateur, et les développeurs doivent évaluer l'adéquation à leur charge.

The window chrome of our discontent

L'article analyse comment Apple et Microsoft ont cherché à placer le contenu au centre en atténuant les éléments d'interface. Il rappelle qu'Apple a promis de focaliser sur le contenu en diminuant les distractions et compare Lion, Yosemite, Big Sur, Tahoe et Liquid Glass. Le texte montre que les interfaces récentes tendent à se confondre davantage avec le document, réduisant la délimitation entre la barre d’outils et le contenu. Selon l’auteur, cette approche peut augmenter le désordre et brouiller les repères visuels, ce qui nuit à la lisibilité et à la productivité. En conclusion, il propose d'explorer d'autres variables de design pour mieux distinguer les outils du document et préserver la distinction entre fenêtre et contenu.

I don't know Apple's endgame for the Fn/Globe key–or if Apple does

Cet article retrace l’évolution des touches modificateurs, du Fn du PCjr à leurs usages actuels sur Mac et iPad. Il décrit comment le Fn a servi à faire revivre des touches manquantes et à piloter des fonctions internes du système. Le récit compare Windows avec la touche ⊞ et Mac avec ⌘, ⌥ et ⌃, puis analyse l’apparition controversée de la touche Globe et ses répercussions sur les raccourcis. Il met en évidence les problèmes d’ergonomie et d’incohérence entre plateformes, claviers internes et périphériques tiers. Enfin, il appelle à une réinvention des modificateurs et évoque la possibilité de repenser Caps Lock pour réduire la charge cognitive et la confusion.

Gabibi is a tool for intentionally degrading images (in Japanese)

GABIBI est un outil créatif qui transforme des images numériques modernes en textures dégradées évoquant une perte d’information et le bruit. Il convertit des photos récentes et des illustrations soignées en visuels nostalgiques rappelant l’époque des débuts d’internet et les fonds d’écran de téléphone. Son fonctionnement combine trois étapes essentielles: le sous-échantillonnage pour réduire temporairement la taille de l’image, la compression JPEG récursive qui multiplie les artefacts de bloc et les déformations de couleur, puis l’upscaling pour revenir à la taille d’origine tout en accentuant le flou et la granulation. Les usages incluent la création de visuels pour les réseaux sociaux, le traitement de matériaux design pour sites web et l’apport d’un style glitch ou cyberpunk et de fragments de mémoire dans les œuvres d’art. Le traitement s’exécute entièrement localement dans le navigateur, et aucune image n’est envoyée ni stockée sur des serveurs externes.

Algebraic topology: knots links and braids

Un nœud est une courbe fermée simple dans l'espace euclidien E^3 et deux nœuds sont équivalents s'il existe une homéomorphie orientation-preserving qui les envoie l'un sur l'autre. Des embeddings sauvages existent en E^3, mais on se restreint aux nœuds tamisés, par exemple des courbes polygonales simples, même si des exemples comme la sphère cornu d'Alexander ou le collier d'Antoine illustrent les cas extrêmes. À partir d'un nœud projeté dans le plan, les mouvements de Reidemeister, de types I, II et III, permettent de déterminer l'équivalence des diagrammes. Un nœud peut être décomposé comme somme de nœuds premiers et l'on associe à chaque nœud une surface de Seifert dont le genre est additif et nul uniquement pour l'unknot. Les invariants tels que le groupe fondamental du complément, le Kauffman bracket et le polynôme de Jones permettent de distinguer les nœuds, et les braids fournissent une description généralisée des nœuds via la fermeture des entrelacs et le groupe de braid Artin.

FFmpeg at Meta: Media Processing at Scale

FFmpeg est un outil polyvalent pour le traitement des médias, capable de prendre en charge une large variété de codecs audio et vidéo et de formats de conteneurs. Meta utilisait FFmpeg et ffprobe à grande échelle et avait maintenu un fork interne pour ajouter des fonctionnalités, ce qui compliquait la gestion des divergences avec les versions open-source. En collaboration avec la communauté FFmpeg, FFlabs et VideoLAN, des améliorations ont été intégrées en amont pour remplacer le fork, notamment le transcodage multi-lanes et les métriques de qualité en temps réel. Pour les flux VOD et en direct, une chaîne de transcoding produit plusieurs sorties à partir d’un seul décodage, réduisant le travail redondant et les coûts. Le passage à FFmpeg en amont, avec le support matériel via NVDEC/NVENC, QSV, UVD et MSVP, a permis d’évoluer et de contribuer à la communauté tout en continuant d’investir dans l’écosystème.

Durdraw – ANSI art editor for Unix-like systems

C'est un éditeur d'art ASCII, Unicode et ANSI conçu pour les systèmes Unix-like. Il s'exécute dans les terminaux modernes en Utf-8 et offre l'animation de trames, des modes couleur 256 et 16, le dessin à la souris et des pinceaux. Il prend en charge le mélange et la conversion CP437 et Unicode, ainsi que la génération de sorties HTML et mIRC colorées. Le logiciel s'inspire des éditeurs ANSI du MS-DOS et de Windows tels que TheDraw, Aciddraw et Pablodraw, tout en apportant une approche moderne sous Unix. Le projet est disponible sur GitHub ou via les dépôts de paquets et est distribué sous BSD 3-Clause, avec des composants comme Durfetch et Durview et des options de don.

Restoring a Sun SPARCstation IPX part 1: PSU and NVRAM (2020)

Cet article décrit la remise en état d'une alimentation défaillante et le remplacement de la NVRAM sur une Sun SPARCstation IPX. La panne provenait de condensateurs électrolytiques défectueux et une corrosion sur le dessous de la carte a été observée lors du démontage. Tous les condensateurs, à l'exception du condensateur de filtre secteur de grande taille, ont été remplacés en utilisant des pièces Nichicon, Panasonic et Wurth Elektronik. La NVRAM a été remplacée et l’adresse MAC ainsi que le hostid ont été reprogrammés via l'OBP et des commandes Forth, avec des essais des variantes M48T02 et M48T12 lorsque l’erreur persistait. Le système a finalement démarré sous Solaris 7 et l’auteur prévoit de nettoyer l’enveloppe et d’envisager une version Solaris plus ancienne adaptée au modèle.