Daily Weekly Monthly

Monthly Shaarli

All links of one month in a single page.

September, 2025

How much do you really know about media queries? – Frontend Masters Blog

Les media queries CSS sont devenues très complètes et vont bien au delà de la détection de la largeur du navigateur.

Using TypeScript in Node.js - by Pavel Romanov - Node Vibe

En résumé de mon côté pour l'instant :

  • en dev : tsx
  • en prod : tsc

Et je pense migrer de tsx au support natif de Node dans quelque temps quand il sera plus mature.

Benjamin Button Reviews macOS | exotext

Une revue intéressante de l'évolution du design visuel de MacOS mais à reculons, en inversant la ligne du temps.

C'est une bonne manière de se rendre compte de certains sacrifices effectués sur l'autel de la modernité.

Why Today’s Python Developers Are Embracing Type Hints | Pyrefly

Je ne connais que très peu Python et je découvre que le système de typage introduit en 2014 est très similaire à celui de TypeScript.

Messenger

Un petit jeu tout mignon en WebGL où l'objectif est de livrer des paquets sur une minuscule planète.

Open Social — overreacted

Une explication assez simple et explicite de l'objectif du protocole atproto qu'utilise Bluesky.

Même si l'implantation qu'en fait Bluesky actuellement est centralisée, j'aime assez l'idée de rendre les interactions sociales décentralisées et "possédées" par les gens grâce à leur nom de domaine.

Redis Pub/sub | Docs

Je découvre que Redis permet de faire des intégrations à base d'événements de manière très simple, comme toujours avec Redis.

Ça semble par exemple plus simple que RabbitMQ et beaucoup plus simple que Kafka (mais de fait moins "solide" ou fiable).

State of JavaScript 2025

Le sondage State of JavaScript 2025 est à présent ouvert pour recueillir vos impressions et votre retour.

bodadotsh/npm-security-best-practices: How to stay safe from NPM supply chain attacks

Un ensemble de bonnes pratiques pour limiter les risques d'attaque par chaîne d'approvisionnement (supply chain attacks) avec npm.

The Big Gotcha With @starting-style • Josh W. Comeau

Une contrainte importante à prendre en compte avec @starting-style comparé aux keyframes.

Finalement cette nouvelle option ne semble pas ouvrir beaucoup de nouvelles possibilités par rapport aux keyframes.

VanJS - A 1.0kB No-JSX Framework Based on Vanilla JavaScript

Un micro-framework front-end.

Shopify, pulling strings at Ruby Central, forces Bundler and RubyGems takeover

Il semble se passer quelque chose de grave dans l'écosystème open-source de Ruby, notamment au niveau des Ruby Gems.

Malheureusement je ne connais pas suffisamment Ruby pour en comprendre les tenants et aboutissants, mais cet article factuel devrait vous aider à y voir plus clair.

Face à la fin de Windows 10, la distribution Zorin OS 18 joue la séduction - Next

Si vous cherchez une solution de remplacement pour le vieux Windows de vos beaux-parents sans trop les bousculer, Zorin OS, basée sur Ubuntu, et qui reprend les codes de Windows mérite le détour.

Jimmy - Note Conversion Tool

Un outil qui permet d'exporter vos notes depuis plusieurs services bien connus vers du Markdown en local.

I’m a proud CRUD monkey | Kyrylo Silin

Une ode à la simplicité.

Plus j’acquiert de l'expérience, plus j'adhère à cette philosophie.

kalvn (@kalvn@framapiaf.org) - Framapiaf

J'ai décidé de migrer de serveur Mastodon. L'ancien, mastodon.xyz m'a accueilli dès mes débuts ici en 2017 et je remercie chaleureusement https://mastodon.xyz/@TheKinrar d'avoir si bien géré pendant toutes ces années.

Je suis en train de migrer progressivement les références à l'ancien compte, mais la majorité devrait se faire automatiquement (sauf les messages bien sûr).

Public Demo Out Now! | Radical Fish Games

La démo de Alabaster Dawn est de sortie. C'est la suite spirituelle de Cross Code qui était un excellent RPG/Action entièrement en pixel art mais magnifiquement animé et très dynamique. Et force est de constater que la recette fonctionne toujours aussi bien !

What PWA Can Do Today

Ce site regroupe tout ce dont les PWA sont capables. Il y a beaucoup d'usages que j'ignorais, et certains semblent encore expérimentaux, mais c'est pratique d'avoir cette liste.

Shaarli Flux River

Une Shaarli River ! Ça faisait longtemps que j'en avais pas trouvé une qui fonctionne 😊

Less is safer: how Obsidian reduces the risk of supply chain attacks - Obsidian

Quelques mesures pour éviter les supply chain attacks comme on en a vu quelques-unes dernièrement dans l'écosystème npm.

Why you want to use prefixed Node.js import for built-in modules

Pourquoi il est préférable d'importer les modules natifs de Node avec le préfixe node:, par exemple :

import fs from 'node:fs';
TCP and Node.js Server Internals: A Deep Technical Dive

Après UDP, voici une description de comment fonctionne Node avec TCP.

UDP in Node.js: deep technical guide - by Pavel Romanov

Envoyer et recevoir des requêtes UDP avec Node.js, grâce au module node:dgram.

L'article insiste néanmoins que Node n'est probablement pas le meilleur choix si votre choix de UDP est lié à un besoin de performances, à cause du coût des différentes couches d'abstraction.

Bloque la pub !

Article d'utilité publique qui explique de manière intelligible et en limitant les aspects techniques pourquoi il est essentiel de bloquer la pub sur le web et comment faire.

Spooky tales to scare your JavaScript developers

Focus sur quelques bizarreries historique de JavaScript. Heureusement le mode strict et les linters existent 😅

Peut-être qu'un jour un nettoyage du language sera fait, mais quelque part c'est une belle preuve de rétrocompatibilité même si en l'occurrence elle est plus négative que positive.

sindresorhus/ow: Function argument validation for humans

Une librairie qui permet de valider les arguments d'une fonction de manière assez concise.

La même chose est cependant faisable avec les validateurs traditionnels type Zod, mais requierera de réassigner les arguments à des variables pour bénéficier du type narrowing là où ow le fait à la volée.

Registry Explorer

Un outil pour explorer les différentes couches d'une image de container obéissant au format OCI (Open Container Initiative).

UTF-8 is a Brilliant Design — Vishnu's Pages

Comment UTF-8 a été conçu pour être rétrocompatible avec ASCII et ses 128 caractères seulement. L'idée est de représenter les caractères ASCII sur 1 octet, et les autres sur 2, 3 ou 4 octets.

Passionnant !

`vi.mock` Is a Footgun: Why `vi.spyOn` Should Be Your Default

Conseils sur l'usage de spyOn et mock avec Vitest.

Cet article m'a enfin permis de comprendre le mocking avec Vitest, et c'est dingue de voir à quel point ces fonctions sont mal nommées 🙈 Au final spyOn fait TELLEMENT PLUS que ce que son nom suggère. Il faudra que j'écrive un article sur le sujet.

bbc/sqs-consumer: Build Amazon Simple Queue Service (SQS) based applications without the boilerplate

Une lib toute simple pour consommer des messages d'une message queue Amazon SQS.

npm debug and chalk packages compromised

Des packages npm très largement utilisés (plus de 2 milliards de téléchargements par semaine au total !) ont été compromis. Pensez à vérifier si vous êtes impacté.

Why I Hate Frameworks

Une métaphore intéressante qui résume le problème de certains (meta-) frameworks modernes qui essayent de tout faire et imposent de fait une complexité démesurée.

Linear code is more readable

Totalement d'accord : extraire des petits morceaux d'un code linéaire ne le rend pas toujours plus propre, et le rend plus difficile à comprendre. Bien sûr il y a des exceptions et aboutir à une fonction de 500 lignes n'est pas forcément une solution non plus, mais il y a un équilibre à trouver, pas une recette à appliquer systématiquement et à l'aveugle.

Transportr - Open Source Public Transit

Une alternative sans traceur à CityMapper, pour se déplacer en transport en commun dans les grandes villes.

Les meilleures applications libres et éthiques pour Android en 2024 - Alternatives numériques

Une longue liste d'applications Android alternatives, qui respectent votre vie privée.

Le blog en lui-même regroupe beaucoup de ressources en la matière.

MitchIvin XP

Un portfolio qui reprend trait pour trait les codes visuels de Windows XP. Impressionnant de précision ! Il y a même un bel effet "écran CRT".

The Management Skill Nobody Talks About – Terrible Software

Apprenez à admettre vos erreurs, vous n'avez pas idée à quel point c'est essentiel.

Features of your font you had no idea about · OlegWock

Les polices d'écriture modernes ont atteint un niveau de flexibilité et de "configurabilité" assez hallucinant.

Functional custom elements the easy way - Piccalilli

Une fonction qui vise à rendre la déclaration de web components plus simple.

Switching from Docker to Podman

Témoignage d'une transition de Docker vers Podman, qui offre une solution similaire mais réputée plus sécurisée by design.

ooh.directory: a place to find good blogs that interest you

L'occasion parfaite pour tirer un trait sur les réseaux et adopter RSS : plus de 2300 blogs qui traitent de tous les sujets, regroupés par catégorie.

Accurate text lengths with `Intl.Segmenter` API | Automagic

L'API JavaScript Intl.Segmenter peut être utilisée pour compter le nombre de caractères visibles dans une chaîne de caractères, et non pas le nombre de caractères unicode comme ce que fait String.length.

Hyvector

Un outil d'édition d'image vectorielle (SVG & co.). Assez bluffant de simplicité et d'intuitivité, et il fonctionne aussi parfaitement sur mobile.

musicMe : musique gratuite, telechargement mp3, video-clips HD

Ce service diffuse des flux RSS qui annoncent les sorties des albums de vos artistes préférés.

Pour trouver l'URL du flux à ajouter, chercher un artiste, puis dans l'URL remplacez /#/ par /_rss/, par exemple :

https://www.musicme.com/#/Moby/

devient :

https://www.musicme.com/_rss/Moby/