Monthly Shaarli

All links of one month in a single page.

September, 2022

DreamFusion: Text-to-3D using 2D Diffusion
thumbnail

Dans la même mouvance que Dall-E, Stable Diffusion et MidJourney, une IA pour générer des modèles 3D à partir de texte.

Storing Billions of VM Metrics with TimescaleDB
thumbnail

Un retour d'expérience sur l'utilisation de Timescale DB pour ingérer et traiter de grosses séries temporelles.

TimescaleDB est une extension de PostgreSQL donc on retrouve facilement ses repères.

Une de leur feature extra est la compression optimisée des séries temporelles pour gagner jusqu'à 90% d'espace (!)

Valider sa Gitlab CI et le lancer localement

Plusieurs outils autour de la CI de Gitlab.

Une technique (entre autre) pour lancer sa CI Gitlab en local!

Concrètement ça lance les jobs de CI avec les bonnes images pour valider le fonctionnement en local.

(Merci Erwan!)

OSS Insight, Github Statistics

Un super outil pour analyser les statistiques en provenance de Github!

Statistiques développeurs, repositories, etc

Les 6 erreurs à ne pas commettre lors d'une refonte technique
thumbnail

Dans notre métier on a souvent envie de tout recommencer à 0, de faire un "gros refactor", de changer de stack technique.

Seulement si c'est fait pour les mauvaises raisons il y a de grandes chances que ça échoue et/ou coule le business.

Tant qu'il n'y a pas de contraintes techniques fortes il vaut mieux faire évoluer son legacy.

Drahi par un groupe de ransomware !
thumbnail

Le groupe Altice (SFR, etc) et Patrick Drahi ont été la cible d'un ransomware.

Pas très bon pour l'image alors que SFR se targuait de nombreuses fois de pouvoir contrer les ransomwares justement.

On y voit le mode de vie des ultra-riche:

  • carte bleu plafonnée à 38000€
  • tableaux de Pigasso, Kandinsky, etc
  • yachts, voitures de luxe, jet privés

C'est édifiant..

Generate releases based on semantic version labels on pull requests
thumbnail

Un outil pour release automatiquement et gérer les releases Github via des labels sur les Pull Requests.

L'outil est très complet et supporte tout pleins de choses:

  • releases canary (test) ou next (release candidate en plus des releases normales
  • création des labels sur les repo
  • support des anciennes versions majeures
Conditionally spreading objects in JavaScript
thumbnail

J'en ai eu besoin récemment, une astuce pour avoir un spread operator conditionnel en JS

const isActive = true;

const user = {
  name: "Amit",
  age: 30
};

const activeUsers = {
  ...isActive && user
};
React I Love You, But You're Bringing Me Down
thumbnail

L'article parle des inconvénients de React. (c'est l'auteur de React Admin)

Pour l'auteur, les formulaires sont compliqués à écrire correctement à cause d'un trop haut niveau d'abstraction.

De son point de vue, les hooks ont amené un niveau supplémentaire de complexité sur des parties métiers qui était déjà gérées correctement par Redux.

Il continue sur d'autres points en donnant toujours des exemples voir des comparaisons avec d'autres framework.

Quand la Chine exécute ses prisonniers pour alimenter le trafic d’organes
thumbnail

Après les adeptes du Qi gong puis des Ouïghours, c'est au tour des prisonniers politiques d'alimenter le commerce de la greffe d'organe en chine

Chrome & Edge Enhanced Spellcheck Features Expose PII, Even Your Passwords

Le spellcheck avancé de Chrome envoi les mots de passes lorsqu'on les rentre dans des formulaires.

A Creative Director and an A.I. Made This Comic Book Together
thumbnail

Un directeur artistique a réalisé une bande dessinée complète en utilisant Mindjourney.

On est entrain de vivre une impressionnante révolution AI

Every Noise at Once

Un site qui tente d'oganiser tous les genres musicaux sur une page web en les extrayant de Spotify.

The calibration is fuzzy, but in general down is more organic, up is more mechanical and electric; left is denser and more atmospheric, right is spikier and bouncier.

(Merci Olivier pour le partage)

Minecraft in Minecraft
thumbnail

Ça devait finir par arriver, une équipe à développé Minecraft dans Minecraft en utilisant des circuits de Redstone.

Ils ont emulé un petit ordinateur avec CPU, RAM et processeur graphique pour faire tourner une version simplifiée de Minecraft en noir et blanc !

Ils utilisent MCHPRS qui est un serveur Minecraft en Rust specialisé dans l'exécution de programmes en redstone.

French Tech Journal: The Grim Rentrée Edition
thumbnail

L'écosystème français des levée de fonds s'essoufle

"Seulement" 545 millions au troisième trimestre, à comparer avec les 4 milliards sur la même période en 2021.

Par exemple, Swile a doublé ses pertes en 2021

Screen and camera recorder
thumbnail

Un outil pour enregistrer son écran et faire des présentation ou autre directement dans le navigateur!

Logging Node.js avec Pino - Code Heroes
thumbnail

Pino est vraiment un super logger, en plus de ses excellentes performances, il permet de

  • cacher automatiquement des valeurs dans les objets (comme les jeton d'authentification par exemple)
  • créer des sous logger par module
  • écrire les logs dans des destinations différentes en fonction des niveaux

Les log sont très souvent une partie critique de l'application car écrire des une sortie est assez consommateur (chez Kuzzle, on s'est rendu compte que nos access log ralentissaient le backend outre mesure.

Il faut aussi faire attention à ce que l'on veut loguer et trouver un équilibre sur la quantité car on peut facilement remplir des tera octets de logs.

Dans l'idéal, il faut construire un système permettant de changer dynamiquement le niveau de log pour activer le mode debug lorsqu'on en a besoin, et l'arrêter ensuite.

AI wins state fair art contest, annoys humans
thumbnail

Une image générée avec MindJourney gagne un concours d'art digital aux États-Unis.

La personne à quand même fait des centaines d'essais pour arriver à un résultat satisfaisant.

C'est quelque chose qui arrivera de plus en plus fréquemment et le monde du design se transformera pour inclure les IA avec des spécialistes en manipulation.

Don’t worry, Nobody is Replacing Node, not Even Bun and Even less Deno

C'est toujours bien de voir émerger d'autres runtime car cela amène de nouvelles idées et concepts.

Par contre il ne faut pas se voiler la face, il y a très peu de chances que Deno ou Bun puissent remplacer Node.js.

L'industrie a mis des années avant de faire confiance à Node.js et aujourd'hui je vois difficilement les entreprises se tourner vers un nouveau runtime simplement pour des histoires de design ou quelques % de perfs en plus sachant que le coût d'adoption à l'échelle industriel est très élevé.

Away from AWS, how we reduced our annual server costs by 80% from $1M to $200k

L'histoire d'une migration de AWS sur des serveurs custom.

Encore une fois, ce sont les transferts de données qui coutaient le plus cher à l'entreprise.

C'est très souvent un coût "caché" car très compliqué à évaluer.

Leur solution finale se base sur:

  • serveurs bare metal pour le computing
  • MinIO pour le stockage S3-like
  • Cassandra pour la base de données

Les cloud comme AWS ont une tarification du traffic réseau et surtout du traffic réseau externe pour vous garder un maximum au sein de leurs écosystèmes.

Il vaut mieux se tourner vers des hebergeurs comme OVH ou Scaleway qui eux ne facturent pas le traffic https://links.aschen.tech/shaare/Q0rZJw

pngquant — lossy PNG compressor

Un compresseur PNG qui va modifier légèrement les couleurs de votre image pour avoir une palette plus petite.

A l'oeil ça ne se voit presque pas mais le poids de l'image peut être réduit de plus de 75%!

Your CTO Should Actually Be Technical
thumbnail

Un article qui tacle un peu la tendance d'avoir des CTO / VPE plus dans le management pur que la technique.

Il donne notamment 5 raisons:

  • les capacités technique permettent un meilleur jugement sur les personnes ou les systemes
  • l'importance de comprendre les enjeux d'un compromis
  • plus de facilité à gagner le respect des équipes
  • la passion pour la technique apporte une meilleure vision et plus de motivation
  • plus facile de recruter des ingénieurs qualifiés
Flutter State Management Investigation
thumbnail

Une étude de plusieurs librairies pour gérer le state en Flutter.

(Via Pierre)

Product vs. Feature Teams

Un article assez critique sur l'organisation habituelle des Product/Feature Team.

Une de ses critique est que les Feature Team devraient plutôt se focaliser sur des problèmes à régler pour améliorer le business que sur des roadmap avec des features priorisées.

Il insiste aussi sur le rôle du Product Manager qui doit avoir une connaissance approfondi:

  • du client
  • de la donnée
  • de l'industrie
  • du business en particulier

Il a un rôle de designer du produit et de facilitateur car l'objectif est toujours de responsabiliser les équipes au maximum pour améliorer l'implication.

Best practices for creating a modern npm package
thumbnail

Article didactique sur la meilleure manière de créer un package NPM.

Notamment la partie pour le double support CommonJS et Module est top!

Sinon comme toujours réfléchissez-y à deux fois avant d'ajouter de la complexité à l'écosystème Javascript qui est déjà affreusement complexe.

Qwik, Framework reimagined for the edge!
thumbnail

Un nouveau (LOL encore) framework Javascript frontend.

Ils se focalisent sur la vitesse lors du premier affichage de l'application en supprimant la phase d'hydratation.

Lorsque l'on télécharge une page web en React par exemple, le navigateur doit interpréter le HTML et le JS, puis:

  • re-créer tous les listeners sur les noeuds du DOM
  • re-créer l'arbre de composant représentant l'application
  • restorer l'état (state) de l'application

Qwik permet de sauter ces étapes avec plusieurs astuces, par exemple pour les listeners, ils sont directement dans le HTML:

<button on:click="./chunk.js#handler_symbol">click me</button>

Sinon la syntax est très similaire à celle de React avec du JSX.

How to embrace asynchronous communication for remote work

Le fonctionnement de Gitlab en async.

Leur handbook est juste une mine d'or de bonnes pratiques, j'aime beaucoup la page Communication aussi

Pragmatic Recruiter Livre blanc des bonnes pratiques en recrutement

Excellent livre qui parle des processus de recrutement.

J'aime beaucoup la manière de concevoir la création d'un poste comme un produit à part entière (p.19)

CrackQL is a GraphQL password brute-force and fuzzing utility.
thumbnail

Un tool qui exploite des faiblesses dans les API graphQL pour faire du bruteforce de credentials notamment.

A tester sur vos endpoints pour vérifier la sécurité de ceux-ci

Editor | JSON Crack
thumbnail

Un éditeur/visualiseur JSON sous forme de graph pour explorer ses données

(via Stéphane)

HOW IT WORKS: The International Space Station
thumbnail

Une fascinante balade à l'intérieur de l'ISS.

Si le sujet vous intéresse, j'aime aussi cette vidéo plus technique sur sa construction et son fonctionnement: https://www.youtube.com/watch?v=oLrOnEmy_GA

GIFShell attack creates reverse shell using Microsoft Teams GIFs
thumbnail

Une attaque assez élaborée qui cible les utilisateurs de Microsoft Teams.

La cible doit d'abord installer un programme malveillant sur son PC qui va ensuite scanner les logs des conversations et réagir à des commandes envoyées via des GIF.

Ensuite des informations peuvent être exfiltrées à travers les pare-feu d'entreprise car elles ressembleront à du traffic légitime en provenance de Microsoft.

L’eau, meilleure au robinet qu’en bouteille plastique
thumbnail

Pourquoi boire de l'eau à 100 fois son prix, avec en plus une pollution plastique ?

Surtout quand on voit le niveau de contrôle qualité qu'il y a sur l'eau potable (que l'on a pas sur l'eau en bouteilles)

Au total, une soixantaine de paramètres sont contrôlés via des limites et références de qualités bactériologiques, physico-chimiques, organoleptiques, ou encore radiologiques, faisant de l’eau du robinet l’aliment le plus contrôlé en France.

J'en parlais ici http://aschen.tech/index.php/2022/02/09/les-francais-et-leau-en-bouteille/

Using AI to decode speech from brain activity
thumbnail

Whoa ça c'est de l'avancée en IA qui claque!

Ils ont réussi à analyser les signaux cérébraux pour comprendre quels sont les mots qu'auraient voulu utiliser des personnes incapable de parler.

Les chercheurs arrivent à reconnaitre 793 mots à 73%.

Secure shell history commands by finding sensitive data
thumbnail

Un utilitaire pour trouver des informations sensible dans l'historique de votre shell!

Il y a aussi une commande un peu comme Git pour vider temporairement son historique avant une démo ou un partage d'écran:

shellclear stash

# do you demo

# restore your history
shellclear stash pop
AFFiNE is a next-gen knowledge base that brings planning, sorting and creating all together
thumbnail

Un outil de création de base de connaissance interne dans le même genre que Notion.

Better than JPEG? Researcher discovers that Stable Diffusion can compress images
thumbnail

Une utilisation intéressante de Stable Diffusion pour compresser des images.

Stable Diffusion est un algorithme de génération d'image à partir d'un texte.

Meta’s new text-to-video AI generator is like DALL-E for video
thumbnail

Après la génération d'image à partir d'un texte, maintenant Facebook propose la génération de vidéo à partir d'un texte

Comment livrer à l'heure sans bug tout le temps ? (ou presque) avec la méthode BAM”
thumbnail

Meetup du CTO de BAM sur leur méthode pour réduire l'incertitude dans les cycle de développement.

En gros on est sur du développement centré autour des Epic (features) et non plus des Users Stories.

Mais surtout leur méthode implique de la modélisation de la logique applicative avec un subset de BPMN (ça ressemble à des diagrammes).

Ce langage commun utilisé par tous permet d'identifier les edge-case, de faire valider les features par le client, de discuter autour d'une feature, etc

OmniVision OV6948, la plus petite caméra au monde par le Guinness des Records
thumbnail

Une caméra de 0.5 mm, avec 200x200 pixels et 30 images/seconde !

Cette réaction chimique apprend à survivre
thumbnail

Une excellente vidéo de ScienceEtonnante sur un système chimique simple qui coche les 4 critère de la vie.

(Merci Ru. pour le partage)

Explaining the csurf vulnerability: CSRF attacks on all versions
thumbnail

Un package NPM qui propose aux développeurs un moyen de lutter contre les failles CSRF n'étais pas correctement conçu et du coup rendait possible des failles CSRF.

Autre chose, le package utilisait aussi SHA1 qui est déprécié..

L'article décrit le fonctionnement de la vulnérabilité.

Asynchronous Javascript - Learn Promises From Scratch
thumbnail

Très bon article explicatif pas à pas pour tout comprendre de l'asynchronicité en Javascript !

Open-Source Web UI for Apache Kafka Management
thumbnail

Une UI pour monitorer vos cluster Kafka

Après 31 ans, un deuxième langage sera admis pour le développement du noyau Linux : c'est le Rust, considéré par plusieurs comme candidat idéal pour la mise au rebut du langage C
thumbnail

Rust deviendra officiellement le deuxième langage autorisé dans le Kernel Linux!

Dans les raisons annoncées on retrouve bien sur les avantages de Rust (rapidité, modèle de gestion mémoire) mais aussi le fait qu'il va devenir de plus en plus compliqué de trouver des programmeur C à l'avenir.

Dash, Analytical Web Apps for Python, R, Julia, and Jupyter. No JavaScript Required.
thumbnail

Un framework qui permet de créer des applications graphiques en Python pour faire de la dataviz.

COLRv1 and CSS font-palette
thumbnail

Je savais pas qu'il existe des fonts dont on peut faire varier les couleurs en CSS!

DRUIDS by Datadog

Le Design System de Datadog est accessible publiquement (mais pas d'accès au code associé)

J'ai rarement vu un Design System aussi complet et aussi bien documenté!

(Via Maurice de FranceJS)

Contra Chrome – a webcomic

Une BD qui explique pour l'hégémonie de Google sur le web via Chrome est dangereuse.

Faites meilleur choix pour votre vie privée, et un choix militant, en utilisant Firefox

Accelerate Python code 100x by import taichi as ti

Whoa Taichi est un langage compilé avec une syntax proche de Python qui permet de booster les performances d'un code python quasiment sans le modifier !

Simplement en important la librairie et en rajoutant des annotations, on peut avoir jusqu'à x100 en performances:

import taichi as ti
ti.init()

@ti.func
// python func here

Taichi exploite automatiquement le parallélisme des CPU de la machine et même du GPU.

Create | PromptBase
thumbnail

Un site qui permet de vendre des images générées par ordinateur, sauf qu'il ne vend pas les images mais le texte utilisé pour les générer! (le "prompt")

On parle de "prompt engineer" en parlant d'une personne qui manipule des IA pour générer des images à moindre coût.

After self-hosting my email for twenty-three years I have thrown in the towel. The oligopoly has won.

Héberger son propre mail ça fait déjà longtemps que c'est la croix et la bannière.

Aujourd'hui il est quasiment impossible de ne pas finir dans les spams (et ça c'est quand les e-mails ne sont pas tout simplement redirigés vers /dev/null)

Bien sur ça nuit à la décentralisation et permet aux providers de récupérer toujours plus de données.

Des levées qui touchent le fond ?
thumbnail

Très bon article sur l'envers des levées de fonds à tout va qui déstabilisent le marché et créées des environnements toxiques.

Aujourd’hui, on se pose les fesses dans un job comme on se pose les fesses dans un Uber Pool. Le conducteur, on ne le connaît pas, ni les passagers qui entrent et qui sortent au rythme des feux rouges.

Upfront Architecture :: Continuous Isolation

Anti-guide de bonnes pratiques

Merci à Gaël pour le partage ;-)

AdGuard’s new ad blocker struggles with Google’s Manifest v3 rules
thumbnail

Google limite les fonctions des adblockers dans Chrome avec la nouvelle v3 de son système d'extensions.

A partir de janvier 2023, les extensions utilisant encore la v2 seront désactivées.

Pour moi ça va permettre à Firefox de tirer son épingle du jeu avec un plus grand respect de la vie privée de ses utilisateurs.

PS: le meilleur adblocker reste encore uBlock Origin