CérénIT

Le blog tech de Nicolas Steinmetz (Time Series, IoT, Web, Ops, Data)

Web, Ops, IoT et Time Series - Janvier 2025

database redis elastcisearch snowflake databricks python poetry ia agent influxdb deepseek zml nvidia stargate openai microsoft llm tailwind french tech

Database

  • Databases in 2024: A Year in Review : rétrospective des faits marquants dans le monde des bases de données en 2024 agrémentée du point de vue d’Andy Pavlo, un commentateur régulier de l’actualité du monde des bases de données. On retrouve forcément Redis et Elasticsearch sur le sujet des licences, le phénomène DuckDB et la guerre Databricks/Snowflake (mais peut-on encore parler de base de données à leur échelle ?)

Economie & Géopolitique

  • Carlos Diaz et Alain Garnier - La tech européenne : copier, inventer, ou s’effacer ? : deux visions de la tech en France et Europe qui s’opposent, se rejoignent, se complètent ou se nuancent. Cela part un peu dans tous les sens mais très intéressant.
  • 2025 : Le grand basculement et 2025 : La fin du monde Tech tel qu’on le connaît ! : Les prédictions 2025 de Carlos Diaz, la première version a l’avantage de permettre de préciser un peu chaque point. On y adhère ou pas mais au moins, les arguments sont exposés et font réfléchir.
  • French Tech : Faut-il fuir la France pour réussir sa startup ? : si le bilan est sévère, on peut se poser la question du mode d’évaluation. Faut-il regarder le bilan selon un prisme américain et où les startups sont financées par les VC ou bien faut-il valoriser un autre modèle plus adapté au marché européen comme le bootstrap (autofinancement ou avec peu de capital externe) ? Après tout, Dassault Systèmes est bien une décacorne… Reste aussi à apprécier la taille des marchés : les finlandais ou l’estonie ont tout de suite admis que leur marché était trop petit - la France serait-elle à une taille intermédiaire mais insuffisante ?

IA

Python

  • Announcing Poetry 2.0.0 : le gestionnaire de package python passe en 2.0 et améliore notamment sa conformité avec les spécifications du fichier pyproject.toml.
  • FastAPI Best Practices : un recueil de bonnes pratiques pour vos projets FastAPI.

Ops

  • Quickwit joins Datadog : Quickwit, un outil de recherche d’indexation et de stockage de données en temps réel, est maintenant intégré à Datadog. Si cela semble un bon choix et une bonne nouvelle pour l’équipe Quickwit, je suis plus réservé sur la capacité de Datadog de maintenir un projet OSS dans le temps.

Time Series

  • InfluxDB 3 Open Source Now in Public Alpha Under MIT/Apache 2 License : InfluxData revoit les plans annoncés en 2023 à l’occasion de la sortie de la version d’InfluxDB3 Core en version alpha. InfluxDB Edge est renommé InfluxDB Core mais ne peut requêter que les dernières 72h de données. La version “Community Edition” (version non OSS mais avec le code source disponible) qui devait avoir le même périmètre fonctionnel que InfluxDB 1.x / 2.x OSS n’existe plus et serait remplacée par InfluxDB v3 Entreperise en mode Free Tier. Les choses peuvent encore bouger et l’on peut comprendre la pression des investisseurs ou la nécessité de mieux monétiser leurs produits mais la communauté et les utilisateurs de la version OSS risquent de ne pas apprécier cette évolution. D’ailleurs, entre les plans de 2023 et les dernières annonces, on voit que le périmètre de la version “OSS” ne fait que se réduire. Pour les plus vieux, cela rappelle un peu le principe du shareware des années 90s/2000s avec des versions gratuites mais limitées des logiciels…
  • Announcing InfluxDB 3 Enterprise free for at-home use and an update on InfluxDB 3 Core’s 72-hour limitation : Finalement InfluxData lève certaines restrictions de la version Core (la vie n’est qu’une suite de boucles de 72h). Pour ceux qui veulent un équivalent de la version OSS 1.x/2.x pour leurs projets personnels, il y aura un “Free Tier” à cet usage dans InfluxDB3 Entreprise. A voir si cela satisfait tout le monde…

Web

  • Tailwind CSS v4.0 : nouvelle version de ce framework css avec une tonne de nouveautés dont je vous laisse prendre connaissance. Un guide de migration pour vos projets existants est disponible.

Web, Ops, IoT et Time Series - Aout 2024

pyinfra ansible python pylyzer uv poetry iot sécurité rbac

Général

  • Stack Overflow Survey: 80% of developers are unhappy : Les raisons de la frustration seraient techniques (dette technique, complexité de la stack technique), organisationnels (réunions, planning, pression) ou plus globaux comme les licenciements massifs dans la tech.

IoT

  • Why has the Internet of Things failed? : Moins de 50% des objets IoT seraint effectivement connectés. 3 barrières principales : la configuration intiale, l’(in)utilité de l’objet en lui-même et l’énergie (alimentation et communication). Sans utilitée avérée de l’objet, il ne sert à rien d’optimiser les deux autres. Si on a l’utilité, alors il faut trouver les meilleurs compromis pour avoir une bonne UX de configuraiton initiale et une gestion énergétique du device. Peut être juste la fin de la cycle de hype pour l’IoT et en route vers la maturité ?

Ops

  • PyIfra 3.0 & 3.1 : pyinfra se veut une alternative à Ansible. Si pyinfra ne dispose pas (encore) d’un nombre équivalent de modules à celui d’Ansible, il se distingue d’Ansible par le fait que les tâches ne sont pas décrites au format YAML mais sont du code Python. La version 3.0 résoud principalement les limitations de PyInfra 2.x sur son mode d’exécution en deux étapes (préparation puis exécution). A tester et à surveiller à défaut de pouvoir complètement remplacer des playbooks Ansible pour le moment…

Python

  • pylyzer : vous aimiez Ruff sur la partie linter, alors vous pourriez aimer pylyser sur la partie typage. Le projet est encore jeune et incomplet mais semble prometteur. Une extension VSCode est d’ailleurs disponible.
  • uv: Unified Python packaging : l’équipe Astral, celle derrière ruff semble bien avancer sur leur gestionnaire de packages pour python (mais codé en rust). Si la version précédente se concentrait sur le remplacement de pip, cette version va plus loin et vise poetry ou pdm voir pyenv en allant jusqu’à l’instalation de python en lui-même. En plus des apports fonctionnels, les performances semblent aussi être au rendez-vous. Peut-être encore un peu tôt pour migrer vos projets dessus mais définitivement à surveiller.

Sécurité

Rendez-vous à la fin du mois prochain pour une nouvelle édiiton.

Web, Ops, IoT et Time Series - Juin 2024

caddy reverse-proxy api https fastapi parquet postgres htmx python ruff queue lakehouse repository pattern warp10

API

Data

IoT

Python

  • SqlAlchemy 1.4 async ORM with FastAPI : en 2022, nous avions utilisé cet article comme base pour les projets FastAPI. Il couvrait de bout en bout ce que l’on attendait : SQLAlechmy, Alembic (migrations), Async et Tests. Le petit plus est sur le pattern du Repository, fort utile pour avoir une abstraction au dessus de la base de données.
  • Fast API — Repository Pattern and Service Layer : une version plus récente, rajoutant le concept de Service en plus de celui du Repository.
  • FastCRUD : Un meta-package qui vous embarque tout pour générer dynamiquement vos endpoints d’API sur la base de vos modèles de données.
  • FastHX, fastapi-htmx & Using HTMX with FastAPI : pour ceux qui veulent faire du FastAPI et du HTMX
  • FastUI : un projet de l’équipe de Pydantic pour générer des interfaces web à partir de votre code Python.
  • Summary of Major Changes Between Python Versions : Liste des principales évolutions et principaux apports d’une version majeure de Pytohn à une autre.
  • Adopt-Ruff : un outil pour trouver les règles Ruff que votre projet ne respecte pas encore en vue de pouvoir les ajouer au fur et à mesure.
  • Introduction to Polars : tout est dans le titre, une introduction à Polars.

Ops

  • Caddy 2.8.x (dernière version: 2.8.4 : quelques fonctionnalités supplémentaires au niveau de HTTP/3 ou des certificats, mais surtout un gros travail de nettoyage et de rationnalisation de code (dépendances dépréciées / non maintenues, etc).
  • Le projet Caddy-Docker-Proxy passe en version version 2.9.x en intégrant Caddy 2.8.

Time Series

Web

Web, Ops, IoT et Time Series - Mars 2024

python postgres warp10 datacontract golang psycopg ingestr mistral htmx http architecture organisation hacking

Code

Database

IA

Metadata

  • DataContracts et DataContract CLI : si le sujet du DataContract m’a plutôt fait pensé à l’architecte d’entreprise qui urbanie son système d’information, en regardant de plus près, je me dis que dans le cadre d’un usage d’API, en complément du modèle fourni par OpenAPI/Swagger, cela pourrait donner une profondeur d’analyse aux API.

Organisation

Outillage

Time Series

  • Warp 10 3.2 : une version corrective et l’annonce de l’arrivée prochaine du Trace Plugin. Ce plugin doit aiser le debug de votre code WarpScript. Il sera soumis à licence et évaluable sur la Sandbox.

Web

  • HTTP > Headers > Connection : vous voulez que votre serveur de destination ferme à coup sur la connection après vous avoir répondu dans le cadre d’un appel HTTP/1.1 ? Alors l’entête Connection: close est fait pour vous. La connection HTTP/1.1 est par défaut en mode keep-alive. Si vous avez des reverse proxy au milieu, cela peut éviter qu’il cherche à maintenir des connections ouvertes alors que cela n’a plus lieu d’être.
  • HTMX via Django REST Framework and Vue versus Django and HTMX: Pour ceux qui veulent l’interactivité de Javascript, mais sans faire du Javascript

Web, Ops, IoT et Time Series - Mars 2022

python asgi git grep docker zip cli django numérique rgpd privacy shield docker-compose dockerfile google analytics matomo fugue duckdb pandas sql

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

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

RGPD & Privacy Shield

1 2 3 4 5