Weekly Shaarli

All links of one week in a single page.

Week 41 (October 10, 2022)

Five Common Data Stores and When to Use Them — Development

On parle souvent des comparaisons entre SQL et NoSQL mais cet article va plus loin en comparant les usages des 5 grandes familles de "Data Store"

  • Base de données relationnelles (e.g. PostgreSQL)
  • Base de données non-relationnelles (e.g. MongoDB)
  • Base de données clé/valeur (e.g. Redis)
  • Moteur de recherche (e.g. Elasticsearch)
  • File de messages (e.g. Kafka)
How to drive your team to success with OKRs🎯
thumbnail

Les Objectives and Key Results sont une méthode pour décider des objectifs d'une entreprise et comment les mesurer.

En gros plutôt que de se concentrer sur le résultat, on se concentre sur ce que l'on veut améliorer puis les équipes proposent des idées et testent des choses pour remplir ces objectifs. Les résultats sont analysés avec les Key Results.

Exemple:

Objectif: Améliorer l'efficience de la plate-forme IoT
Key Result #1: Réduire le temps de configuration de 50%
Key Result #2: Corriger 90% des bugs en moins une semaine

Lorsqu’éclatera la bulle publicitaire

Un très bon article de Ploum sur la publicité

K6, load testing for engineering teams
thumbnail

Un outil de load testing open source en alternative à Gatling.

Ils supportent le scripting en Javascript et de nombreux protocols: HTTP, WebSocket, GraphQL et même gRPC!

Il est aussi possible d'enregistrer un scénario dans son navigateur et de le rejouer.

Build OpenAPI-compliant REST APIs using TypeScript
thumbnail

Un framework pour créer des API REST en codant les contrôleurs et modèles en TypeScript avec des annotations.

Ça génère automatiquement la spec OpenApi et les JsonSchema en plus.

(Merci Bombi pour le partage)

Raft, consensus algorithm for cluster

Raft est un algorithme de consensus distribué très populaire qui permet de garantir la consistence d'un état au sein d'un cluster.

Il est utilisé dans des bases de données (CockroachDB, Mongodb) et dans d'autres produits comme Etcd.

Il couvre l'élection d'un master et la réplication de l'état sur chaque noeud.

How Wine works 101 · Reboot and Shine

Une explication très accessible du fonctionnement de Wine, le programme Linux qui permet de lancer des applications Windows.

Pour rappel, Wine n'est pas un emulateur mais "simplement" une traduction des appels systèmes Windows en appels système Linux.

Choosing the best Node.js Docker image
thumbnail

Les bons conseils pour créer une image de prod avec Node.js.

En bref:

  • Utilisez une version LTS avec Debian slim pour réduire la surface d'attaque
  • Ne faites pas de npm install mais npm ci pour utiliser un ensemble de dépendances stable
  • Évitez les images alpines car des problèmes peuvent apparaître à ce musl (substitut de la libc)
Cube — Headless BI for Building Data Applications
thumbnail

Un backend pour fédérer les données en provenances de plusieurs sources (SQL, NoSQL, Datawarehouses)

Ils permettent ensuite d'accèder aux données via une API unifiée en ajoutant une couche de droits et du cache.

Le positionnement est clairement orienté Business Intelligence même si ils ne proposent pas de solution concrète pour ça mais plutôt la promesse de facilement connecter des outils existants.

A simple high-performance Redis message queue for Node.js.
thumbnail

Un système de queing entièrement basé sur Redis.

Ils proposent toutes les fonctionnalités dont on a besoin:

  • multi-queue producers et consumers
  • garantie du delivery unique
  • expiration des messages
  • rate limiting
Superviser Kubernetes avec Prometheus
thumbnail

Un article explicatif et en mode tuto ultra complet sur le monitoring d'un cluster Kubernetes avec Prometheus.

Awesome multilingual OCR toolkits based on PaddlePaddle
thumbnail

Un OCR open source qui supporte plus de 80 langues.

🧅 OnionShare

Un outil pour lancer un service caché sur TOR très facilement.

Ça permet ensuite de chatter et envoyer/recevoir des fichiers avec des personnes qui se connectent au service via TOR et une adresse .onion

Discovering novel algorithms with AlphaTensor
thumbnail

Une IA qui améliore les performances d'une autre IA.

Une IA de Google a trouvé comment multiplier plus efficacement des matrices de nombres.

C'est une opération très commune dans les réseaux de neurones mais aussi dans les programmes graphiques.

Pour multiplier une matrice de 4x5 par une matrice de 5x5, le meilleure algorithme humain utilisait 80 multiplication et AlphaTensor (le nom de cette IA) a trouvé une méthode avec 76 multiplications!

(Merci Guillaume pour le partage)