CérénIT

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

Web, Ops, IoT et Time Series - Octobre 2024

nist password produit service client ux postgres ia data traefik best practice

Cette édition et les précédentes sont également disponibles sur substack Web, Ops, IoT & Time Series pour ceux qui préfèrent les emails ou la consommation via l’app Substack

Data

  • Field Notes, Early Fall 2024 Edition : billet résumant l’état de la data et de l’IA par Joe Reis autour de la hype IA Générative, le futur et les turpitudes d’OpenAI, la hype du moment et le décalage entre le marketing de la hype et la réalité de la pratique et des déploiements.

Database

  • PostgreSQL 17 : comme chaque année vers fin septembre, la sortie de la nouvelle version majeure de PostgreSQL. Pour être dans une version supportée, il vous faut donc utiliser une version 13+ de PostgreSQL. On notera des améliorations notamment sur la partie SQL/JSON, la réplication, les process de VACUUM.

Produit

  • Why You Need Product Engineers : Un “Product Engineer”, c’est un “Software Engineer” qui prend en compte l’UX client lorsqu’il code. Il ne se limite pas à l’implémentation technique.
  • La révolution industrielle du service client : leçons de la tech : Pour une entreprise industrielle, la vente s’arrête souvent à l’acte de vente du produit fabriqué alors que les sociétés tech (notamment avec le SaaS), ont compris que l’acte de vente n’était pas la fin mais le commencement de la relation et qu’il était important d’accompagner le client. Evolution nécessaire de faire émerger un département de l’expérience client (ou customer success management) qui couvre tout le cycle de la vente (avant-vente, vente, après-vente + marketing + communication) ; on pourrait même aller jusqu’à mettre le département qualité sous la houlette de cette nouvelle direction…

Ops

  • Traefik Proxy v3.2 - A Munster Release : Sortie de la version 3.2 du reverse proxy Traefik avec des améliorations coté gestion des certificats (Configuration Let’s Encrypt, CA personnalisés, etc), des améliorations de performance avec Fast Proxy pour les connections HTTP/1, le support de la Kubernetes Gateway API v1.2, le support IPv6 des midlewares, le support d’OpenTelemetry, etc.

Python

Sécurité

  • NIST proposes barring some of the most nonsensical password rules : les recommendations de mot de passe du NIST ont été mises à jour pour être plus modernes et pragmatiques avec un assouplissement sur les règles de complexité de mot de passe (et qui terminent sur un post-it sur l’écran quand on n’a pas de gestionnaire de mot de passe) et sur la fréquence de renouvellement des mots de passe (on peut ne pas renouveller sauf suspicion de compromission du mot de passe)

Web

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

Web, Ops, IoT et Time Series - Septembre 2024

valkey redis elasticsearch s3 postgres duckdb ibis pandas kestra

Cette édition et les précédentes sont également disponibles sur substack Web, Ops, IoT & Time Series pour ceux qui préfèrent les emails ou la consommation via l’app Substack

Cloud

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

Python

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

Web, Ops, IoT et Time Series - Aout 2024

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

Cette édition et les précédentes sont également disponibles sur substack Web, Ops, IoT & Time Series pour ceux qui préfèrent les emails ou la consommation via l’app Substack

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 - Juillet 2024

quickwit databricks snowflake merge request best practice vscode ia llm

Cette édition et les précédentes sont également disponibles sur substack Web, Ops, IoT & Time Series pour ceux qui préfèrent les emails ou la consommation via l’app Substack

Data

Dev

  • Review your own PRs : Exercice que je pratique sur mon propre code - si ça peut sembler fastidieux les premières fois, voir le code dans un autre contexte que son IDE favori permet de prendre du recul sur son code et de trouver pas mal de bugs ou de revoir l’architecture de son code. C’est d’ailleurs dans les critères d’admissibilité d’une MR chez nous - si le développeur n’a pas validé qu’il a relu sa MR dans Gitlab, alors je ne fais pas la revue.
  • A Bunch of Programming Advice I’d Give To Myself 15 Years Ago : de bonnes pratiques de développement à s’appliquer ou à appliquer à son équipe.
  • 2/6 | Exposing Malicious Extensions: Shocking Statistics from the VS Code Marketplace : vous allez regarder vos extensions VSCode différemment à partir de maintenant - le modèle se sécurité autour des extenions VSCode semble inexistant tant au niveau de la validation des extensions sur la marketplace que lors de leur exécution sur votre ordinateur 😱

IA

Bonnes vacances à tous et on se retoruve fin septembre ! 🏖️

Web, Ops, IoT et Time Series - Juin 2024

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

Cette édition et les précédentes sont également disponibles sur substack Web, Ops, IoT & Time Series pour ceux qui préfèrent les emails ou la consommation via l’app Substack

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

1 2 3 4 5