y ' a même un
Blog perso #2

star

Le Blog

Articles, tutoriels et réflexions sur le développement web, les bases vectorielles, le RAG et les nouvelles technologies.

  • Vllm et le sleep mode : une sieste qui tourne au cauchemar ?

    vLLM et le sleep mode
    Quand on commence à faire tourner plusieurs modèles sur une grosse carte GPU, on tombe assez vite sur un problème un peu idiot : un modèle chargé par vLLM peut monopoliser plusieurs dizaines de gigaoctets de VRAM alors qu'il ne fait absolument rien. Sur une carte de 24 Go, ce n'est déjà pas très amusant. Sur une carte de 96 Go utilisée pour faire tourner plusieurs LLM, ComfyUI et quelques autres j...
  • Créer un "crud api rest" minimaliste avec node.js

    CRUD API REST minimaliste
    Cette fois j'ai juste besoin d’une API qui fait le job sans se prendre la tête avec des frameworks surdimensionnés ou des architectures dignes d’un projet de la NASA, voici comment créer une petite API REST avec Node.js pur. Quelques routes CRUD, un stockage en mémoire simpliste, et zéro dépendance superflue. Le tout dans un seul petit fichier JavaScript. Oui, c’est possible. Non, ce n’est pas une...
  • Symfony et vitest : le duo improbable qui teste ton js

    Symfony et Vitest
    Symfony et JavaScript, c’est un peu comme un couple de colocataires qui s’entendent bien… mais qui ne partagent pas le même frigo. D’un côté, ton backend PHP, structuré, mature, avec ses bonnes pratiques et ses bin/console qui te sauvent la mise. De l’autre, ton frontend JS, ce farfadet capricieux qui change d’avis sur son framework préféré tous les six mois. Et entre les deux, il faut bien faire ...
  • Proxmox et le trim : quand vos vms jouent à cache-cache avec l’espace disque

    Illustration en plongée d'un bureau technique organisé avec un serveur géant sur une balance affichant 45 tonnes, style croquis encre et aquarelle sobre et moderne.
    Vous créez une VM sous Proxmox, vous y balancez des données comme un enfant qui remplit son cartable de cailloux, puis vous supprimez tout en vous disant que l’espace va miraculeusement réapparaître. et non! Le fichier QCOW2 de votre VM reste aussi gonflé qu’un chat qui a avalé un ballon, et Proxmox vous regarde avec des yeux ronds en se demandant pourquoi son stockage fond comme neige au soleil. ...
  • Exceptions maison dans symfony

    Illustration isométrique minimaliste d'un atelier technique où des hommes en maillots 'RuntimeException' entourent un seul homme en maillot 'CustomException', ambiance sobre et moderne.
    Les exceptions, ces petits messages d’erreur qui vous rappellent avec une élégance toute relative, que votre code a décidé de prendre des vacances sans prévenir. Dans Symfony, comme dans beaucoup de frameworks, on a tendance à se reposer sur des exceptions génériques comme RuntimeException. Après tout, pourquoi se fatiguer à créer ses propres classes quand une bonne vieille throw new RuntimeExcept...
  • Php-imap avec webklex : quand symfony discute avec ta boîte mail (sans se prendre un rate limit)

    PHP-IMAP avec Webklex
    Parce que oui, en 2026, on a toujours besoin de lire des mails depuis du code. Pas pour envoyer des newsletters à la chaîne (on a Mailer pour ça, merci bien), mais pour automatiser des tâches chiantes : trier des tickets, archiver des factures, ou même répondre à des demandes de support comme un robot bien élevé. Le problème ? L’IMAP, c’est un peu comme le SQL des années 90 : puissant, mais bordél...
  • Seelf : déployer simplement ses applications docker en auto-hébergement

    Seelf: Self-Hosting
    L’auto-hébergement, sur le papier, c’est formidable. On garde ses données chez soi, on contrôle ses services et on ne dépend pas d’une plateforme qui peut doubler ses tarifs ou supprimer une fonctionnalité du jour au lendemain. Dans la pratique, cela signifie aussi passer son dimanche à comprendre pourquoi un conteneur ne démarre plus alors qu’on n’a, bien entendu, absolument rien touché. Seelf es...
  • Clover ou cobertura : quel rapport de couverture choisir avec phpunit et sonarqube ?

    Illustration isométrique minimaliste d'un espace de travail technique montrant des fichiers XML Clover et Cobertura pour le coverage de code, avec une grille 3D et un éditeur de code en arrière-plan.
    Les fichiers de couverture de code, ces petits artefacts XML qui font briller les yeux des devs en quête de métriques parfaites, et qui transforment les dashboards SonarQube en tableaux de bord dignes d’un cockpit d’Airbus. Aujourd’hui, on parle de deux formats stars de PHPUnit : coverage-clover.xml et coverage-cobertura.xml. Aucun des deux ne va vous faire gagner le prix Nobel de l’innovation, ma...
  • Proxmox firewall : on peut bloquer son datacenter sans faire gaffe ?

    Illustration à l'encre et aquarelle d'un rack serveur Proxmox sécurisé par un firewall, avec des libellés techniques et une ambiance sobre et professionnelle, style croquis moderne.
    Le firewall de Proxmox peut s’appliquer au niveau du Datacenter, du nœud et de chaque VM ou conteneur. Cette organisation permet un filtrage précis, mais aussi de perdre complètement l’accès à l’interface web et à SSH si une politique DROP est activée au mauvais endroit. Le piège de la politique DROP globale Activer le firewall au niveau du Datacenter avec une politique d’entrée DROP peut bloquer ...
  • Proxmox : dompter le firewall de vos lxc comme un pro

    Proxmox : dompter le firewall de vos LXC
    Parmi les fonctionnalités de Proxmox, la gestion du firewall pour les conteneurs LXC est souvent perçue comme un casse-tête. Pourtant, une fois qu’on a compris la logique (et évité les pièges), c’est presque aussi simple que de configurer un routeur grand public. Presque. Pourquoi s’embêter avec le firewall des LXC ? Par défaut, un conteneur LXC sous Proxmox hérite des règles du firewall de l’hôte...