Monthly Shaarli
February, 2023
Gandhi se fait racheter par un groupe et ses services font fusionner avec ceux d'une autre entreprise.
C'est assez inquiétant car les entreprises rachetées par ce groupe ont subie des hausses de prix et dégradations de service.
Une BD de Gee sur la surveillance automatisé par caméra qui nous attends au tournant sous pretexte de "sécurisé" les JO 2024.
Je ne savais pas que ce genre de logiciel était déjà en place dans 200 (!) villes françaises.
Comme toujours, il faut se méfier avec ce genre de technologie car elles ont de nombreux biais et occasionneront des erreurs à répétitions sans apporté plus de "protection" (oui on dit "vidéo protection" en novlangue et pas "vidéo surveillance")
Une extension chrome qui donne accès à une librairie communautaire de prompt pour ChatGPT.
Les prompt pour Midjourney sont assez impressionnant et donnent de très bon résultats!
Un retour d'expérience sur un passage au JT de TF1 et les préparations de scaling associées.
Ce qu'ils ont fait:
- landing page dédiée, complètement statique pour la conversion vers installation de l'application
- scaling vertical des DB (plus simple je suppose)
- scaling horizontal applicatif 7
- préparation d'une page d'erreur avec Google Form au cas ou
Leur infra a fait x10 lors de la diffusion du reportage avec 250K requêtes /minutes!
Un broker MQTT écrit en Erlang avec de très hautes performances affichées:
- 100 millions de clients
- 1 million de message /seconde
- millisecond latency
- cluster masterless
En plus du broker, il y a aussi une super interface d'administration /dashboard !
Il intègre aussi un moteur de règle qui permet de faire du filtrage et de l'enrichissement avec un DSL basé sur le langage SQL.
Un article sur l'écriture de module Ecmascript (.mjs) pour une utilisation par Node.js et le browser avec l'utilisation de TypeScript.
Un article sur les métriques dans une équipe tech.
C'est quelque chose dont on peut se passer lorsque l'équipe est encore petite (<20 personnes) mais qui devient indispensable par la suite afin de comprendre le coût d'un effort et si il est réellement nécessaire.
Par exemple, ça permet de planifier (ou non) des chantier de refactoring de code ou de scaling infra.
Il y a plusieurs niveaux de maturité (Data Maturity Level):
- 0 Unaware: aucune collecte et utilisation de la donnée
- 1 Aware: certaines données sont collectées mais pas vraiment de responsable pour les surveiller
- 2 Reactive: présence de KPI produit, adoption légère
- 3 Proactive: présence de responsable sur les outils de collecte
- 4 Managed: la donnée est considérée comme critique pour l'entreprise et est communiquée au plus haut niveau
- 5 Effective: la donnée est publiée et utilisée à l'extérieur de l'entreprise
Une nouvelle technologie de batterie basée sur le sodium plutôt que le lithium.
L'avantage du sodium c'est qu'il est beaucoup plus abondant sur terre, et notamment présent en masse dans l'eau de mer (le sel)
De superbes illustrations fautes uniquement en CSS
Très intéressante comparaison entre Tailwind et Bootstrap.
Tailwind n'est pas un UI kit opinated comme Bootstrap mais plutôt une librairie de styles/widgets pour créer des composants.
Si je devais faire un parallèle avec Vue.js:
- Bootstap => Composant API
- Tailwind => Composition API
Tailwind permet donc d'avoir plus de flexibilité dans le design d'une application même si il demande un effort plus conséquent au démarrage.
(Merci Théo et Seb)
Une vidéo qui montre la force de l'aimant d'une machine à IRM.
L'aimant est capable de générer une force d'attraction de plusieurs centaines de kilos, c'est impressionnant !
A priori Zelensky était présent dans les Pandora Papers avec plusieurs sociétés Offshore dans des paradis fiscaux qui lui servait à lui et à ses associés du monde du showbiz pour détourner de l'argent et acheter des propriétés à Londres.
L'article parle aussi de ses liens avec un oligarch ayant de nombreuses connexions dans les médias, ce qui l'aurait aidé dans son élection.
Bref, il est toujours bon de se rappeler que le monde n'est pas noir ou blanc et que les héros du jour ont aussi leurs côtés sombres.
Un article intéressant d'un ingénieur de chez Google Big Query sur la hype autour du Big Data qui a tendance à s'essoufler un peu.
Sans surprise, la majorité des entreprises ne font pas de "big data" et n'en ont pas besoin.
Une explication de l'architecture hexagonale avec un exemple simple de catalogue de produit en Typescript.
Google achète une autre startup qui fait de la génération de texte comme GPT d'OpenAI.
C'est vrai que Google parait être en mauvaise posture par rapport à Microsoft/OpenAI.
Un moteur de Wiki/Documentation moderne et open source.
C'est écrit en Node.js + Vue.js + base de donnée SQL (Postgres, MySQL et même SQLite).
Pleins de fonctionnalités sont supportées:
- authentification multiple: LDAP, OAuth, Auth0, etc
- recherche avec Algolia ou Elasticsearch
- analytics avec litéralement toutes les solutions du marché
- backup externe intégré (S3 et d'autres)
Une très bonne alternative à Docusaurus et VuePress.
Une interview d'un employé de Internet Archive qui en explique un peu le fonctionnement et les rouages
Une checklist orienté sécurité d'un produit en mode SaaS.
La liste est découpée en périmètre métier (code, infrastructures, employés) mais aussi en maturité de la société (seed, série A, série B)
Ouvrir tous les emails et messages (WhatsApp, Messenger, etc) qui circulent sur internet pour contrer la pedopornographie.
Le refrain habituel qui en plus d'être très difficile techniquement et de violer le secret des correspondances, nous promet de très nombreux faux positifs.
On se rappelle du père de famille accusé à tord après avoir envoyé une photo de son fils à son médecin https://www.nextinpact.com/article/69833/accuses-a-tort-pedophilie-pour-photos-faites-a-demande-medecins
C'est la première fois qu'une application est suspendue pour le personnel de la Commission et c'est pour éviter l'espionnage de Pékin.
Un article de Replicate sur l'état des outils tech pour faire du machine learning.
If you wanted to build a website 20 years ago it felt like trying to use machine learning today.
C'est vrai qu'avant Stable Diffusion, tous les outils pour générer des images étaient impossibles à utiliser par le commun des mortels et même pour les initiés.
Pour faciliter l'utilisation des modèles, ils ont créé Cog qui est une sorte de Docker pour le ML.
Ça réglera pas les problèmes de configuration de GPU mais au moins ça permet de packager et d'utiliser simplement des modèles 👍
Un système de restriction des permissions est actuellement en cours d'ajout à Node.js.
Ce système permet de restreindre les possibilités du programme d'agir sur le système, notamment:
- système de fichier en lecture/ecriture
- exécuter de nouveaux programmes
- démarrer un worker_thread Node.js
C'est le même système utilisé par Deno pour augmenter la sécurité des applications lancés avec le runtime.
Un excellent article sur le management!
En tant que manager, on est responsable du management des processus tandis qu'on donne laisse libre les personnes dans leur travail (éviter le micro-management)
Pour lui les processus sont des attentes que l'ont rend explicites.
Par exemple, le processus de code review est une attente d'un code de qualité.
Il parle de beaucoup d'autres sujets intéressants:
- décision vs opinions: tout le monde à un opinion, le manager doit asseoir une décision
- ownership: essentiel de permettre aux gens de s'approprier leurs sujets
- confiance
- se séparer de quelqu'un
- et d'autres..
As a manager, everything is your fault.
You are in charge of processes and people.
You either created the processes where this outcome happened
or you hired (or did not fire) the wrong people.Jack Dorsey s'est fait piraté son compte Twitter suite à une attaque de type "SIM swapping"
En gros ça consiste à rattacher un numéro de téléphone en se faisant passer pour le propriétaire légitime de la ligne auprès de l'opérateur.
Bref le 2 factor via SMS ne peut être considéré comme sécurisé.
Avast fait du MITM en interceptant les certificats et en les remplaçant par les siens.
Donc en gros Avast s'arroge le droit de voir votre traffic SSL en clair.
Excellent article sur le problème de la complexité qui est très souvent ce qui ralentit l'innovation autant au niveau technique que produit.
Skynet bientôt parmi nous
Quelqu'un a réussi à détourner la version de ChatGPT utilisé par Microsoft pour leur moteur de recherche.
Il a été possible de faire réciter l'ensemble des consignes donnés à l'IA sous la forme de texte.
Je pense qu'on peut parler d'un hack car il y a eu extraction de données s'apparentant à du code source (les prompts des ingénieurs de Microsoft)
Un site qui démontre et explique toutes les techniques pour récupérer des informations depuis un navigateur.
Ces informations peuvent notamment être utilisées pour identifier un utilisateur de manière unique, même sans déposer de cookie.
Par exemple, la manière dont votre navigateur + système d'exploitation + hardware render un Canva HTML permet de vous identifier de manière quasiment unique.
Attention aussi à WebRTC qui peut faire fuiter votre IP réelle ! (Toutefois, j'ai testé avec OpenVPN pour Android et Firefox et ça ne fuite pas.)
Pixeludo est une plateforme de jeux éducatifs du CP au CM2, gratuite et sans publicité !
Un autre article clean-archi / archi hexagonale.
Celui la met l'accent sur les problèmes des architectures classiques ou le métier est "mélangé" avec les couches d'API et de persistence et sur la solution de cloisonnement qu'apporte l'architecture hexagonale.*
Les principes les plus importants:
- le domaine ne dépend que de lui même
- pas de framework dans le domaine
- inversion de contrôle via notamment l'injection de dépendances
- commencer par le domaine (et les tests associés!)
L'application de Toyota pouvait se bypass grâce à une route qui permettait de générer un JWT depuis seulement un email.
Une feature d'impersonation qui n'a pas du passé de contrôle qualité et qui une fois un production permet de contourner tous les autres mécanismes d'authentification 2FA etc.
Le pire dans cette histoire c'est que Toyota n'a pas donné 1 seul centime au chercheur qui a trouvé la faille et l'a signalé à Toyota pour qu'ils puissent corriger!
Scaleway lance son service cloud de Message Queue!
C'est basé sur NATS.io qui est un message broker moderne et cloud native.
Un article sur le développement d'un algorithme quantique utilisant des qbits pour trouver une valeur dans un tableau.
C'est une implémentation de l'algorithme de Grover.
Bien sur ce n'est qu'une emulation d'un processus quantique qui fait tourner le programme. IBM (et d'autres) proposent ce genre de services
Un article qui vulgarise très bien le pipeline d'exécution du code source Javascript par V8.
C'est sensiblement la même chose pour les autres moteurs présents dans Firefox (SpiderMonkey) et Safari (JavaScriptCore).
(Merci Alex pour le partage)
Une animation qui retrace l'évolution de l'art à travers les âges.
On dirait que chaque image est générée par un IA avec un prompt sur le type d'art voulu avec l'image précédente également en entrée.
Une nouvelle que j'ai vu passé il y a quelques années, c'est une histoire de fin du monde vu par des sysadmin réfugiés dans leurs datacenter :-)
Mais qui éteint une bécane qui a plus de 5 ans d’uptime ? C’est comme euthanasier ta grand mère
Les principales villes du monde ont été attaquées, laissant les différents dispositifs d’urgence dans le chaos total. Les attaques ont été d’une très grande envergure, les moyens utilisés sont électroniques et biologiques, ainsi que des explosifs nucléaires et conventionnels
Un clip musical créé entièrement avec des AI:
- paroles de la chanson
- vocales et instruments
- clip vidéo
Un retour d'expérience sur un passage de iOS natif à Flutter.
Les points forts:
- le langage Dart
- la rapidité d'exécution des tests
- grande diversité de widget embarqués
- hot reload <3
- performances
- courbe d'apprentissage douce
Les points faibles:
- moins de ressources et librairies car ecosystème "jeune"
- 🕸️
Flutter est le langage de l'avenir pour le frontend et (j'espère) un jour aussi du backend.
Le prochain langage fullstack pour remplacer Javascript?
Résultat de l'expérience sur la semaine de 4 jours au Royaume Unis (3000 salariés depuis juin 2022)
- baisse de 71% des facteurs de burn-outs
- baisse de 65% des jours d'arrêt maladie
- baisse de 57% des risques de démissions
- 91% des entreprises du test vont continuer
Comment être efficace à un poste de top management "Head of ..."
Globalement l'article se présente sous la forme d'une grande liste, pour moi les points les plus importants:
- créer un lien de confiance avec son équipe: discuter et déléguer pour faire émerger d'autres leaders
- évolution de carrière: définir clairement les potentielles évolutions de carrière avec les attentes et salaires pour chaque poste
- impliquation dans l'équipe dirigeante pour comprendre la stratégie de l'entreprise
- développer son réseau pour échanger avec d'autres tech leaders
- recrutement
- software delivery
- veille technologique
Apple va supporter les Push Notifications sur les progressives web apps.
C'est une bonne nouvelle, c'etait une fonctionnalité critique qui manquait par rapport aux applications natives.
Une librairie de composants React près à l'emploi pour faire développer une application.
Le design est très épuré je trouve
Curiosité mathématique du jour:
Quelle est la taille minimal d'un carré contenant X carré de taille 1?
Ça donne des agencement suprenant :D
Une IA qui génère des vidéos et c'est bluffant!
Ils sont capable d'appliquer un style provenant d'une photo sur une vidéo.
Exemple avec Indiana Jones
Un article intéressant sur les avantages de Deno.
Il y a de nombreux avantages en DX, notamment le support Typescript directement par Deno mais surtout je découvre un avantage non négligeable en terme de sécurité de la supply chain.
Les scripts (comme les entrées de scripts dans le package.json en Node.js) de Deno sont lancés dans un shell isolé spécial (deno_task_shell) et n'ont accès qu'a leur input, ce qui les empêche d'aller farfouiller sur le système (ce genre de truc https://arstechnica.com/information-technology/2022/03/sabotage-code-added-to-popular-npm-package-wiped-files-in-russia-and-belarus/)
L'approche des dépendances via URL est aussi intéressante, on est capable de charger du code depuis une URL tout en respectant des versions, des checksum, etc.
Les ingénieurs de Cloudflare ont détecté et mitigé la plus grosse attaque DDoS enregistrée jusqu'alors.
Le dernier "record" était de 46 millions requêtes/s en juin 2022.
Après je trouve ça bizarre de parler en requêtes par seconde et non en capacité (To par seconde) car 10 millions de requêtes de 100ko ça fera plus mal que 100 millions de requêtes de 5ko.
Clip de Groland sur les ordres de grandeur du réchauffement climatique avec une morale très provoque.
Une amélioration de Dreambooth pour Stable Diffusion afin d'entraîner ses propres modèles puis de générer des images en rapport.
Par exemple en lui envoyant plusieurs images de vous, il sera capable de générer des images vous représentant dans différentes situation.
LoRA est beaucoup plus efficace, 8 min d'entraînement et un modèle de 5Mo contre 30 min et plusieurs Go pour Dreambooth
Une IA qui permet de générer des design d'interface à partir de prompt.
Il suffit de lui décrire ce que vous voulez et ça génère le design correspondant.
Par exemple: A settings page for users to edit their names, phone numbers and password
Le top c'est que derrière il est possible d'éditer directement le design dans Figma!
Explication du dilemne de l'innovateur qui tiraille Google entre rapidité d'innovation comme la startup OpenAI avec ChatGPT opposée à la stabilité et la confiance qui permettent à une entreprise de s'imposer sur le long terme.
Il est possible de contourner les limites de ChatGPT en lui indiquant une suite d'instructions en introduction puis de lui parler normalement.
C'est vraiment le cerveau positronique d'Asimov, c'est impressionnant..
Dans le code source de Yandex, il y a des directives qui qui empêche d'afficher la tête de Putin pour certains mots clés.
These terms include:
Bullshitter (pizdabol, in Russian)
Balding (pleshivy)
Dickhead (khuilo)
Grandpa in his bunker
As well as phrases such as:
Top thief
Scumbag of all Rus’
Dick in a spacesuit
Dickhead in an ice hole
What do pedophiles look like
When will he croak
Strange creature waves his hand