Monthly Shaarli
June, 2025
À la maison, j’ai décidé de chuchoter pour m’adresser à mon mari. Surpris, il m’a demandé pourquoi je parlais en chuchotant.
- Pour ne plus être espionnée par Google!
Mon mari a rigolé.
Alexa a rigolé
Siri a rigolé
Mon frigo a rigolé
La fleur de Lys est une banane épluchée
All I see so far is this will need more computation or battery drain for this.
The library is available at https://github.com/Specy/liquid-glass
"Le seul comparateur indépendant de primes énergie"
Demonstration of various tracking technologies to collect user data, using dark patterns in cookie banners for example in this video
Technical standards, like those from @w3c, aim to improve #privacy, and solutions include a taxonomy of tracking purposes and standardized consent recording to enhance compliance and user control.
There were already a "Do Not Track" for Firefox. Let's see if an standardized HTTP header or something similar can solve this.
Finalement laisser son périphérique branché avec la batterie tout le temps à 100%, c'est comme prendre une grande bouffée d'air et retenir sa respiration. C'est pas bon.
Est-ce que laisser sa batterie à 20-80% est toujours une bonne idée, puisque les BMS intègrent une logique dédiée.
An alternative to Signal
About the complexity of the web tools
Waterfall, agile, AI in comparison to build a product.
- Call Stack
- Primitive Types
- Value Types and Reference Types
- Explicit, Nominal, Structuring and Duck Typing },
- == vs === vs typeof
- Function Scope, Block Scope and Lexical Scope
- Expression vs Statement
- IIFE, Modules and Namespaces
- Message Queue and Event Loop
- setTimeout, setInterval and requestAnimationFrame
- JavaScript Engines
- Bitwise Operators, Type Arrays and Array Buffers
- DOM and Layout Trees
- Factories and Classes
- this, call, apply and bind
- new, Constructor, instanceof and Instances
- Prototype Inheritance and Prototype Chain
- Object.create and Object.assign
- map, reduce, filter
- Pure Functions, Side Effects, State Mutation and Event Propagation
- Closures
- High Order Functions
- Recursion
- Collections and Generators
- Promises
- async/await
- Data Structures
- Expensive Operation and Big O Notation
- Algorithms
- Inheritance, Polymorphism and Code Reuse
- Design Patterns
- Partial Applications, Currying, Compose and Pipe
- Clean Code
Zero dependencies. Universal runtime. Optimized performance.
The library is not bound to a logger, which is perfect for libraries.
It does not work on my Raspberry Pi yet for atuin
I get a:
atuin: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.39' not found (required by atuin)
A hello world binary works fine though.
rustup target add armv7-unknown-linux-gnueabihfsudo apt-get install gcc-arm-linux-gnueabihf libgcc-13-dev-armhf-cross- In
~/.cargo/config.toml:[target.armv7-unknown-linux-gnueabihf] linker = "arm-linux-gnueabihf-gcc" cargo build --target=-armv7-unknown-linux-gnueabihf --target-dir=$(pwd)- Upload the binary in
armv7-unknown-linux-gnueabihf/debugdirectory to the raspberry pi and run it.
After a first successful installation, only 4. and 5. are required.
What interests me more is how normalized this has become.
My motivation is much different now than it was then: then I was terribly discontent and dreaming of being a classical composer, a writer, or basically anything that I wasn’t; now I just want to enjoy my life and do the responsible thing—graduate. Rivers Cuomo, Letter For Readmission To Harvard--2005
CoMaps is a for of OrganiMaps which is a fork of Maps.me
Personal opinion about why Nuxt is on Github:
codeberg is great! I love it.
but I think @github is a great home for us.
for me, the most important thing is community. I'm pragmatic about a lot of other things. while a fully open source stack is ideal, I'd rather have the people (+ network effects apply to code hosting too).
- experimental Content Security Policy Support
- Rendering Markdown in content loaders
- Disable default styles in experimental responsive images
- Allow adapters to suppress logs about feature support
Protéger son serveur des bots en envoyant des zips de 1MB ou 10MB qui se décompresse en 1GB ou 10GB respectivement
- mais vous voyagez seul sur votre tandem ?
- oui, comme beaucoup d’automobilistes
A joke about rust infrastructure. It becomes obsolete as time goes.
Being competitive, to me, means:
- being able to work on most of the issues I want in the company in some fashion
- having accumulated a certain stature and respect from both the engineering and business side which I can trade for space and agency
- being in a place where I can break company soft/hard rules to get things done.
Looking back at the process to get to that place trying to reverse-engineer it, a lot of it boils down to building relationships, maximizing knowledge acquisition and shipping.
The author describes a strategy for identifying and learning from the most impactful people in a company. He first tries to find the company’s “wizards” — the small group of people who contribute disproportionately to important work. This involves evaluating:
- How others perceive and talk about them
- What they actually do and how closely their work connects to the company’s core systems
- The quality and impact of their code or output
After identifying these high performers, the author studies them closely by following their communication, reading their work, reviewing their projects, and understanding their areas of expertise and relationships across the organization.
The ultimate goal is to learn from these people, absorb their knowledge and skills, build strong working relationships, and become someone they want to collaborate with. The key idea is that proximity to exceptional people accelerates personal growth and effectiveness.
Mon résultat: 6 tonnes de CO2, 5700 litres d'eau par jour.
the many ways AI is making humans less productive #1:
- I have to prove I am human when visiting website
- websites are generally slower because they need to check if my browser is an AI bot
- I spent time every week now, restarting services affected by AI scraping bots
And I am not even using AI
IPv6 needs to be better deployed and supported everywhere.
1) You don't "upgrade" to IPv6, you offer it inline with IPv4. It has never been a forklift replacement (there is another rule about this).
2) I have worked for numerous ISPs over the years, big and small. Way more than three I can tell you, and the small ones are almost always the ones pushing IPv6 hardest, because CGNAT is fucking expensive. The big ISPs are the ones who are ignoring it. I've only worked for one small ISP that was opposed to it, and their attitude changed when they ran out of IPv4 space, and saw their choices. CGNAT or buy more space on the open market.
[...]
Technology is going just great:
- autonomous cars
- cryptocurrency
- mars colonization
- blockchain
- virtual reality in the office
Doctolib doit fonctionner, puisque c'est un service critique.
J'ai tenté de me connecter à Doctolib. J'arrive pas à passer le MFA. Ni par mail (ça m'a dit que je violais les CGU), ni par SMS (il arrive pas).
Y'a aucun bouton "Renvoyer le code de sécurité". Y'a aucun indice sur ce qui ne marche pas, ni de message "Je n'arrive pas à me connecter".
Autre question démocratique
La privatisation d'un service qui devrait par essence être entièrement public et open.
Ce logiciel libre semble recommandé
(via https://piaille.fr/@CelianGodefroid/114726889499043422)
Un cygne regardant la caméra.
A community word processor with light social features.
It is used for Poetry, logging, journaling, list making, being online in a more intentional way
Orval is able to generate client with appropriate type-signatures (TypeScript) from any valid OpenAPI v3 or Swagger v2 specification, either in yaml or json formats. 🍺
It uses Hono under the hood, which I only heard good news.
les outils techniques sont presque devenus des objets religieux (on ne les utilise plus pour ce qu'ils apportent, mais parce que tout le monde les utilise ou que l'entreprise "a toujours fait comme ça".)
Some of the most effective thinkers and builders have advocated for simpler tools. Patrick Collison uses Google Docs. Paul Graham writes in plain text. Charlie Munger used legal pads and yellow highlighters. None of them were hurting for productivity.
The lesson here is not anti-technology. It is anti-theater. Simplicity scales because it reduces the cognitive overhead required to act. It does not announce your intelligence, it lets you apply it.
When everyone else is playing on hard mode [using complicated tools] for the social capital, you can win by playing on easy mode for the actual capital.
PewDiePie provides alternative to Google.
A demo of a vue component built with Liquid Glass Design (iOS 26)
Every game tested except one performs better on Linux with emulator than windows.
An interesting project: let the AI squash and reword the commits
- La définition de logement vacant est différente selon les organismes
- Les logements vides ne sont pas à Paris, mais ils sont en Creuse, dans la Nièvre, en Meuse. Là où il n’y a plus de train, plus d’école, plus de boulot. Mais le rapport ne parle jamais d’aménagement du territoire.
- Pas un mot sur le coût réel de la rénovation. Pas un mot sur les héritiers sans moyens. Pas un mot sur les banques qui bloquent les prêts.
L'analyse est publiée sur le site https://projetarcadie.com/logements-vacants-chiffres-froids/
A comparison of thiserror, anyhow and custom errors.
A website list of dumb password rules.
Contributing is easy on https://github.com/duffn/dumb-password-rules/issues
Rust is a language for building foundational software. - https://smallcultfollowing.com/babysteps/blog/2025/03/10/rust-2025-intro/
What all clients have in common, however, is that the services they build with Rust are foundational to their core business. Rust is used for building platforms: systems which enable building other systems on top.
This mindset takes away the focus from Rust as a C++ replacement and also explains why so many teams which use languages like Python, TypeScript, and Kotlin are attracted to Rust.
What is less often talked about is that Rust is a language that enables people to move across domain boundaries: from embedded to cloud, from data science to developer tooling.
Rust serves as a catalyst: companies start using it for critical software but then, as they get more comfortable with the language, expand into using it in other areas of their business.
A collection of apps useful for smartphones.
Proton said the company would leave the country.
Infomaniak stays.
Interesting comment about email development: we can do pretty much everything but the developers have to rely heavily on progressive enhancement.
Github: https://github.com/kanbn/kan
Magisk is a suite of open source software for customizing Android, supporting devices higher than Android 6.0.
The native part is written in Rust.
I still use the mouse to switch between tabs. I learn here that:
- the first 8 tabs can be switched with
Command+<n>/Alt+<n> command+option+Arrow right or left/Ctrl+Alt+Up / Downto switch between tabs around
It's the 20%/80% result I was searching for.
- avoid uneccessary default features
- use specialized lighter crates
4 plugins: Web Clipper, Sync, Bases and Maps.
- Avoid splitting content into multiple vaults.
- Avoid folders for organization.
- Avoid non-standard Markdown.
- Always pluralize categories and tags.
- Use internal links profusely.
- Use YYYY-MM-DD dates everywhere.
- Use the 7-point scale for ratings.
- Keep a single to-do list per week.
Very few folders. Navigation works with the quick switcher, backlinks or links within a note.
The categories group mainly the notes together.
There are two folders though: references about things that exist ouside in the world (books, movies, places, people).
Clippings (as a kind of Shaarli).
There are also three admin folders that don't show up in the navigation: attachments, daily (used as reference), templates.
Two folders are downloadable (and shared with the public): Categories and notes
Notes are linked as much as possible, even if the link does not exist yet. It's similar to a wiki.
Common properties in templates:
- Dates — created, start, end, published
- People — author, director, artist, cast, host, guests
- Themes — grouping by genre, type, topic, related notes
- Locations — neighborhood, city, coordinates
- Ratings — more on this below
Few rules:
- Property names and values should aim to be reusable across categories.
- templates are composable: they can be added one with another.
- short property names are better
- default to list instead of text is there any chance it might contain more than one link or value in the future. See https://github.com/kepano/kepano-obsidian/blob/main/.obsidian/types.json
The author has a separate vault for his own site.
France Télévisions nous fait le coup de la panne, France Info affiche un écran noir. Hier, le groupe affirmait à ses équipes que le fonctionnement de la clim était en voie d'amélioration. En réalité, il n'en est rien et c'est le centre de diffusion et d'échange qui a sauté. C'est la régie finale, d'où partent les programmes, qui a été réunie en 2022 au même endroit pour des raisons d'économies.
88x33 button links.
I could create one for Lyokolux.
Issues with Signal listed so far
- Tied to US for most of its funding
- The funding sources remains unclear
- Employees gets ~$440,000 annually
- Use GAFAM to work such as Amazon (AWS) or Goggle and Microsoft (hosting too)
- metadata can be spied by the U.S.. See https://lemmy.ml/comment/5882433 or the metadata provided https://signal.org/bigbrother/santa-clara-county/
- despite requests from many users, Signal hasn’t supported the inclusion of its app on F-Droid
- Signal logs information through the notifications, and audio calls (time, name of the account) on the device. See how to reduce data leak
- When the device is unlocked, Signals content can be read
Other critics are stated in https://nostr.band/note154hta9dt8k4mhleu4z20rwlqd85dxap20xtvcy4fq89uzcrwshpsdelk2t
There is less and less work stations needed, except for professionals (developers, designers) or gamers. Every private user I know use more tablets or smartphones directly.
When the Windows 10 end-of-support date arrives on Oct. 14, 2025.
That will be interesting because it will provide more arguments for Linux.
La méthode est très risquée et finira par être détournée.
Je me suis retrouvé dans ce genre de groupe sur Telegram une fois. Cela sentait l'arnaque a plein nez, mais par biais de confirmations, plusieurs utilisateurs confirmait leurs gains.
Les captures d'écran montrent que les échanges de fonds se font entre des particuliers dont les noms laissent augurer un large panel de langues et d'origines géographiques. Ces visuels qui ont circulé sur mon groupe de discussion ne montrent aucun signe de modification a posteriori, alors que les opérations qu'ils montrent sont datées du jour. Impossible d'être catégorique, mais si ces captures semblent authentiques, leur fraîcheur signifie qu'il existe probablement de nombreux autres groupes dans lesquels, comme moi, des internautes lambdas se voient proposer un investissement grassement rémunéré.
Au gré des adresses, on découvre une succession de portefeuilles crédités d'environ 100 000 dollars. Combien sont-ils exactement et, surtout, à qui appartiennent-ils ? À notre niveau, c'est impossible à dire ou à mesurer précisément, mais le volume de transactions constaté laisse supposer que cette arnaque à la micro-tâche est orchestrée de façon industrielle.
Instead of asking: I’m hungry, let’s go to McDonald’s
Why not: I’m hungry, let’s go eat: McDonald’s?
A “no, because” statement instead of a plain “no” moves the problem from a blocker into an opportunity.
- In Rust, this struct is 16 bytes (on x86_64, again) and in C, it is 24. This is because Rust is free to reorder the fields to optimize for size, while C is not.
- Social factor: it is more convenient to write a bite more dangerous code than in the equivalent C. Firefox failed two times to parallelize Firefox's style layout twice. They get it right the third time with Rust. Does a junior write faster production code in Rust than in C?
- Compile time vs runtime: Rust provides a bit of safety at runtime (index access)
If C is the fastest language, is there any inherent reason why Rust could not do the same things? At the fundamental level, the answer is “there’s no difference between the two.”
But projects does not work only on the fundamentals, "We’re usually talking about something in the context of engineering, a specific project, with specific developers, with specific time constraints, and so on. I think that there are so many variables that it is difficult to draw generalized conclusions."
MCP:
- Turns M ⨯ N integration problem by turning it into an M + N integration problem.
- Decouples AI client applications from AI tools and workflows for a platform.
That's their reason to exists
The server exposes: Tools that the LLM can call, prompts, resources exposed via URIs and sampling (allows servers to request LLM complections on the client application
An MCP server is another tool in the toolbox.
A scientist told me
the real story
is the unfolding of climate change.And a doctor told me
the real story
is the ongoing pandemic.And an activist told me
the real story
is the rise of fascism.And a historian told me
the real story
is that these are all the same story.
Des mythes:
- perdre de l'argent en passant à une tranche d'imposition supérieure
- depuis 2012, il est possible de prendre des congés dès sa première année
- il est possible de toucher le chômage en cas de démission, sous condition
Ce serait mieux de sourcer pour pouvoir réutiliser ces informations. #TODO
Annotation Mono is an idealized handwriting; using letter forms inspired by monospace bitmap fonts, legibility is maximized while retaining a hand-written character.
Its variable weights make Annotation Mono ideal for a wide variety of use cases other than code, including labels and headings. Given its hand-written look, you could even use it for comic lettering if you want.
Being messy with class names :)
The university of Munich produces great thing. Here another project about compilation.
It is not meant to be an optimal compiler, but a really fast one.
For now their focus is just on the -O0 and -O1 optimization level usage.
How Excalidraw handle E2E encryption
The migration schematics automate code changes between angular versions