Weekly Shaarli

All links of one week in a single page.

Week 28 (July 11, 2022)

How I Experience Web Today

C'est exactement ça malheureusement.

Même avec un l'excellent ublock origin le Web actuel est full of garbage.

Remove unwanted objects from photos by dragging boxes

Un outil super utile de retouche photo pour enlever des objets simplement en traçant des rectangles autour!

Matrix, le protocole décentralisé made in France qui cartonne en Ukraine
thumbnail

Le protocol Matrix est à la messagerie ce que sont les protocol IMAP et SMTP au mail.

Ce protocol open source permet l'interoperabilité des échanges de messages instantanés entre plusieurs utilisateurs hébergeant leurs données sur plusieurs serveurs décentralisés !

Décentralisé, chiffré de bout en bout, souveraineté des données personnelles, texte, audio et vidéo, Matrix a tout pour plaire.

C'est pour ça qu'il a explosé en Ukraine à cause du risque de coupures d'internet ou qu'il est utilisé par l'État français après le scandale des Macron Leaks sur Telegram / WhatsApp.

Pour tester vous pouvez utiliser le client web Element et vous créer un compte sur l'instance principale matrix.org ou choisir un autre hébergeur. Envoyez moi un message à @aschen:matrix.domainepublic.net 😉

What I Wish Someone Would Have Told Me About Using Rabbitmq Before It Was Too Late

Un très bon retour d'expérience sur RabbitMQ pour un système de queuing robuste, scalable et surtout maintenable.

  • Réalisez une expertise de votre solution pour en comprendre les limites (2000~3000€ bien investis)
  • Configurez le cluster pour qu'il mette en pause les nœuds de la partition minoritaire en cas de désynchronisation réseau

RabbitMQ reste une très bonne alternative à la grosse usine à gaz Kafka qu'on sort à toutes les sauces.

Novu - The open-source notification infrastructure
thumbnail

Un outil pour gérer et centraliser les notifications envoyées.

Ça supporte un paquet de providers SMS et Email et en bonus ça propose des features comme d'envoyer une push notif si l'utilisateur est en ligne et de regrouper les notifications dans un email le cas échéant.

Ce qui est top c'est qu'ils proposent un SaaS bien sur mais aussi d'auto-héberger la solution !

Grafana Mimir
thumbnail

Une solution de stockage des metrics aggrégées avec Prometheus:

  • scalable horizontablement
  • multi-tenants (super pour des metrics qui proviennent d'un SaaS)
Rust, SolidJS, and Tauri: Create a cross-platform desktop app
thumbnail

Le framework pour application Tauri prend de plus en plus de maturité pour remplacer notamment Electron.

Concrètement le backend de l'application est à écrire en Rust et le frontend peut être en Javascript (React, Vue, Angular, etc).

Les deux vont communiquer via une API RPC:

// (Rust) Tauri command

#[tauri::command]
fn return_string(word: String) -> String{
    return word
}

// (Javascript) Command invocation
const result = await invoke("return_string", {
  word: "This is the argument"
});

J'espère sincèrement que ça prendra car les application Electron sont vraiment trop lourdes avec des appli comme Slack qui sont régulièrement à ~15-20% du CPU même en idle (!!).

Accidentally Turing-Complete

Un système Turing-Complete signifie que l'on peut représenter n'importe quel programme avec le dit système.

Bien sur les langages de programmations sont Turing-Complete

Ici une liste de système qui sont Turing-Complete par "accident" !

J'aime beaucoup l'exemple de Typescript notamment

Bun is a fast all-in-one JavaScript runtime
thumbnail

Un autre runtime Javascript côté serveur concurrent à Node.js.

C'est assez intéressant car Bun est développé from scratch (en Zig), et il n'est pas basé sur le moteur Javascript v8 de Chrome mais sur JavascriptCore, celui de Safari.

Dans les promesses de Bun:

  • Plus rapide et moins de mémoire consommé que Node.js
  • Transpiler et bundler intégré
  • Compatible avec l'écosystème (node_modules et NPM)

Le projet est encore en cours de développement (voir ce qu'il manque) et donc pas encore recommandé pour de la production.