Monthly Shaarli

All links of one month in a single page.

August, 2026

How do people blog for thirty years without running out of things to say? – Dan Q

how do people blog for thirty years without running out of things to say? I think I was approaching it from the wrong direction. Nobody sits down with thirty years’ worth of material ready to go. They just keep finding things interesting for thirty years.

Blogging for three decades requires to stay curious.

What’s new in Astro - August 2026 | Astro
PURR signale au niveau européen les mauvaises pratiques de la CNIL — Association P·U·R·R

La CNIL est signalée par PURR au Comité Européen pour la Protection des Données le 7 août 2026.

Le signalement est disponible à l'adresse https://asso-purr.eu.org/assets/media/20260807-cepd-incoherences.pdf

Exponential Backoff And Jitter | AWS Architecture Blog

Different algorithms can be used:

Full jitter:

sleep = random(0, min(cap, base * 2 ** attempt)

Equal jitter:

temp = min(cap, base * 2 ** attempt)
sleep = temp / 2 + random_between(0, temp / 2)

Decorrelated Jitter (based on the last sleep value):


sleep = min(cap, random_between(base, sleep * 3)
Parsing the Infamous Japanese Postal CSV

The official CSV file contains comment in parentheses. Why not using a dedicated field per row for it?

If the line is longer, then the text is split to multiple line. The postcode, names are repeated.

issues. There are catch-all postal codes for many areas, where the neighborhood is given as "except the following", and the only thing to do is look for that exact string and exclude it.

The separate romaji file is of low quality.

That's why posuto aims to simplify this.

Debian Linux developers vote to allow "Responsible Use of Generative AI" | GamingOnLinux
Twitter is becoming a 'ghost town' of bots as AI-generated spam content floods the internet - ABC News
lena | Morten Rieger Hannemose

An alternative to the Lena picture.

The original image has some trouble with its origins https://www.thedrum.com/news/gender-equality-ad-calls-time-playboy-model-lena-image-led-jpeg-invention

The cats.txt standard

Lol. The second parody of cats.txt made by another person.

Server log file (filtered)

Lol they are the live HTTP requests of catstxt.org

How we saved 100 terabytes of memory by optimizing 1.1.1.1’s DNS cache | Cloudflare Blog

It shows how using RAM efficiently can increase performance.

htmx 4.0.0 has been released! ~ htmx
htmx 4.0.0 has been released! ~ htmx
Florida ‘Deputy of the Year’ Used Flock to Stalk Ex, Held Gun in Her Mouth, Did a Nazi Salute

All with the help of the Flock

LocalCDN

Intercepts CDN usual libraries and resources, then use the local version of it.

Pluralistic: IP can’t save you from AI (18 Aug 2026) – Pluralistic: Daily links from Cory Doctorow
CoMaps: The Offline App That Guided Rescuers Without a Signal in the Venezuela Response - HOT Website

Je suis passé d'OpenStreetMap à CoMaps il y a quelque jours, et je dois avouer que c'est vraiment bien réalisé.

L'application fonctionne bien hors-ligne.

Is GitHub Cooked?

A dashboard tracking github incidents.

Their uptime without incident is not so great.

L’interdiction du téléphone portable dans les lycées, à l’épreuve du réel et de ses contraintes, pourrait mettre plusieurs semaines à se matérialiser

Et comment fait-on dans le lycée alors que tous les services sont numérisées (emploi du temps, travail, encouragement à utiliser les postes fixes au CDI)

Building textlog without JavaScript

Someone is getting a broader idea that the rules of the web are powerful

The project built without JS is https://textlog.cc/hot

textlog is a simple social text log: write short notes, follow people and hashtags, and join conversations without turning every thought into a performance.
Notes are limited to 500 characters. The constraint keeps them quick to write and read, making room for one thought at a time.

textlog is built around words: notes, people, hashtags, and conversations. It is intentionally small, straightforward, and easy to follow. There are no engagement tricks or pressure to build an audience.

glossary | Paste on Yasosu Bin
Canonical backs quest to translate mountains of C into safe Rust with AI

The bet is AI can rewrite large portion of codebases. Let's see.

How Baseline Can Help You Ship Less JavaScript — Smashing Magazine

There are cluster wins:

  • i18n: Intl.RelativeTimeFormat, Intl.PluralRules, Intl.NumberFormat, Intl.DurationFormat, Intl.ListFormat
  • HTTP Clients: fetch can be used instead of axios. Limitations: fetch doesn't reject on HTTP errors, no interceptors, no automatic retries, no upload progress.
  • UI Primitives: <dialog>
  • Lodash utilities
  • sometime in the future: Temporal
Enabling the next-generation trait solver on nightly | Rust Blog
Why I’m excited about text-box-trim as a designer - Piccalilli

A recap of the font specification.

With text-box-trim we gain control over which boundary line text boxes are cropped to, and finally we can trim away this extra space to work with a font’s actual visual height.

One of the most common use cases for a lot of us is visually centering text within elements like buttons or notifications. This is especially handy for fonts that have awkward spacing like Josefin Sans.

There are plenty of creative uses [...] I placed headings with their baseline flush against sections below using negative margins. [Using text-box-trim remove the use of margins and put the heading just on the line of the next section, https://quarterre.com/studio]

Another example is to put the line on the font baseline like https://www.wepioneer.co/

Microsoft made a quiet change to a popular software grant. Small nonprofits lost everything.
Intent to Ship: JPEG XL - Mozilla Hacks - the Web developer blog

It isn’t often that new image formats land in browsers. In the early 2000s we had JPEG, GIF, and PNG. The 2010s gave us WebP, which was a modest step up from JPEG. But the 2020s have given us two new image formats that are a big step up from previous formats: AVIF and JPEG XL.

What are the advantage of JPEG XL:

  • progressive rendering (the whole image can render step by step)
  • excels at lossless imagery and compression improvements

AVIF excels at web-quality photographic images and images with a mix of sharp edges and flat surfaces.

PopCorn 66

They make cool interactive experiences and some board games too.

csaf-crud - crates.io: Rust Package Registry

Secure, single-binary Rust CRUD application for managing CSAF 2.0 and 2.1 security advisories. Provides both a server-side rendered web UI (Hyper + Bootstrap 5 + HTMX) and a RESTful HATEOAS JSON API under /api/v1/.

#audit

Global timekeepers vote to scrap leap second by 2035
Unsichtbar am Kotti - KI-Videoüberwachung in Berlin - Taz.de
My HTML boilerplate in 2026 - Matuzo vić
Datasette: An open source multi-tool for exploring and publishing data
Performance of WebAssembly runtimes in 2026 - Frank DENIS random thoughts.
Iris Live Board

A board shared in real time with many users

Development Update, August 2026 - GIMP

XCF has been GIMP’s primary project format since 1997, and it has served many users well. Over time however, we’ve observed more and more limitations of the binary XCF format. Among other issues, it does not easily support very large or complex projects, such as the multi-page and animation features currently planned for GIMP 3.6.

The new project file format will follow a more common “zipped XML” structure. While the technical details are still being designed and implemented, this change will allow for faster saving since we’ll only need to update parts of the file instead of the whole thing each time. It will also set the stage for much desired features such as auto-saving, which will now be much more feasible.

Non destructive layer masks are also a great feature. PSD support improvements.

Our Last, Best Chance to Cool the Earth | Bill McKibben | TED - YouTube
Ex-Microsoft engineer blames Azure problems on talent exodus • The Register - Liens en vrac de sebsauvage

Témoignage d'un ancien ingénieur d'Azure (le cloud de Microsoft). Apparemment, Azure est vraiment un feu de poubelle, monté à la va-vite pour concurrencer Amazon AWS, sans réelle vision. Situation aggravée par le fait que les ingénieurs séniors - ceux qui maitrisaient vraiment le truc - se sont barrés, et le fait que Microsoft préfère investir dans l'IA que dans les personnes.

Partie 1 : https://isolveproblems.substack.com/p/how-microsoft-vaporized-a-trillion
Partie 2 : https://isolveproblems.substack.com/p/how-microsoft-vaporized-a-trillion-8f4
Partie 3 : https://isolveproblems.substack.com/p/how-microsoft-vaporized-a-trillion-f67
Partie 4 : https://isolveproblems.substack.com/p/how-microsoft-vaporized-a-trillion-2f5
Partie 5 : https://isolveproblems.substack.com/p/how-microsoft-vaporized-a-trillion-841
Partie 6 : https://isolveproblems.substack.com/p/how-microsoft-vaporized-a-trillion-b73

(via https://sebsauvage.net/links/?qnz_0A)

NIS2 : la commission saisit la CJUE pour défaut de transposition - Projet Arcadie

La société française paie l'absence du NIS2 dans les textes légaux actuellement. L'obligation de l'authentification multi-facteurs auraient épargné un certain nombre de piratage.

Le NIS2 semble être un excellent standard à suivre. Pourquoi la France prend-t-elle autant de temps alors qu'elle se numérise ?

La CJUE est saisie afin d'imposer des sanctions financières à la France jusqu'à ce que le texte soit totalement transposé.

C'est la double peine.

De l'obligation de porter le casque à vélo - @rav@masto.bike

Alors pour résumer 🧵
Il vaut mieux porter un casque que de ne pas en porter. Porter un casque rédQuit la mortalité.
Il vaut mieux plus de cyclistes non casqués que moins de cyclistes casqués.
Ce second point est clé pour comprendre l'enjeu.

Le second point est détaillé dans le thread: c'est toujours moins risqué que la voiture, et moins accidentogène. En revanche, l'obligation du casque pour les activités sportives / à risque ne fait pas débat.

Every Fucking Website — Slop Edition

A parody

How I get things done | Max Stoiber (@mxstbr)
  • list all active workstreams: every tasks
  • assign one accountable owner per workstream
  • give every workstream a deadline even if it's synthetic
  • get regular green, yello or red updates
  • do weekly demos. 2mins per demo.
EN EXCLUSIVITÉ-La rémunération des directeur général du S&P 500 atteint un niveau record alors que les plans de rémunération inspirés de ceux de Musk se généralisent - 13/08/2026 à 20:07 - Boursorama
Énergie : record d’indisponibilité des réacteurs à cause des vagues de canicule - Next

Les réacteurs sont à l'arrêt afin de préserver l'écologie, puisque les niveaux ne sont pas suffisants.

Cette baisse n’a pas menacé l’équilibre du réseau national, grâce à une production globalement suffisante (29,7 TWh générés en juillet 2026). Grâce au photovoltaïque, qui a produit jusqu’à plus de 30 % de l’électricité hexagonale pendant certaines heures de juillet, le pays est même resté exportateur.

D’ici 2050, RTE prévoit en effet que les risques d’indisponibilité puissent augmenter « d’un facteur deux à trois ».

Banned Book Library | Rick's Blog

Distribute books through a WLAN-connected LED

LinkedIn CringeBot 3000

Transform any topic into peak LinkedIn cringe. Our AI-powered engine analyzes current trends and generates authentic thought leadership™ guaranteed to make your followers shudder.

blog.davidlibeau.fr

Un développeur qui a pour hobby de demander des documents à l'administration.

Ma Dada - Faire et rechercher des demandes d'accès aux documents administratifs
Comment emmerder votre mairie ? - YouTube

Une vulgarisation sur l'accès aux documents administratifs (demande d'accès, recours à la CADA, puis entraîner la justice).

Lilex — Free Monospaced Font with Ligatures for Developers
Anarchy and modern convenience | Go Make Things

But as Our Changing Climate pointed out in their latest video, those conveniences are a trap of capitalism, designed to give you the illusion of joy (while extracting more money from your pocket) because work robs you of time.

But imagine if you worked for just a few hours in the morning or afternoon.
You’d have time every day to take a relaxing walk to the store, read a book, chat with friends, and so on. The tasks that feel like a slog because the occupy the little free time you have become part of a more complete, balanced life.

image-rendering CSS property - CSS | MDN

Note it's useful to use "pixelated" image rendering for QR Code for examples. Another way is to distribute the QR Codes as SVGs.

Génération Perdue

Une personne meure aléatoirement sur terre pour 10 000€ est un dilemme moral, mais appuyer sur un bouton et consommer plein d'eau, d'énergie, contribuer à faire monter le fascisme et les températures, en échange d'une image ou d'une mélodie plagiée; c'est OK.

Quick Start · Soar

A package manager for .AppImage builds.

PPC Land

PPC Land is your premier source for news and insights in the dynamic world of digital marketing. Originally founded in 2016, in Porto, we've been at the forefront of reporting on adtech, online marketing, advertising, and programmatic ads for over eight years.

grundschutz-oscal-viewer - crates.io: Rust Package Registry

A safe, single-binary, offline viewer for the official BSI Grundschutz++ catalog, written in Rust. The complete OSCAL catalog from the BSI Stand-der-Technik-Bibliothek is embedded in the executable at compile time: copying the binary to any machine is a full installation — no install step, no database, no network access required.

So yes, it's one binary and it is one way to transfer data and make it usable.

The project is available on GitLab: https://gitlab.com/vPierre/ndaal_public_bsi_grundschutz_oscal_viewer

ChatGPT Briefings Via RSS - Leon Mika

The agent publish the news of the website daily.

Meta de nouveau condamnée : Facebook et Instagram qualifiés de « nuisance publique » - Next
'Like The Gestapo': Lifelong Republican Slams Trump After ICE Detains Fiancée
Souveraineté numérique : les « paranoïaques » avaient donc raison

Le sujet n’est pas de savoir si Microsoft est coopératif. Le sujet est de savoir quel droit s’applique en dernier ressort.
Et sur ce point, les textes américains ne sont pas une vue de l’esprit. Le Cloud Act oblige les fournisseurs soumis à la juridiction américaine à produire certaines données placées sous leur contrôle, y compris lorsqu’elles sont stockées hors des États-Unis. La section 702 du FISA autorise, elle, des programmes de renseignement visant des personnes non américaines raisonnablement supposées se trouver hors du territoire américain.

Autrement dit, l’acheteur ne peut pas écrire : “je refuse les fournisseurs américains”. Il peut en revanche écrire : “je veux un prestataire capable de garantir qu’aucune donnée ne sera transmise à une autorité étrangère sans autorisation du client ou des autorités françaises ou européennes compétentes ; je veux un prestataire qui ne coupera pas un service critique sous l’effet d’une sanction extraterritoriale non reconnue par la France ou l’Union européenne ; je veux une chaîne de sous-traitance auditée ; je veux une réversibilité documentée ; je veux un droit applicable cohérent avec mes contraintes.”

Alain Issarni résume le mécanisme : « On n’exclut pas les entreprises américaines ou étrangères. On exclut les entreprises qui ne sont pas capables de s’engager sur le fait de ne jamais fournir les données à un tiers. »

« Ces fonctionnalités foisonnantes des clouders américains, personne ne les utilise toutes. Avec le logiciel libre, on peut se concentrer sur nos vrais besoins. »

À voir ce nouveau cadre qu'est Libralis (et l'engagement Omég@1), mais c'est surprenand puisque un des membres SFEIR utilisait (il y a 4 ans) massivement Google Cloud.

rust-lang/rust is adopting an LLM policy | Inside Rust Blog

Five Rust working groups stance on the AI usage on Rust lang

How to Think About Time in Programming - Shan Rauf

Hacker news discussion: https://news.ycombinator.com/item?id=44370426

There are different measure of time. Civil time is used in our contemporary society because talking in epoch (seconds since 1st Jananuary 1970) because it's too complicated. The best civil time to use currently is UTC.

While considering precise time keeping, a location can change its timezone (UTC+X) with a short or long notice. One used 14 days for example.
Another rule is leap seconds that are inserted.

The IANA timezone database is preferred to update local date time.

Hardening Rust Code For Production | corrode Rust Consulting

Full of great explanations about securing (hardening) Rust code.

  • treat panic behavior as part of your API. Decide explicitly whether panics should unwind or abort, and avoid uncontrolled panics.
  • enable stricter Clippy lints (such as indexing and arithmetic checks) when panic freedom is important.
  • use a panic hook to shutdown gracefully, set reports, cleanup, collect diagnostics and
  • sanitize panic (and logging) messages while logging. veil is a good crate for that.
  • avoid unbounded recursion. Prefer iterative algorithms or use depth limits.
  • releases builds behave differently. They should be accordingly tested.
  • audit dependencies with cargo-audit and cargo-deny
  • secure allocation (for defense-in-depth when using unsafe code or FFI) with mimalloc or similar. Measure performance before enabling it globally.
  • use minimal runtime images if needed (rust distroless). It reduces the attack surface.
  • use multi-stage builds with cargo-chef, --locked and proper .dockerignore
  • avoid alpine musl lib c as it introduces subtle runtime differences; at least be aware of them.
  • use Linux landlock to restrict filesystem access even after compromission
  • never run as root unless absolutely necessary. Drop as much Linux capabilities as possible.
  • use Miri to detect undefined behavior, invalid pointer usage and unsafe-ode bugs.
  • handle SIGTERM/SIGINT properly. Stop accepting new work, finish inflight requests, flush buffers and then exit cleanly
  • protect external dependencies (database, API, cache) with circuit breakers so repeated failures don't cascade
  • put explicit limits on everything: upload size, request bodies, queues, timeouts, thread counts,
  • expose two health endpoints: a liveness probe and a readiness probe. The liveness probe checks if the process is alive at all, while the readiness probe checks if the process is healthy enough to handle traffic.
  • Use fuzzing (cargo-fuzz, honggfuzz), coverage (cargo-llvm-cov), unsafe detection (cargo-geiger), and memory-analysis tools alongside Rust's compile-time guarantees.
OpenShot Video Editor | Free, Open, and Award-Winning Video Editor for Linux, Mac, and Windows!
Docker Compose : sortir les secrets de .env avec SOPS et age · Cryptolab

Comment éviter le .env, un fichier en clair

Open Apps

Open Apps is a directory of real open-source applications you can run, study, compare, and contribute to. It started from the public-domain Open Source Flutter Apps collection and has grown into a multi-stack directory of mobile, web, and desktop apps.

Child Safety on Federated Social Media - 20230724-fediverse-csam-report.pdf

The paper describe child sexual abuse material (CSAM) on the Fediverse. It relates CSAM exists across essentially every sufficiently large online communications environment. Rather, the researchers argue that federation creates a distinctive set of technical, organizational, and legal problems for detecting, reporting, and removing CSAM: removing content (or stopping content propagation), different rules are used accross the Fediverse,

The existing child-safety technologies designed for centralized platforms do not map cleanly onto federated networks. The researchers conducted an investigation 325 000 posts during two post days.

Human moderators are important for the Fediverse but it's also a burden placed on volunteer administrators. CSAM detection is not enough and account enforcement is also difficult because one user can create another account on another instance.
The report promotes:

  • easier access to CSAM hash-matching technologies;
  • standardized reporting procedures;
  • better tools for volunteer moderators;
  • training and support for administrators;
  • mechanisms for sharing threat information;
  • stronger cross-instance blocking;
  • better detection of abusive accounts and repeat offenders; and
  • improved coordination with organizations and authorities responsible for child protection.
Michelle Barker | Little Websites Everywhere

Building websites by hands mean the solutions to errors are within you somewhere. "You’re also rewarded with greater understanding of the problem and solution, knowledge that you’ll carry with you."

An AI agent hides, obscures and obfuscate the result or the method used to reach such result.

The web can florish with little websites everywhere. It's never about the size of the audience for the OG web, but always about the community.

GTA 6 : à la découverte d’un monde plus grand et surtout plus réactif - Next
How cats.txt showed llms.txt evidence is GEO astrology

It took off and https://catstxt.org/ was born.

On the contrary, llms.txt is often ignored by the crawlers.

The trap is this: getting baited into treating a set of observations as evidence, when the observations would occur whether or not the underlying thing were true. It is the intellectual equivalent of concluding your umbrella causes the rain to stop, because every time you put it away the rain does eventually stop.

It's a convenient example: . The same broken chain of inference is being applied to almost every new GEO tactic invented on a monthly basis

When you ask a model whether llms.txt helps, it is not reasoning. It is not running an experiment, consulting a source or weighing evidence. It is returning the most common thing it has seen written on the subject. The web is thick with confident posts declaring llms.txt the future, so the model converges on that consensus and reflects it back, dressed as a considered opinion. It endorsed my cats for precisely the same reason: by the time anyone asked, enough people had written enthusiastically about cats.txt that the average of the discourse said “yes.”

Quite the opposite of GEO: " That is what the “O” in SEO is meant to stand for. Optimisation is the cumulative advantage of doing the small, verifiable things a little better than your competitors, over and over, until it adds up."

Canicule, sécheresse, incendies : dans les médias, le climat sans la politique - Acrimed | Action Critique Médias

Les journalistes grand public semblent plus être des animateurs. Il n'y a pas de remise en question.

Les feux sont causées par des pyromanes, et il s'agit uniquement de crises ponctuelles. Le climat est vu comme un impact sur l'économie.

Acrimed constate: "L’opération rhétorique est claire : changer d’organisation économique et baisser les émissions de CO2 peuvent attendre. Et les bonnes questions – qui a percé la coque ? qui agrandit sans cesse la fuite ? qui détient ces fameux canots ? y’en a-t-il assez pour tout le monde ? – ne seront pas posées."

L'exemple est le principal sujet des médias concerne uniquement la climatisation, ou la consommation des biens et services mis à disposition par le marché. Les médias évitent le climato-scepticisme pour une tendance à raconter le dérèglement climatique presque exclusivement à travers ses manifestations immédiates et les moyens de les absorber.

À mesure que le climatoscepticisme devient intenable face à la multiplication des dégâts, le déni se déplace : de la négation de ce qui arrive, à la négation de ses causes matérielles et historiques.

How ~no_std~ are ~no_std~ Rust crates really? A survey

In this article, crates that only use core and alloc will be referred to as no_std, whereas the subset of crates that can compile without alloc will be called no_alloc.

help wanted - lake hope

How AI is impacting negatively the OSS maintainers. It's written as a story.

Linky, vos habitudes de vie désormais collectées sans votre accord préalable - Les Numériques

Un décret publié fin février 2026 autorise en effet Enedis, depuis le 1er mars, à récupérer automatiquement certaines données de consommation, courbe de charge comprise, sans accord préalable de l'abonné.

Parce qu'en croisant les relevés horaires, il devient possible d'identifier des habitudes très précises. L'heure à laquelle vous vous levez et vous couchez, votre présence ou votre absence du logement, le nombre de personnes qui y vivent, ou encore le volume d'eau chaude consommé.

Ruminations on notifications – David Bushell – Web Dev (UK)

Notifications are mostly annoying.

Introducing Microlighter - daverupert.com

It uses the :highlight() selector instead of spans.

CSS.highlights.set(category, textRanges) is used to higlight the code blocks.

Pluralistic: IP can’t save you from AI (18 Aug 2026) – Pluralistic: Daily links from Cory Doctorow
Epoc.fr – La merdification des flux Atom de Reddit

Le dernier jalon franchi de cette merdification date de juin de cette année, où le nombre de requêtes par minute des flux Atom a été sévèrement réduit à 1 (UNE) requête. PAR MINUTE. Une putain de requête par minute pour récupérer des flux Atom. Vous êtes abonnés à 15 sous-Reddit ? Cela fera QUINZE MINUTES pour tous les récupérer, merci au revoir.

Bref. J’ai donc créé un script Python simple qui vous permet de récupérer les flux désirés, en respectant leur limitation ridicule. Tout est expliqué dans le readme.

Peut-être qu'il serait pertinent que chaque utilisateur contribue à la limitation d'une requête par minute afin que la communauté recrée elle-même les flux RSS ? Ce n'est qu'une course perdue d'avance, tant que Reddit essaie de fermer de plus en plus la plateforme.

HTML Day – August 8th, 2026

I missed it! Maybe next year.

The related website collection is available at https://e2e.html.energy/

Calicosine in Elk: "<script type="text/python">#Python #HTML..." | Elk

<script type="text/python"> lol

cldr/common/bcp47/timezone.xml at main · unicode-org/cldr

A track of the timezones with their name, description and alias

I'm Upset Again About a Co-Creator of RSS Being Prosecuted For Something Meta Is Doing Wit
The Coming AI Compute Crunch - Martin Alderson
Why compiling Rust to WebAssembly is slow - Frank DENIS random thoughts.

Using DEBUG compilation slows down the compilation by nearly ~40 times.

Why ?
LLVM represents variable locations through DBG_VALUE records. Heavy function inlining can create hundreds of thousands of these records in a single function.

WebAssembly’s Register Stackify pass moves values from virtual registers onto the operand stack to produce compact, efficient wasm. While moving instructions, it repeatedly scans basic blocks to find and update debug records. Those linear scans are repeated for many definitions, while the pass also leaves invalidated records behind and creates new records for duplicated cheap computations. The result is quadratic work on increasingly large instruction lists.

As example:
Module: repro total codegen
Current Rust: 52.58s
LLM fix:7.12s
Author fix: 1.99s

HTML Can Do That · Chris Burnell
  • <details>
  • popover
  • grouped <details>
  • command & commandfor
  • native input pickers
  • <datalist>
  • loading="lazy"
  • hidden until-found
Firefox is now the last major browser that still supports uBlock Origin | PCWorld

How much pressure will Google put on Firefox?

Keybase

Similar to Signal

GitHub Was Never About the Source Code | Matthias Endler

"AI” has only accelerated this trend. These days, you’re lucky to get a pull request from a real human being. Discussing changes is no longer fun when you’re talking to a bot 90% of the time.

I hope someone builds a community for developers; we need one now more than ever.

Apple’s weird anti-nausea dots cured my car sickness | The Verge

Vehicle Motion Cues uses the device's accelerometer and gyroscope to reduce motion sickness felt when trying to use a device inside a moving vehicle.

According to big-S Science, this type of vehicle motion sickness is caused by the eyes staring at a static display while the inner ear feels the car turning, braking, and accelerating. Motion Cues solve this by placing dots around the periphery of the display that move in harmony with the motion of the car. When the car turns right, the dots sweep across the screen to the left; when the car brakes the dots slide forward.

AI, Screen Readers, and the Real User Experience | Fentimans Sparking Victorian Lemonade - YouTube

The takeaway: AI is not always perfect, so it still requires trust and verification. But for lower-risk personal tasks, it can save time and make inaccessible information easier to access.

Listen to the full episode of Accessibility Craft for more on AI, accessibility, inaccessible documents, and how people are using these tools in real life. https://youtube.com/watch?v=JeuiCb564B4

My comment section is static HTML | jvalol

The comments live on a small Phoenix server I run, called Popsicle Boat. Each post has a companion thread there; publishing a post makes one API call that creates the thread and writes its URL into the post’s front matter. That URL is the only coupling between the two systems.

At build time, Hugo fetches each thread’s replies.json and renders the replies as plain HTML once per post per build, cached, capped indentation. If the server is unreachable, the build carries on and renders no comments. The comment system cannot break the blog.

The page is rebuilt every time a comment is added, but the cost is cheap.

A tutorial is available at https://www.popsicleboat.com/for-bloggers/api

StupidAntibot [Wiki de sebsauvage.net]

Rediriger les bots (qui ne gèrent pas les cookies) lorsqu'un header Set-Cookie est ignoré.

Un simple moyen de contourner les bots (mais aussi les bots de moteurs de recherche).

robida/human.json: A lightweight protocol for humans to assert authorship of their website content and vouch for the humanity of others. - Codeberg.org

The idea is to also have a browser extension for it that signals the humans.json is present on the page.

Jules, wikimédien de l’année : « au lycée, j’avais trouvé ma vocation pour être utile » - Next
L'ICE pioche dans les données de Google et Meta pour traquer les opposants à Trump. Et Apple ?

Comme par hasard. « Je n'ai rien à cacher » mais c'est toujours quelqu'un d'autres qui décide ce qu'il y a à cacher.

Dark mode toggles: two states are enough • Lea Verou

We can avoid the "System" state because it's the default!

Except, real users don’t generally seek out dark mode toggles to express intent for things to stay as they are, they seek them out when things need to change.

Then toggle the "next" state (that is not the system appearance, or reset the state=.

Jennifer 🏳️‍⚧️: "If you need to deactivate half…" - Eldritch Café

"Si vous devez désactiver la moitié des paramètres du système, désinstaller une douzaine de logiciels préinstallés inutiles, bidouiller le registre et/ou les stratégies de groupe pour modifier des choses que vous ne comprenez pas, juste en suivant des guides trouvés en ligne, uniquement pour rendre Windows 11 à peine “acceptable”, alors tout le discours du genre «oui mais Linux est plus difficile à installer» a très mal vieilli."

Indeed

À quoi sert une matrice ? - YouTube

Excellent.

La notation en lettre majuscule représente un ensemble de nombre (matrice, ensemble littéralement)

Converting FLACs to Opus | Chuck Carroll
find . -iname '*.flac' -print0 | while IFS= read -r -d '' f; do
  opusenc --bitrate 160 "$f" "${f%.*}.opus"
done
Microsoft Edge enterre à son tour Manifest V2 - Next

Une autre mauvaise nouvelle. J'espère que Firefox, et à l'avenir Servo et Ladybird pourront prendre la relève.

100 000 km en EV : où en est la dégradation de la batterie ? - Le Hollandais Volant

Retour sur la batterie électrique de la voiture.

Dithered QR Code Generator

The post: https://www.andrewt.net/dithered-qr-codes/wtf/

It allows to include an image inside a QR-Code.

Be careful using these QR codes — they work by putting an image into the redundant parts of the QR code, but those redundant parts are there to make the code easier to scan in less than perfect conditions.

"Code was never the hard part" is an insult to all programmers — Senko Rašić

About the AI trend and what it means for programmers: good code is more pertinent than ever, because we add the AI layer to it.

I do believe that talking to users, understanding their experience, empathizing with them, solving customers' problems and having all the stakeholders on the same page is critical to the success of a software project.

I also believe that creating good code is a craft that requires skill, patience, attention to detail, experience and wisdom, and that it will continue to be relevant in the times ahead.

Tips:

Accept that change happens. Be equal parts curious and critical about the new stuff.

Understand there's a lot of hype and try to discriminate between hot air and what really works (and to what extent). Also be aware of ever-shifting goalposts: stand back and look at the past year, or five, and assess the velocity of change (technical, economic, societal).

Your role and your responsibilities will be changing. Be willing to invest time and energy into better understanding fields or roles adjacent to yours.

If you're a senior developer, don't just find solace in deepening your expertise. Learn about user experience, customer interviews, or business strategies for the companies in your domain. It will help you gain a better appreciation of all the work done to put a piece of software into users' hands, whether or not you'll actually ever have to do any of those other bits.

If you're just starting or are junior in your role: invest in deepening your understanding of how software works. Understanding pointers, recursion, or memory hierarchy will help you even if you're a JavaScript developer. Understanding network protocols and how HTTP works will be useful even if you're building WordPress plugins. Do leetcode and learn about algorithms and data structures even if you don't need to. Don't be afraid to ask why and how exactly.

SmoothCSS
The CSS lh unit

1) Useful for vertical spacing for content. The spacing of two paragraphs become natural.

2) It's precise to build the paper line effect with a background-size: 100% 1lh;.

3) When the image should scale, the lh is perfect to align the image with an amount of line:

.content img {
  float: left;
  height: calc-size(auto, round(up, size, 1lh));
}

Note calc-size is not widely supported, so let's build an alternative:

.content img {
  float: left;
  aspect-ration: 1; // put the ratio of the image here, or remove a `width` limitation
  height: 5lh
}

4) Faded content with a max-height
5) Size an icon based on the line height

imagine walking at night and seeing a robot chasing a group of boars - YouTube

lol

morphicons — SVG icon morphing library for React, Vue & Svelte
As a tech lead what are your hills to die on? : r/ExperiencedDevs
Web Security is Too Hard – text/plain

How phishing attacks are hard to distinguish because even real pages looks suspicious

Plus de 1 300 paquets contaminés dans NPM : Shai-Hulud « de retour » avec ChainDrop - Next
Pourquoi les États-Unis veulent s'emparer de l’électricité française ? - YouTube
Your JSON Is Lying to You

Some pitfalls and cases where JSON has a default behavior.

Date, BigInt, circular dependencies, undefined property are not preserved and leads to different behaviors.

Serialization executes code and toJSON().

Take care of prototype pollutions (for example a __proto__ property).

There are also optimization with Message Pack that provides a compact ninary representation and CBOR.

Protecting our FLOSS commons from LLMs — Codeberg News
Atom is better than RSS, in ways that matter — Chris Morgan

Atom has many advantages over RSS. Somehow I still use RSS for most of my feeds.

#idea #project given an RSS feed, search for an Atom feed alternative.

rustgrep · Structural grep for Rust source

A ripgrep dedicated for Rust

AI Companies Are Trying to Hide a Staggering Amount of Debt
Creepy crawlies — Konstantin Ryabitsev

TL;DR: we spend more CPU cycles rendering commits for scrapers than we spend on all other kinds of legitimate access, including git clones. At any one time, across 5 geo-distributed nodes, there are 14 CPU cores doing nothing but rendering git commits as html.

AI crawlers are idiot: their are consuming the HTML diff of the commits insteadof cloning the repository locally...

sandwich maxxing
home - Delicious Reverie

and its blog post: Why Astro matters

Civic Hygiene – Terence Eden’s Blog

It's bad civic hygiene to build technologies that could someday be used to facilitate a police state. - Bruce Schneier

All you need is PostgreSQL

In this post, I’ll walk through a set of common misconceptions that drive teams to introduce new infrastructure when they don’t need to. All of these can be solved with vanilla PostgreSQL 18 using standard extensions available on RDS, with no special infrastructure and no distributed-systems cosplay.

The database can be used for many things people often miss:

  • user roles (finance) for modularity. In particular, a proper role can be used for defining very precise interfaces on top of database objects
  • domains can be defined as an application of the abtract data type to database management
  • a table for transfers can be stored with a system-time temporal table
  • account audits (store old versions for logs)
  • transaction state machine with functions
  • record size estimation
  • Heap-Only Tuple to avoid write amplification when primary keys are aligned with immutable columns. It enables faster updates. See https://ebellani.github.io/blog/2026/all-you-need-is-postgresql/#introduction:~:text=Enabling%20HOT%20Updates%20for%20Transfers,-By
  • excellent OLTP (quick read and write individual rows) with a primary key reflecting the access pattern
  • view to reuse queries from multiple tables
  • excellent OLAP: large volumes of data while allowing quick query response times: a finance.balance_ledger table stores a snapshot of both balances after every transaction.
  • incremental maintenance via triggers
  • correct isolation with alter role finance set default_transaction_isolation = 'serializable';. If a cyclic transaction is detected, then one of the transaction fails. The application must be prepared to retry aborted transactions, but the invariants are never violated.

Key takeaways:

  • 766 TPS overall with 0 failed transactions. The startup target of 10,000 transfers/day is ~0.12 TPS. We exceed that by over 6,000x, confirming massive headroom on modest hardware.
  • 0 serialization failures: Despite 10 concurrent clients writing to 100 accounts under SERIALIZABLE isolation, no transactions were aborted. The working set is distributed across enough accounts that write contention is negligible at this scale.
  • 8ms average read latency: The UNION ALL view over 4 tables plus the balance ledger lookup completes well within interactive response time, even as the tables grow throughout the 60-second run.
  • 33ms average write latency: Each write transaction exercises the full constraint set that implements complex business logic (audit trails, time constraints, balances, etc) all within 33ms. This is the true cost of enforcing every business rule at the data level, and it is more than acceptable.

The full SQL is provided at the end.

einaregilsson/Redirector: Browser extension (Firefox, Chrome, Opera, Edge) to redirect urls based on regex patterns, like a client side mod_rewrite.

Browser extension (Firefox, Chrome, Opera, Edge) to redirect urls based on regex patterns, like a client side mod_rewrite.

It allows to use privacy friendly alternatives to the URL shared online.

Detect JavaScript Support in CSS

@media (scripting: enabled) and @media (scripting: none)

There's also an initial-only value, which is for scripting that is enabled during page load but not after

Before this feature, one approach for detecting JavaScript support was by setting a custom selector on the opening html tag—a common one seen in the wild is the no-js class name.

2026 : l’été où les affiches IA ont inondé la France - Next

Quelques problèmes des affiches générées par IA:

  • toutes les informations sont mise au même niveau
  • toutes les affiches s'uniformisent. Comment se démarquer des autres ?

Ce style explose, tout comme les affiches de type PowerPoint ou Word s'étaient démocratisée auparavant.

Please stop flooding our projects with AI slop to furnish your CV | neilalexander.dev

Github stats are not pertinent anymore because Claude AI can turn them upside down.

It’s now easy to ask Claude to generate a list of interesting open source projects, then ask Claude to find some problems in them, and then ask Claude to raise some PRs to fix them. You don’t even have to use the projects or care about them, but you can easily create the illusion to outsiders that you care, or that you found a problem, or that you put the time into fixing it. [...]

Maybe this was unreasonable, but truthfully, I’m just not interested in encouraging people to take up our time with this kind of busywork. I do not want to set a precedent of accepting PRs that materially improve nothing, nor do I want our contributor list to become a reward for asking a robot to fix typos.

Welcome • freemediaheckyeah

The largest collection of free stuff on the internet!

Using TypeScript to Obtain One of the Rarest License Plates | Jack's Blog

A simple Typescript script to scrape the plate available online in Florida

Troisième fuite confirmée aux impôts, Bercy détaille sa réponse aux attaques - Next

Un résumé des fuites de données des services publics de juin à août

💣 Zip-Bomb [Wiki de sebsauvage.net]

Comment créer une Zip-Bomb si quelqu'un demande une page incongrue.

Il s'agit bien d'un format .gzip pour que la bombe soit décompressée automatiquement en mémoire.

Une alternative en HTML est aussi possible (avec une configuration nginx): https://ache.one/notes/zip_bombe_html

The Future of CSS: Target Multiple Classes with the Class Prefix Selector – Bram.us
[class^="btn-"],
[class*=" btn-"] 

works but it is 20 times slower (3ms per frame).

Material Theme Builder
How I browse the Web with uBlock (Hard Mode)

The uBlock hard mode is similar to the Matrix browser extension.

The post explains how to set up uBlock to hard mode: disable remote fonts, JS, block large media and enable advanced user. Then disable third party, add shortcuts, add filter lists, picker & zapper, the uBlock Logger, DOM Inspector and how to unbreak things.

Le TODO.md — n.survol.fr

Demander à l'IA de saisir les tâches dans un fichier markdown afin de pas les ignorer.

Si tu découvres un problème ou une erreur pendant une tâche, même préexistant(e) et hors du périmètre de la tâche en cours, ne l’ignore pas silencieusement : soit tu le corriges, soit tu ajoutes une description détaillée dans un fichier TODO.md à la racine du projet, pour ne pas perdre cette découverte.

Solving the 1+N Query Problem | Acadia

Instead of doing a single join, an innocent looking for loop can end up doing tons and tons of separate queries, resulting in much slower execution.

The 1+N problem occurs if a database request is made for every item returned by the first query.

The programming language Arcadia doesn't have recursion or loops, so the problem can not exist.

Pourquoi les riches sont-ils toujours les plus radins ?
Landa :graz:: "@multifact and the way it's i…" - graz.social

Some thoughts about the AI watermarking:

  1. the way it's implemented makes it hardly possible to verify the watermark independently of the LLM's owner.
  2. It helps the monster to differentiate fresh food from its own vomit, so it will not feed from the low-quality slop it once created.
  3. Something that is not immediately visible as a human, and easily removed automatically is basically the opposite of a watermark.
HTML Head - A simple guide to HTML <head> elements
SQLite for Everything | JoeCode

SQLite can be used for many many applications.

Full-Text Search, JSON, high volume time serie data, Queue, Vector database, Cache (redis), file system (file under 100kB), graph database.

and again: the DB can fits in RAM or doesn't need a server. It's a simple file and avoid network requests for everything!

About some comparison:

For blobs under roughly 100KB, SQLite reads and writes faster than individual files on disk, and uses about 20% less space on top of it. The reason is that the file system charges you an open() and a close() and a directory traversal per item, while SQLite charges you one already-open file handle and a B-tree seek.
And here’s the kicker: a Redis GET over localhost is on the order of 100 microseconds. A SQLite point lookup against a warm page cache is on the order of 1 microsecond.

Plain Text Accounting is Pretty Cool - Sumner Evans

Another feedback about using plain text to keep track of the finances.

The tool used with the plaintext format is https://hledger.org/index.html

La SNCF n’a pas à demander l’identité de genre de ses clients, juge le Conseil d’Etat

Eh oui c'est inutile en fait. Dans la plupart des cas, connaître le sexe de l'individu est inutile.

Intermission - loaders, in three prints

A collection of spinners created by state (thinking, searching, working, listening, composing, done). There are three types of spinner groups: Academy, Grid and Tape.

Microsoft confirms GitHub is down worldwide

Another major outage

Attention, ceci n'est pas une contravention ! Mais une Amende Forfaitaire Délictuelle - expansive.info

L'Amende Forfaitaire Délictuelle (AFD) punit un délit, entraîne une inscription au casier judiciaire (bulletins 1 et 2 si on ne la paye pas dans les temps), de 800-900€ à 3000€ et elle ne peut pas être contestée comme une amende classique.

Elle est délivrée par un policier de la police nationale.

  1. En théorie, il est donc possible de refuser une Amende Forfaitaire Délictuelle et le refus de la signer devrait en être une preuve. En pratique, les flics mettent la pression et te font parfois signer des papiers sans dire ce que c’est. C'est prendre le risque d'être enmené en garde à vue ou d'être convoqué pour un procès ultérieurement.
  2. L’agent ne peut pas non plus donner d’AFD si plusieurs infractions sont constatées simultanément dont au moins une ne peut faire l’objet d’une procédure d’AFD. De même, cette procédure n’est pas censé être possible s’il y a besoin de plusieurs PV pour caractériser l’infraction.

Le billet de blog renseigne comment contester une telle AFD.

Et conseille de se rapprocher de https://rajcollective.noblogs.org/ au besoin.

About Steve Wozniak (Apple founder) - @estherschindler@newsie.social

Apple founder Steve Wozniak jumped into the Slashdot comments on his 75th birthday last year.

The reason that some successful people aren't billionaires is because they use their wealth to make the world a better place. "Success" isn't measured by the number in a checkbook.

Damia (@DamiaB) | Peculiar Florist

Des photos resplandissantes de l'eclipse du 12 août 2026.

Sur le web, je veux un thème… – Framadate BETA

Un sondage sur le thème choisi entre:

  • forcé clair
  • forcé sombre
  • sombre ou clair, celui que j'ai choisi dans le système ou le navigateur
  • sombre ou clair, je veux choisir sur chaque site
Build something to disagree with | Max Stoiber (@mxstbr)

The fastest way out is to make something concrete.

It could be a sketch, a rough doc, an ugly prototype, a draft API, or a half-working implementation. It only needs enough detail to expose the choices hidden inside the idea.

The first version is not a proposal to defend. Its job is not to be right. Its job is to turn invisible assumptions into visible choices.

La plateforme des impôts, Impots.gouv.fr, victime d’une cyberattaque

Comme d'habitude, les équipes "sont pleinement mobilisées" mais c'est trop tard. Pensez bien à déménager, et changer tous vos biens immobiliers.

2 millions de propriétaires de biens immobiliers. French Breaches fait état sur son site de 678 437 personnes qui seraient concernées, dont 392 867 particuliers et 285 570 professionnels.

La nouvelle est aussi relayée sur Next: https://next.ink/251702/un-pirate-a-accede-a-la-plateforme-des-impots-des-donnees-fiscales-compromises/
et sur LesNumériques: https://www.lesnumeriques.com/societe-numerique/l-education-nationale-se-fait-pirater-par-le-hackeur-des-impots-43-go-de-donnees-dans-la-nature-personnels-eleves-n260530.html

Bloctel piraté juste avant de fermer : 3 millions d'inscrits sont maintenant exposés

Oh shit here we go again

Baroud d’honneur pour Bloctel, avec la fuite de 600 000 numéros opposés au démarchage - Next

Bloctel, quelle ironie.

Building scalable backend services with Rust and PostgreSQL

and serving a complete web app

Pi-hole – Network-wide Ad Blocking

Following the philosophy of uBlock Origins. Pi-hole does the same at the network level.

(via https://sebsauvage.net/links/?XV57kA)

Camerci – Récupérer les vidéos de caméras de surveillance qui vous sont de droit

Un site générant des demandes de requêtes d'accès aux enregistrements vidéos.

Malheureusement, seulement certaines caméras de Paris sont référencées.

The Future Of Knowledge Workers In An AI-Driven World
Windows 11 is a memory hog, even Microsoft's Weather uses 1.2GB of RAM, 5x more than macOS Weather

Then there were the ads in the Weather app! I have said this before, and I’ll say it again: Windows 11 is not a free OS. It should not be showing more ads. I searched for the app in the Microsoft Store and realised that the Windows default Weather app is actually “MSN” Weather, which explains the ads.

and the weather app is a lazy web app consuming 1.2GB.

PDFTamp - PDF compressor
Create Accessible Hypertext Links - NYS Education Department
Les piles ULTIMES dont personne ne parle - YouTube

Après environ 20-30 recharges, les piles lithium-ion rechargeable USB sont rentables. X-Star est mentionné plusieurs fois.

Les piles Ni-MH (rechargeables) ont besoin d'un rechargeur dédié, et leurs tensions baissent avec le temps.

On arrive avec le résultat suivant

Propriétés Jetable Ni-mh Lithium USB
Rechargement Pas rechargeable Rechargeable Rechargeable
Capacité max. 2910 mAh 2840 mAh 3290 mAh
Fort courant nulle perte moyenne forte capacité
Constance du courant Sup sur 1/3 de la capacité 1.3V constant 1.5V constant
Rentabilité NA 50-22 cycles 65-23 cycles
Décharge Négligeable 3% LSD / 15-20% sinon 5%
Simplicité Simple Chargeur relou Ultra Simple

Les lithium-ion tiennent plus longtemps sur un millier de recharge au minimum au lieu.

“Apprenez le français ! (c’est plus important que l’espagnol)”

Le français est moins attirant que l'espagnol.

Ces vingt dernières années, le nombre d’élèves apprenant le français a chuté, de près de 1,8 million à moins de 1,3 million actuellement. D’autres matières connaissent des baisses comparables, comme le latin, passé de 820 000 élèves à 540 000 sur la même période.

Comme en France, elle est réputée plus accessible, plus mélodieuse, plus cool et plus sexy.

L'article original est paru dans le Frankfurter Allgemeine Zeitung

Microsoft wins 'lamest vendor' at Pwnie Awards 2026 (Def Con) for threatening security researchers with legal action

The technology giant won the award for publishing a May blog post that threatened security researchers with legal action if they publish zero-days about its products.

They don’t make ’em like Sublime Text anymore – David Bushell – Web Dev (UK)

KISS if it's enough. It provides more velocity. That's why Sublime Text still has a community.

Certification HDS : ce que j'ai appris en creusant pour un ami - Jardin numérique de Stéphane Klein
Le donjon par défaut est colonial | PTGPTB.fr
Comment cacher l'incachable (anonymiser Bitcoin) - YouTube
  • cacher ses pseudos
  • mixer les transactions entre les envoyeurs et les receveurs
  • refaire le protocole de transaction comme Monero
Grokipedia n’est plus mise à jour depuis 3 mois - Next

Alors qu'en janvier 2026, Elon Musk twittait « Grokipedia connaît une croissance fulgurante. Elle dépassera largement Wikipédia cette année »

Maybe the “Webmaster” Isn’t Dead After All · Jens Oliver Meiert

At the time [1990s], there was a new breed of web professionals proudly labeled “webmasters.” Part designer, part developer and part evangelist, webmasters held enough esoteric knowledge about the web to manage, edit and create websites, both large and small.
—Jay Hoffmann: The History of the Web, Volume I (2018).

Yes I wanted to be one when I was 14.

I believe that with the advent of AI, we are about to experience a renaissance. AI-augmented developers are operating well beyond the traditional scope of even a full-stack engineer. [...] AI enables and leverages, but the webmaster orchestrates and takes the responsibility.

ShieldFont

But it does harm accessibility

FFmpeg 9.0 met de nouveau Vulkan à l’honneur - Next

FFmpeg toujours l'OG et le GOAT

L’Éducation nationale s’est encore fait pirater, un nombre important d’agents concernés - Next
👩‍💻Le dev est mort, vive le dev ! 🧑‍💻 - 🧸 Ourson's blog

L'IA est un outil, qui permet une certaine automatisation du métier de développeur.

Périls sur le réseau sous-marin mondial de communication
IA, la grande escroquerie – Framablog

Un autre discours qui dénonce l'IA et ö

Les promoteurs de l'IA passent leur temps à dévaluer ce que signifie être humain.

Note: leurs arguments peuvent être justifié, si l'IA elle-même est justifié; nous avons vu l'exemple d'AlphaGo jouer au go contre le champion du monde.

Pinokio

A list of IT projects

PocketPal AI — Private AI on Your Phone | PocketPal AI
MJ PDF | Mudlej

Une alternative à Adobe Fill & Sign, plus efficace et légère.

(via https://janlukas.blog/appydroid/mj-pdf)

Create a semantic breakout button to make an entire element clickable - Piccalilli

The entire element such as a card is interactive as a button for visual users. The button or link remains correct for the rest of the users.