Cloud Amazon S3 now supports conditional writes : Amazon S3 supporte les écritures conditionnelles (avec des conditions comme “si le fichier existe”, etc), ce qui peut supprimer une partie de votre code. Un exemple d’usage de ces écritures conditionnelles avec le billet Leader Election With S3 Conditional Writes qui montre comment gérer basiquement l’élection d’un leader dans un système distribué en se basant sur cette fonctionnalité. How to delete a versioned bucket in AWS S3 using the CLI? : Parce que pour supprimer un bucket avec versionning, il faut supprimer les fichiers, les versions du fichiers et les fichiers marqués comme effacés… Database Elasticsearch is Open Source, Again : Elasticsearch et Kibana se voient ajouter une licence AGPL en plus des licences (restrictives) existantes pour revenir dans le monde de l’OSS. La vision positive est de dire que c’est le témoin de la fin d’une époque et que les relations entre les communautés OSS et les CSP américains se sont civilisées. Une vision plus critique consiste à dire qu’il y a toujours les anciennes licences et que le retour à l’OSS est peut être plus symbolique d’autre chose du fait de l’empilement de licences. A voir comment cela évolue mais l’épisode Redis du printemps nuance le sujet… Valkey 8.0: Delivering Enhanced Performance and Reliability - Generally Available: Valkey 8.0.0 Valkey, le fork de Redis 7.2 sous l’égide de la Linux Foundation, a sorti sa version 8.0RC1 en aout et la version finale en septembre - Un point important est la sortie du “single thread model” qui pouvait devenir bloquant pour la scalabilité à force. Pas mal d’autres travaux sur les parties performance / réplication / résilience / observabilité. A ne pas confondre avec Redis 8 DuckDB, in-memory, mais pas totalement ! : En fonction de la taille de votre dataset, DuckDB peut être amené à créer (beaucoup) de fichiers temporaires. Utiliser le format interne de DuckDB semble être une bonne option pour éviter de créer ces fichiers temporaires et ne générer que les fichiers parquets ou autre qu’à la fin du process. Announcing DuckDB 1.1.0 : Version 1.1 de DuckDB Search on PostgreSQL, Building Extensions, and pg_analytics with Philippe Noël : Interview du fondateur de ParadeDB qui fait pg_lakehouse, pg_analytics et pg_search avec un retour sur les extensions Postgres. Middleware Kestra Secures $8 Million to Simplify and Unify Orchestration for All Engineers - How Kestra Raised $8M: Our Seed Deck, Now Public - Lessons Learned from Turning an Open-Source Project into a Viable Business: Kestra fait une seconde levée de fonds de 8M$ pour pousser plus loin son orchestrateur. Si vous avez des besoins d’orchestration, la solution est vraiment agréable à utiliser et l’équipe est top. Ils profitent de l’occasion pour partager différentes ressources et considération sur le projet et leur levée de fonds. Episode 205 : Kestra avec Ludovic Dehon : ma piste audio est partie dans les limbes mais il n’en reste pas moins que cette épisode vous permet d’avoir une présentation de Kestra, sa génèse, leurs choix et le futur. Python Farewell pandas, and thanks for all the fish. : DuckDB devient le backend par défaut du projet Ibis en lieu et place de Pandas. Le billet explique les raisons (NaN vs NULL, performances, etc) Rendez-vous à la fin du mois prochain pour une nouvelle édition.
Data DuckDB as the new JQ : DuckDB pouvant lire des fichiers JSON, il était tentant pour certains de manipuler des fichiers JSON en SQL… Database Redis Adopts Dual Source-Available Licensing | Redis - The race to replace Redis - Linux Foundation Launches Open Source Valkey Community : A compter de la version 7.4, Redis passe d’une version open source (licence BSD) à une double licence “Source Available” pour officiellement contrer les vilains méchants concurrents qui ne reversent pas à la communauté. Bizarrement, la “Common Clause” adoptée en 2018 pour les mêmes raisons n’a pas suffit. La réponse de la communauté ne s’est pas fait attendre avec la création du projet Valkey sous l’égide de la Linux Foundation. Si le passage d’un projet dans le giron d’une fondation peut rassurer ses utilisateurs et contributeurs sur la licence du projet, il n’en reste pas moins qu’il faut sécuriser les revenus de la société éditrice du projet. Cela pose aussi la question de notre attachement à l’Open Source - est-ce par philosophie ou par confort d’utilisation et la gratuité ? La fin de l’argent facile montre aussi les limites du financement des projets OSS via des VC ; certains ont fait évolué leur produit de façon plus subtile (ou pas) ou leur criticité est moindre pour ne pas provoquer une réaction comme pour Redis (Inc). Valkey 7.2.5 : Première version de Valkey, un Redis 7.2.4 nettoyé et avec quelques améliorations. Cela aura été rapide, mais avant de sauter le pas, il va falloir voir comment l’écosystème prend… IA Ce que l’histoire du tracteur peut nous apprendre sur l’impact prévisible de l’IA : analogie entre l’adoption du tracteur et de l’IA - tant que le cout du tracteur est plus cher que les humains ou de leur quantité, le tracteur ne s’est pas développé. Dès qu’il y a eu pénurie de main d’oeuvre ou que le cout des tracteurs a baissé, son adoption s’est accélérée. En serat-t-il de même pour l’IA ? SXSW 2024 : face à l’IA, les entreprises en pleine gueule de bois & [Crash Tech] SXSW 2024 : surtout, don’t panic ! : retour sur le festival SXSW où les réflexions autour de l’IA sont nombreuses avec un petit coup de gueule de bois. Infrastructure as Code HashiCorp joins IBM to accelerate multi-cloud automation : après le changement de licence en aout 2023, il semblait assez évident qu’HashiCorp cherchait à se faire racheter. IBM est donc l’heureux élu avec une valorisation d’HashiCorp à 6.4 Milliards de dollars. Après l’arrivée des projets OpenTofu (fork de Terraform) et OpenBao (fork de Vault) sous l’égide de la Linux Foundation, on pouvait se demander comment cela allait finir pour Hashicorp. Même si IBM contribue à l’open source, on aurait pu espérer meilleure maison pour HashiCorp. IBM n’est pas forcément perçu comme une zone d’innovation. Une piste qui pourrait néanmoins être intéressante avec cette acquisition et pour réconcilier la communauté, c’est que HashiCorp soit rattaché à Red Hat dans une division “Cloud & Automatisation / DevSecOps” au coté de projets comme Ansible par ex. Sécurité backdoor in upstream xz/liblzma leading to ssh server compromise - Une backdoor bien critique découverte dans xz Utils / liblzma - XZ et liblzma: Faille de sécurité volontairement introduite depuis au moins deux mois - Who in the world is Jia Tan? : Au delà d’illustrer que toute l’infrastructure moderne dépend d’un petit projet maintenu par une seule et unique personne, l’arrivée de cette backdoor dans xz via les fichiers de tests est assez édifiante et digne d’un film d’espionnage tant cette opération semble préparée. New HTTP/2 DoS attack can crash web servers with a single connection - HTTP/2 CONTINUATION Flood : une vulnérabilité HTTP/2 fort symathique pour vos frontaux mais aussi par ex vos cluster kubernetes Time Series SenX, recognized as a leader in Time Series data management. : SenX, éditeur de la plateforme Warp 10 est (enfin) reconnu comme leader dans le monde des séries temporelles. J’ai bien fait de miser sur Warp 10 tiens ! Trace Plugin: the WarpScript Debugger is here! : SenX sort un plugin sous lience commerciale pour débugguer votre code WarpScript (mais pas que). Testable sur la sandbox
Après presque 2 ans de silence et le remplacement de Hugo et Bootstrap par Zola et Tailwind/daisyUI l’été dernier pour générer le site, je vous souhaite une bonne année à tous et la résolution de publier plus régulièrement mes trouvailles… Data Multi-Database Support in DuckDB : Cela multiplie les possibilités :sunglasses: TL;DR: DuckDB can attach MySQL, Postgres, and SQLite databases in addition to databases stored in its own format. This allows data to be read into DuckDB and moved between these systems in a convenient manner. IoT Devenez un expert LoRaWAN via LoRa et LoRaWAN pour l’Internet des Objets: si vous cherchez un cours théorique et pratique pour vous former aux protocoles LoRa et LoRaWan, je vous le recommande chaudement. Ops DKron via Dkron pilote vos crontab : un gestionnaire de cron distribué, avec une jolie interface et uen API - que demander de plus ? Sur un modèle agent/serveur, le serveur dRkon distribue les tâches aux agents dKron concernés. les agents dKron étant déployés sur les serveurs sur lesquels les jobs doivent s’exécuter. Reverse Proxy Caddy : si vous avez besoin d’un reverse-proxy avec gestion automatique des certificats et redirection HTTP > HTTPS et plein d’autres choses encore mais sans nécessité d’intégration avec Docker comme Traefik, alors jetez un coup d’oeil à Caddy. Il permet également d’avoir un certificat sur localhost. Comme Traefik, il est écrit en Go. J’avoue que la concision de Caddy vs Traefik et le provider file est bien appréciable:
Conteneur et Orchestration Docker Engine 20.10.13 : Docker compose v2 arrive dans docker : ce qui permet de faire docker compose (au lieu de l’original docker-compose coté en python) COPY --chmod reduced the size of my container image by 35% : pour réduire la taille de vos images, plutôt que de faire un ADD ... puis un RUN chmod ..., faites directement un ADD/COPY --chmod. Marche aussi avec --chown. Docker Compose > depends > condition: ready : depends_on a une syntaxe longue qui permet de définir une condition sur l’état du service dépendant : démarré (valeur par défaut de la version courte), “sain” (en fonction du résultat d’un healthcheck) ou “terminé avec succès” (si votre service dépend du résultat d’un job ou d’une tâche). Numérique LCC 273 - Interview sur le darwinisme numérique avec Didier Girard - partie 1, LCC 274 - Interview le darwinisme numérique avec Didier Girard - partie 2 et LCC 275 - Interview sur le darwinisme numérique avec Didier Girard - partie 3 : interview en 3 volets de Didier Girard sur la notion de darwinisme numérique au niveau d’une nation, d’une entreprise et de l’individu. Open Data adresse.data.gouv.fr : le site national des adresses dont l’objectif est de référencer l’intégralité des adresses du territoire et les rendre utilisables par tous. Outils GitUI : si vous trouvez tig pas très intuitif/pratique, GitUI pourrait vous plaire. Prévu pour le terminal, il permet de se ballader facilement dans votre historique git & co. L’ outil en codé en Rust. igrep : un grep interactif qui permet d’ouvrir le fichier dans un éditeur et d’aller directement à la ligne contenant le motif recherché. Basé sur l’excellent ripgrep. Python Awesome AGSI : liste de ressources compatibles ASGI (Asynchronous Server Gateway Interface) Demystifying Python’s Async and Await Keywords : une intro à async/await avec asyncio. Python’s zipfile: Manipulate Your ZIP Files Efficiently : le module zipfile inclus dans la librairie standard Python permet de manipuler aisément des archives Zip. La page illustre les différentes méthodes et capacités du module. How to Write User-friendly Command Line Interfaces in Python : si le module argparse est assez connu et peut être aussi Fire, c’est l’occasion de découvrir Click (par l’équipe derrière Flask & co et à ne pas confondre avec clikt en Kotlin), Typer (par le fondateur de FastAPI). Build a User-Friendly CLI from Pure Python Functions : suite de l’article précédent avec la mise en place de DynaCLI dont le but est de générer des CLI depuis des fonctions pythons “pures”. Pass-by-value, reference, and assignment | Pydon’t 🐍 : Python passe-t-il ses variables par valeur ? par référence ou par assignement ? (Dajngo) Classy Class-Based Views : une représentation détaillée des méthodes, attributs et propriétés des “Class based views” de Django Fugue and DuckDB: Fast SQL Code in Python : Fugue permet de combiner du SQL et du code Python et DuckDB permet de faire tourner une base OLAP. De quoi accélérer le traitement de vos données en python ? RGPD & Privacy Shield “Privacy Shield 2.0”? - First Reaction by Max Schrems : La Commission Européenne et les USA ont annoncé une nouvelle version du Privacy Shield. Max Schrems est sceptique pour le moment… Google Analytics 4 (GA4) vs Universal Analytics (UA) : Matomo se livre à un comparatif et une analyse (forcément un peu biaisés) de Google Analytics 4 vs Universal Analytics. Dans tous les cas, la conclusion est de prendre une solution qui répond à vos critères et respectent les règles du jeu (GDPR, etc).
On orchestre, on conçoit — et on code aussi. Parlons de votre plateforme, vos données ou votre projet IoT.
Contactez-nous →