y ' a meme un
Blog perso
Tous les articles
Blog perso
Les Archives
L'intégralité des articles publiés sur le blog.
-
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. ...
-
08 Septembre 2026
Exceptions maison dans symfony
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... -
08 Septembre 2026
Php-imap avec webklex : quand symfony discute avec ta boîte mail (sans se prendre un rate limit)
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... -
08 Septembre 2026
Seelf : déployer simplement ses applications docker en auto-hébergement
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... -
07 Septembre 2026
Clover ou cobertura : quel rapport de couverture choisir avec phpunit et sonarqube ?
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... -
07 Septembre 2026
Proxmox firewall : on peut bloquer son datacenter sans faire gaffe ?
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 ... -
07 Septembre 2026
Proxmox : dompter le firewall de vos lxc comme un pro
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... -
05 Septembre 2026
Proxmox et le ballooning
Le ballooning sur Proxmox, c’est un peu comme ces matelas gonflables qu’on sort pour les invités : ça promet de l’espace, mais si on souffle trop fort, tout le monde finit par terre. Officiellement, c’est une technique pour optimiser la mémoire vive entre l’hôte et ses machines virtuelles (VM). Officieusement, c’est une danse délicate entre efficacité et catastrophe potentielle. Voyons quand ça va... -
Bon la on a un truc obscur, ./vendor/bin/php-parse. Ce petit binaire qui traîne dans vos projets Symfony comme un invité surprise à une soirée où personne ne sait vraiment pourquoi il est là. Pourtant, contrairement à certains outils de votre vendor/ qui ne servent qu’à gonfler votre composer.lock (je te regarde, symfony/polyfill-*), php-parse a une utilité bien réelle. Et non, ce n’est pas juste ...
-
04 Septembre 2026
Badges dans le readme : le bling-bling utile (ou pas) pour ton projet
Un README sans badges, c’est comme un burger sans fromage : techniquement comestible, mais où est passé le fun ? Les badges, ces petites pastilles colorées qui squattent le haut de ton fichier, servent à la fois de vitrine et de preuve sociale. Ils disent : « Regardez, mon projet est sérieux, il a des tests, il passe en CI, et oui, il est même couvert à 95% (enfin, presque) ». Mais attention, tous... -
Le problème ? Xdebug est activé par défaut dans bon nombre d’images Docker PHP officielles ou populaires. Pas parce que c’est une bonne idée, mais parce que c’est pratique. Enfin, soyons précis : les images PHP officielles ne l’installent pas directement, mais beaucoup d’images de développement, de templates Docker et de configurations maison le font. Une fois ajouté, il reste souvent activé en pe...
-
04 Septembre 2026
Sonarqube et le coverage en ci : le combat perdu d’avance ?
merveilleux des outils de qualité : celui où l’outil censé détecter les problèmes devient lui-même le principal problème de la journée. Et avec Symfony, on analyse quoi exactement ? Dans un projet Symfony, SonarQube peut rapidement se retrouver devant un joyeux mélange de contrôleurs, de services, d’entités Doctrine, de formulaires, de commandes, de migrations et de fichiers de configuration. Sans... -
04 Septembre 2026
Overdose de caféine : jusqu’où pousser le dev avant le coma éthylique version arabica ?
Le café est au développeur ce que l’huile est au moteur : un lubrifiant indispensable, mais qui finit par encrasser les pistons si on en abuse. Pourtant, dans l’imaginaire collectif, le dev en mode while(true) { drinkCoffee(); } est une figure héroïque, un guerrier des nuits blanches qui sacrifie son sommeil pour livrer une feature à temps. Mais à quel moment le boost se transforme-t-il en crash ?... -
Ah, Proxmox. Ce bijou de virtualisation qui nous fait gagner du temps… jusqu’à ce qu’on doive redimensionner un disque de VM et que l’interface nous laisse perplexes, comme un chat devant une porte fermée. Vous avez peut-être tenté votre chance dans le shell, en maudissant l’absence d’un bouton magique. Rassurez-vous, vous n’êtes pas seul·e. Mais oui, il y a une solution (ou plusieurs), et non, ce...
-
04 Septembre 2026
"ip route" sur mon serveur : le gps qui évite les bouchons
Vous avez déjà regardé votre serveur en vous demandant : "Mais comment diable les paquets trouvent-ils leur chemin dans ce bordel ?" C'est soit de la magie noire, soit l’œuvre d’un lutin caché dans votre rack, ou (en partie) grace à ip route, la commande qui fait office de GPS pour vos données. Sans elle, votre serveur serait aussi utile qu’une boussole dans l’espace. Le routage, histoire de pas e... -
Proxmox, c’est un peu le couteau suisse de la virtualisation : on peut tout faire, mais encore faut-il savoir quoi faire sans se planter. Entre les machines virtuelles (VM) et les conteneurs (LXC), le choix n’est pas toujours évident. Surtout quand on a déjà passé deux heures à configurer un iptables qui refuse obstinément de laisser passer le trafic. Alors, VM ou conteneur ? La, y a pas de répons...
-
03 Septembre 2026
Wordpress : le cms que tout le monde adore (et que je fuis sans remords)
Je vais parler de mon avis sur WordPress, si si... Ce bon vieux CMS qui fait vibrer la planète entière, du blogueur du dimanche au géant du e-commerce. Tout le monde l’utilise, tout le monde en parle, et pourtant, moi, je passe mon tour. Pas par snobisme, non. Juste parce que je n’ai pas envie de transpirer à chaque fois qu’une nouvelle CVE sort, ni de passer mes nuits à patcher des plugins douteu... -
Je me souviens du bug de l’an 2000. Ce bon vieux Y2K, ce cauchemar marketing qui a fait vendre des milliards en audits inutiles et en mises à jour de dernière minute. Les médias en ont fait un film catastrophe, les entreprises ont paniqué, et au final… rien. Ou presque. Quelques distributeurs de billets en panne, des horodateurs qui ont cru revenir en 1900, et c’est à peu près tout. La montagne a ...
-
02 Septembre 2026
L'ia va-t-elle nous transformer en développeurs ctrl+c / ctrl+v ?
L’IA générative est partout, et son pitch est imparable : « Gagnez du temps, écrivez moins de code, livrez plus vite. » On nous vend des outils qui génèrent des fonctions, corrigent des bugs, voire écrivent des applications entières à partir d’un prompt. Le rêve, non ? Sauf que derrière ce rêve se cache un cauchemar bien réel : et si, à force de déléguer l’écriture du code, on oubliait comment le ... -
02 Septembre 2026
Symfony veut apprendre à votre éditeur à comprendre votre application
Quand on développe avec Symfony dans VS Code, Zed ou Neovim, on finit facilement par oublier une chose : notre éditeur ne comprend pas réellement notre application. Il affiche du PHP, colore Twig, complète quelques méthodes et permet de faire un Ctrl+clic sur une classe. C’est déjà très pratique. Mais dès qu’on traverse la frontière entre PHP, Twig, Doctrine, les routes ou les services Symfony, ce... -
Symfony Reprise : Webpack Encore prépare doucement sa retraite Pendant des années, dès qu’un projet Symfony avait besoin d’un frontend un peu sérieux, la réponse était presque automatique : Webpack Encore. Quelques lignes dans webpack.config.js, un petit yarn encore dev et, après avoir téléchargé approximativement la moitié d’Internet dans node_modules, nous pouvions enfin afficher notre fichier C...
-
01 Septembre 2026
Deep agents : quand langchain dissèque claude code au lieu de le copier
Dans un monde où l’IA générative se résume souvent à un concours de copier-coller amélioré, LangChain vient de faire un truc qui mérite qu’on s’y arrête : au lieu de pondre une énième version de « ChatGPT mais en plus cher et avec une interface plus moche », ils ont pris le temps de comprendre ce qui rend Claude Code si efficace. Et surtout, ils ont partagé le résultat en open source. Ça s’appelle... -
01 Septembre 2026
Http-less : symfony sans httpkernel, ou comment réinventer la roue (mais en moins rond)
Symfony sans HttpKernel ? À première vue, c’est comme un burger sans pain : techniquement possible, mais est-ce que ça a encore du sens ? Pourtant, l’idée d’un Symfony « HTTP-less » fait son chemin, portée par des développeurs qui veulent s’affranchir des contraintes du web pour des usages en CLI, en queue de tâches, ou même en… microservices (oui, encore eux). Alors, révolution ou simple exercice... -
01 Septembre 2026
Deepcloner : le clonage en profondeur de graphes d’objets php qui ne vous fera pas pleurer
Cloner un objet en PHP, c’est un peu comme commander un café : en théorie, c’est simple, mais en pratique, ça peut vite tourner au cauchemar. Vous voulez un clone basique ? Parfait, PHP gère ça avec son opérateur éponyme. Mais dès que votre objet a des propriétés qui sont elles-mêmes des objets, ou pire, des références circulaires, vous vous retrouvez avec un sac de nœuds digne d’un casse-tête chi... -
01 Septembre 2026
Python : du langage abc oublié à la star des ia, une success story qui pique un peu
Python est partout. Dans les data centers qui font tourner les IA, dans les scripts qui automatisent nos vies, dans les notebooks des chercheurs, dans les Raspberry Pi qui contrôlent des trucs improbables, et dans les tutoriels qui promettent de vous rendre développeur en 21 jours (non). Pourtant, son histoire est moins lisse que son import this ne le laisse penser. Retour sur un langage né des le... -
01 Septembre 2026
Pacman vs apt : quand la simplicité bat la hype à plate couture
Aller on regarde un peu Arch Linux, LE système d’exploitation qui fait se sentir les développeurs comme des hackers dans un film des années 90. Le README qui commence par « Si tu ne sais pas ce que tu fais, dégage », les forums où on te répond « RTFM » avant même de te dire bonjour, et bien sûr, pacman, le gestionnaire de paquets qui semble conçu pour prouver que la vie est une série de défis inut... -
Il fut un temps où j’ai cru que Devilbox allait sauver mes projets PHP. Un outil tout-en-un, prêt à l’emploi, avec Apache, Nginx, MySQL, PHP, Redis, et tout le tintouin. Plus besoin de bidouiller des docker-compose.yml ou de maudire les permissions de fichiers. Juste docker-compose up, et hop : un environnement de développement clé en main. Sauf que, comme souvent avec les solutions magiques, la r...
-
Ah, Podman. Ce nom qui traîne dans les threads Reddit, les conférences DevOps et les slides des gens qui aiment bien dire qu’ils ont « migré ». Si tu utilises docker depuis des années sans te plaindre, tu te demandes peut-être pourquoi certains en font tout un plat. C’est pas juste pour le plaisir de réinventer la roue a mon avis, voyons ca... Podman, c’est quoi ? Un Docker en mieux ? Podman, c’es...
-
Imaginez : vous achetez un terrain vague en 1998, vous le laissez en friche pendant 25 ans, et un jour, un promoteur débarque pour vous proposer 500 000 € parce que le quartier est devenu hyper tendance. Sauf que dans le monde des noms de domaine, c’est exactement ce qui se passe. Sauf que le terrain, c’est un example.com, et que le promoteur, c’est un investisseur qui a soudainement réalisé que a...
-
Les multiplexeurs de terminal, (on pourrait dire terminaux nan ?) ces outils qui promettent de sauver nos âmes de développeurs condamnés à jongler entre 15 onglets de terminal, des logs qui défilent à la vitesse de la lumière, et cette fenêtre SSH qui plante au pire moment. Parmi eux, cmux se distingue, non pas parce qu’il réinvente la roue, mais parce qu’il la rend un peu plus ronde, un peu plus ...
-
30 Aout 2026
Cockpit & cockpit-machines : la gestion de vms qui ne vous fera pas regretter virt-manager
Si vous avez déjà passé plus de temps à configurer virt-manager qu’à utiliser vos machines virtuelles, vous savez que la virtualisation sous Linux peut parfois ressembler à un parcours du combattant. Entre les dépendances qui s’embrouillent, les interfaces graphiques qui laguent et les configurations XML dignes d’un roman de Kafka, on se demande parfois si c’est vraiment la peine. Heureusement, il... -
J’ai testé plus de terminaux Linux que je n’ai de doigts et d’orteils réunis. Certains m’ont séduit cinq minutes, d’autres m’ont fait perdre des heures à configurer des plugins pour reproduire ce que bash faisait déjà. Puis Herdr est arrivé, et j’ai enfin arrêté de chercher. Un terminal qui ne se prend pas pour un IDE Herdr assume son rôle : un terminal, point. Pas de panneau latéral avec des ongl...
-
24 Aout 2026
Powershell sur windows : le terminal qui divise, entre puissance et esthétique douteuse
PowerShell. Ce nom qui fait frémir les puristes du terminal Linux et sourire (ou grimacer) les utilisateurs Windows. Sur le papier, c’est le couteau suisse de Microsoft : un shell moderne, orienté objet, avec des commandes qui claquent comme Get-ChildItem au lieu du classique ls. Mais dans la vraie vie ? C’est un peu comme offrir un costume trois-pièces à un chat : techniquement, ça peut marcher, ... -
Installer des caméras de sécurité chez soi, c’est un peu comme adopter un chien de garde : ça doit aboyer quand il le faut, pas vous réveiller à 3h du mat’ parce qu’un écureuil a éternué dans le jardin. Et surtout, ça ne doit pas vous coûter un rein ou, pire, transformer votre salon en épisode de Black Mirror où votre propre matériel vous espionne. AliExpress : le Far West des caméras IP (ou comme...
-
24 Aout 2026
Log levels: debug, info, warning, error – pourquoi et comment les apps parlent toutes la même langue
Les logs, c’est comme les toilettes : tout le monde en a besoin, mais personne ne veut en parler. Pourtant, sans eux, votre application est un bateau sans gouvernail, un avion sans boîte noire, un chat sans vidéos de chats sur YouTube. Bref, c’est la loose. Parmi les rituels les plus sacrés du développement, il y a le choix des log levels. DEBUG, INFO, WARNING, ERROR : ces quatre cavaliers de l’ap... -
Les linters ces petits outils qui nous rappellent gentiment que notre code ressemble à un champ de bataille après une soirée trop arrosée. Ou du moins, c’est ce qu’ils devraient faire. Trop souvent, ils se contentent de grogner dans un coin, ignorés comme un TODO oublié depuis 2018. Pourtant, il existe une façon de leur donner du mordant : les faire échouer le build. Oui, vous avez bien lu. On par...
-
Ah, la détection d’objets en temps réel. Un sujet qui fait vibrer les développeurs comme un npm install qui plante à 99%. Entre les modèles qui promettent monts et merveilles et les solutions clés en main qui finissent en « bon, on fait comment maintenant ? », difficile de s’y retrouver. Aujourd’hui, on décortique le trio Yolov9 + Frigate + Coral USB : une stack qui sent bon l’edge computing, la v...
-
En 2026, choisir un DAW, c’est un peu comme choisir entre une voiture de sport allemande et une moto japonaise : l’une a des siècles de pedigree, des options à n’en plus finir et un prix qui fait tousser, l’autre est légère, modifiable à l’infini et vous laisse de l’argent pour acheter des plugins. Cubase, c’est la Mercedes de la production audio : solide, complète, et un peu ennuyeuse. Reaper, c’...
-
Alors, n8n ou Node-RED ? La question vous taraude depuis que votre boss a découvert le mot "automatisation" dans un podcast pour startups en mal de productivité. si vous cherchez un outil qui ne vous fera pas regretter d’avoir choisi l’informatique plutôt que la compta, la réponse n’est pas aussi évidente que le marketing des deux solutions voudrait vous le faire croire. Le pitch : deux outils, un...
-
Next.js a débarqué dans nos vies comme ce pote un peu trop enthousiaste qui veut absolument vous présenter son nouveau framework préféré. « Regarde, il fait tout ! SSR, SSG, ISR… Tu n’as plus à choisir ! » Sauf que, comme souvent, quand quelque chose promet de tout faire, on finit par se demander si ça ne fait pas tout… à moitié. SSR : le retour du serveur qui bosse (enfin) Le Server-Side Renderin...
-
Next.js, c’est un peu comme ce pote qui insiste pour t’aider à monter ton meuble Ikea. Au début, tu te dis : « Super, je vais gagner du temps ». Sauf qu’à la fin, tu réalises qu’il a vissé toutes les planches à l’envers, et que tu passes trois heures à tout démonter pour comprendre comment ça marche. Alors, Next.js, c’est facile ? Oui, si tu aimes les frameworks qui prennent les décisions à ta pla...
-
Ah, l’idempotence. Ce mot qui sonne comme une maladie rare ou un sortilège de Harry Potter, mais qui, en réalité, est juste un concept technique que tout le monde cite sans toujours bien le comprendre. Pourtant, dès qu’on parle d’APIs, de requêtes HTTP ou de résilience des systèmes, il finit par pointer son nez, comme un invité un peu trop collant à une soirée. Alors, c’est quoi cette fameuse idem...
-
20 Aout 2026
Vercel : le couteau suisse du frontend qui veut tout faire (mais pas pour tout le monde)
Si vous traînez un peu dans l’écosystème JavaScript ces derniers temps, vous avez forcément croisé Vercel. Partout. Dans les talks, les docs, les tweets de devs qui viennent de découvrir que git push pouvait déclencher un déploiement en 3 secondes. Bref, Vercel est devenu le nouveau jouet à la mode, celui qu’on vous vend comme la solution ultime pour tout héberger, du blog perso au SaaS monolithiq... -
20 Aout 2026
Laravel vs symfony : pourquoi choisir le framework qui pique les idées et le routing le plus lent ?
Ah, la guerre des frameworks PHP. D’un côté, Symfony, le vieux sage qui a tout vu, tout codé, et qui vous regarde avec mépris quand vous osez parler de @Route sans préciser le format YAML. De l’autre, Laravel, le petit nouveau qui a piqué les meilleurs jouets de Symfony, mais qui les a emballés dans du papier cadeau avec un smiley dessus. Et pourtant, malgré un routing qui fait pleurer les benchma... -
En 2026, le paysage des bases de données ressemble à un buffet à volonté où 90% des plats sont des variations de SELECT * FROM hype. Entre les promesses des bases vectorielles, les blockchains qui stockent des todo-lists, et les SGBD qui se vantent d'être « serverless » (traduction : « on a juste mis un proxy devant »), le développeur lambda a de quoi se sentir comme un enfant dans un magasin de b...
-
20 Aout 2026
Datetime → datetimeimmutable en php : l'immutabilité qui sauve vos données (et votre santé mentale)
Ah, les dates en PHP. Ce sujet qui fait frémir même les développeurs les plus aguerris. Entre les DateTime qui se modifient comme par magie et les bugs temporels qui apparaissent sans crier gare, on a parfois l'impression de jouer à la roulette russe avec son code. Et si je vous disais qu'il existe une solution simple, élégante, et surtout sûre pour éviter ces galères ? Bienvenue dans le monde mer... -
19 Aout 2026
Makefile + docker : parce que taper `docker-compose up -d --build` 42 fois par jour, c’est has been
Vous connaissez ce moment où vous tapez docker-compose up -d --build pour la énième fois de la journée, et que vos doigts commencent à développer une haine viscérale pour votre clavier ? Bienvenue dans le club. Heureusement, il existe une solution élégante, minimaliste et surtout drastiquement moins chiante : le Makefile. Non, ce n’est pas un retour en 1977, c’est juste une façon de remplacer vos ... -
18 Aout 2026
Pourquoi <?php declare(strict_types=1); est le garde du corps que ton code symfony mérite
Imaginez un monde où PHP ne transforme pas gentiment '42' en 42 quand ça lui chante, où null ne se faufile pas comme un ninja dans vos calculs, et où une fonction qui attend un int ne se retrouve pas avec une string parce qu’un dev a oublié de valider son input. Ce monde existe : il s’appelle declare(strict_types=1);. Et si vous ne l’utilisez pas dans vos projets Symfony, vous jouez avec le feu. O... -
Ta CI te fait des crises de larmes à chaque push ? Tes collègues te regardent avec ce mélange de pitié et de mépris quand ton build échoue pour la énième fois ? Respire. On a tous connu ça. Mais aujourd’hui, on va te donner les clés pour que tes commits soient aussi propres qu’un appartement après le passage de Marie Kondo – sauf que là, c’est ton code qui va étinceler. Le secret ? Un pre-commit h...
-
15 Aout 2026
Ripgrep : grep est mort, vive rg !
Ah, grep. Ce vénérable outil Unix qui a survécu à des décennies de révolutions technologiques, comme un vieux pull en laine troué mais toujours confortable. Sauf que, soyons honnêtes, il est lent, verbeux, et ses options ressemblent à un inventaire de magasin de bricolage des années 80. Heureusement, ripgrep (ou rg pour les intimes) est là pour lui botter les fesses, avec élégance et une rapidité ... -
Ah, les logs. Ces petits messages qui s’accumulent dans des fichiers obscurs, comme des post-it collés sur un frigo par un colocataire bordélique. Vous savez, ceux qui disent « Erreur 500 » sans jamais préciser pourquoi, ou « Tout va bien » alors que votre application vient de s’écraser comme un drone en panne de batterie. Si vous en êtes encore à utiliser error_log() ou, pire, var_dump() dans un ...
-
14 Aout 2026
Cross-origin-embedder-policy : le header qui veut sauver votre site (mais pas tout seul)
Ah, la sécurité web. Ce sujet qui fait briller les yeux des devs en réunion, entre deux slides PowerPoint sur les « bonnes pratiques » et un café tiède. Aujourd’hui, on parle d’un header qui monte, qui monte : Cross-Origin-Embedder-Policy (ou COEP pour les intimes). Un petit nom qui sonne comme une formule magique, mais qui, comme toute magie, a ses limites. Spoiler : ce n’est pas la solution ulti... -
Ah, les og:tags. Ces petites balises magiques qui promettent de transformer ton lien en une carte de visite clinquante sur les réseaux sociaux. Comme si un simple <meta property="og:image" content="mon-super-visuel.jpg" /> allait soudainement faire de ton article sur les meilleurs frameworks JavaScript en 2024 un phénomène viral. Spoiler : ça n’arrivera pas. Mais bon, autant comprendre à quoi ça s...
-
Ah, RoadRunner. Ce nom évoque soit un coyote déterminé à écraser un volatile, soit un outil PHP qui promet de transformer votre application Symfony en une bête de course. Spoiler : dans les deux cas, ça finit souvent en crash spectaculaire. Mais passons sur les métaphores animalières et parlons technique. Est-ce que RoadRunner vaut le coup pour un simple projet web Symfony ? Ou est-ce juste un mar...
-
Un homelab, c’est un terrain de jeu idéal pour expérimenter, mais aussi une cible potentielle pour les accès non autorisés. Plutôt que de multiplier les règles iptables ou de gérer des clés SSH à la main, une solution comme Warpgate permet de centraliser et sécuriser les connexions sans alourdir l’infrastructure. Voici pourquoi ce bastion transparent mérite une place dans votre setup.Un bastion sa...
-
Les modèles comme OpenCode ou Claude ne se contentent pas de générer du texte : leurs skills (compétences spécialisées) permettent d’automatiser des tâches techniques, d’analyser du code ou de résoudre des problèmes complexes. Voici pourquoi et comment les intégrer dans un workflow de développement.Pourquoi utiliser les skills ?Les skills offrent trois avantages clés :Précision : Contrairement à u...
-
05 Juillet 2026
Chatgpt vs claude : lequel choisir pour un usage quotidien ?
Les modèles d'IA conversationnelle comme ChatGPT et Claude sont désormais accessibles au grand public. Mais entre les deux, lequel répond le mieux aux besoins d'un utilisateur lambda ? Voici une analyse technique des différences et des points forts de chaque outil.Architecture et performances de baseChatGPT (OpenAI) repose sur la famille GPT, actuellement en version 4o pour la version gratuite. Cl... -
29 Juillet 2025
Mysql : comprendre root@% et root@localhost
-
22 Novembre 2023
L'importance de la reproduction des erreurs en développement
Introduction :Dans le monde du développement logiciel, la gestion et la résolution des bugs sont des aspects cruciaux pour le maintien de la qualité et de la fiabilité des applications. L'un des défis majeurs rencontrés par les équipes de développement est la reproduction fidèle des erreurs signalées. Cet article se penche sur l'importance de fournir aux développeurs les moyens de reproduire effic... -
20 Juin 2023
Comprendre et utiliser la bibliothèque php defer
La programmation est un domaine complexe qui nécessite une compréhension approfondie des concepts et des outils disponibles. Un de ces outils est la bibliothèque PHP Defer, qui permet d'intégrer la fonctionnalité "defer" de Golang dans le code PHP. Dans cet article, nous allons explorer en détail comment fonctionne cette bibliothèque et quand l'utiliser, avec de nombreux exemples pour faciliter la... -
Les Service Workers en JavaScript sont des actifs essentiels qui agissent comme des intermédiaires entre les navigateurs Web et les serveurs. Ils améliorent la fiabilité en fournissant un accès hors ligne et en augmentant les performances de la page. Dans cet article, nous allons explorer en détail ce qu'est un Service Worker, comment il fonctionne, et comment vous pouvez l'utiliser dans vos propr...
-
13 Juin 2023
L'api webassembly : un nouveau monde de possibilités
WebAssembly, souvent abrégé en WASM, est une technologie qui a révolutionné le développement web. Il s'agit d'un format de code binaire pour les machines virtuelles, conçu pour être un cible de compilation efficace pour les langages de haut niveau comme C, C++ et Rust, entre autres. L'API WebAssembly est l'interface qui permet aux développeurs d'interagir avec WebAssembly à partir de JavaScript. Q... -
19 Janvier 2023
Les unités de requêtes de conteneur css : comprendre leur fonctionnement et leur utilisation
Les unités de requêtes de conteneur CSS sont un outil puissant pour les développeurs web qui cherchent à améliorer l'expérience utilisateur en fonction de la taille de l'écran. Ces unités permettent de définir des règles CSS qui s'appliquent en fonction de la taille du conteneur, offrant ainsi une plus grande flexibilité dans la mise en page et la présentation des éléments sur un site web. Il est ... -
18 Janvier 2023
Webcodecs api : l'avenir de la compression vidéo en javascript
-
L'ImageCapture API est une fonctionnalité récente de JavaScript qui permet de capturer des images à partir d'un périphérique de capture d'images (comme une webcam) de manière simple et efficace. Il est compatible avec les dernières versions de la plupart des navigateurs, y compris Chrome, Firefox, Edge et Safari.
-
11 Avril 2019
Les petits avantages de la fonction list de php
Cette fonction n'est pas souvent utilisée et généralement on la comprend tout de suite lorsqu'on la croise dans son état le plus courant quand il s'agit d'assigner plusieurs variables en même temps depuis un tableau. Par exemple: list($a, $b, $c) = $array; Par contre ce n'est pas forcément simple dans tous les cas selon la syntaxe que vous utilisez. -
ProblèmeParfois, lors d'une fresh install de Symfony (ou autre) on peut se manger un retour de ce style dans le terminal : [GuzzleHttp\Exception\RequestException] cURL error 60: SSL certificate problem: unable to get local issuer certificate [GuzzleHttp\Ring\Exception\RingException] cURL error 60: SSL certificate problem: unable to get local issuer certificate Ça vous fait peur ? en fait c'est sim...
-
25 Mars 2017
Firefox - cette connexion n'est pas sécurisée. les identifiants saisis ici pourraient être compromis.
J'essaie de tenir mes logiciels à jour mais des fois je regretterais presque quand une maj me renvoie un comportement ennuyant sur un programme. Cette fois c'est Firefox qui m'affiche une bonne vieille notification à chaque fois que je m'approche d'un formulaire sur un protocole HTTP... C'est toujours pour la bonne cause hein puisque la on cherche à me prévenir que n'importe quel intermédiaire (FA... -
12 Septembre 2016
Wampserver 3 me renvoie vers un bon vieux 404 not found malgré une bonne configuration
Réglage de vhost J'ai rapidement besoin d'un vhost local qui pointe sur un dossier test, ça pouvait prendre 20 secondes mais ça m'a pris 20 minutes ! Je me suis pris des 404 not found dans les yeux ça m'a énervé gonflé bien saoulé ; bref.... Évidement je check les logs, rien qui déconne, la structure de mon vhost est toujours la même (je la copie d'un vhost a l'autre en fait^^) je me pose vraiment... -
07 Septembre 2016
Comment virer content_script.js (line 91) dans la console de firefox ?
J'étais tranquillement en train de me développer une petite application quand j'ai remarqué cette petite notification dans la console de mon Firebug.content script runtime.onMessage: update_shortcutscontent_script.js (line 91)<System>2 content script runtime.onMessage: tabupdatecontent_script.js (line 91)<System>J'avais déja vu ces lignes dans l'édition d'un vieux projet quelques jours avant, mais... -
Envoie de fichier trop gros ?En essayant d'envoyer des fichiers sur mon serveur, mon client me dit que parfois ça marche bien, et parfois ça plante gentiment, avec une petite erreur comme celle ci :"The uploaded file was too large. Please try to upload a smaller file"Du coup, je me dis qu'en augmentant un peu le upload_max_filesize du php.ini, ça va le faire... Mais en fait ça n'a pas suffi.
-
11 Octobre 2015
Php non exécuté sur serveur apache avec ubuntu
Je vois votre intérieur !En voulant installer une config apache un peu trop rapidement, j'ai rencontré un petit souci. Mon code source php n'était pas exécuté. Il était retourné comme un CTRL+U sur une page web... Pourtant la commande php -v me montre PHP est installé correctement... Du coup je vais chercher un peu sur Qwant et en fait j'avais mal installé une librairie qui s'installe en temps que... -
10 Octobre 2015
Ajouter extension php zend opcache dans wamp
-
Configurer le watcher de Phpstorm pour le SCSS avec CompassEn principe quand je suis sur du frontend et que j'envoie des grands coups de SCSS, j'ouvre un terminal dans le fichier qui va bien et je lance un bon vieux compass watch. Mais a force de voir PhpStorm me dire que si j'ai envie je peux, utiliser un watcher embarqué, je me suis dit que c'était pas beaucoup plus con. Par contre j'ai eu un pe...
-
03 Octobre 2015
Concaténer une variable et une chaine dans le scss avec compass
J'étais en train de bricoler un vieux CSS lorsque je me suis rendu compte que je pourrais bien optimiser mon SCSS en plaçant quelques valeurs dans des variables histoire de pas passer 15 minutes à chercher ou je dois les modifier lorsque j'ai besoin de faire une refonte compulsive. Et puis c'est quand même mieux, notamment pour pouvoir aller plus loin dans la puissance du frontend ou un truc dans ... -
Nan mais allo Houston quoi !J'étais tranquillement en train de bricoler des petites applications simples quand j'ai eu besoin d'automatiser quelques trucs sur des CSS etc, donc je me dis Gulp... Je lance ma commande d'installation etc et tout fonctionne bien sauf qu'une fois fini, lorsque j'ai eu envie de tout virer, impossible ! Il y avait trop de dossiers récursifs et Windows ne comprenait plus ...
-
13 Juin 2015
Virer la notification obtenir windows 10
Cherchez l'intrus...Si vous aussi vous utilisez un peu Windows 7 pour jouer ou utiliser toshop', vous avez surement eu le petit logo Windows en bas a droite avec les notifications, qui vous propose d'obtenir Windows 10... C'est super sympa de venir incruster ça ici sans rien me demander, merci beaucoup. J'envoie un bon vieux clic droit sur cette nouveauté, pour "quitter" ou "fermer" ou je ne sait ... -
31 Mai 2015
Symfony2 - vérifier l’existence d'une route
-
21 Decembre 2014
Mes petits trucs, astuces et pense-bête de symfony 2.x
Savoir si on est en mode DEV dans un contrôleurPour connaitre l’environnement en cours dans un contrôleur on peut utiliser : $this->container->getParameter('kernel.environment'); Ensuite il y a juste à mettre ça dans un if pour vérifier que le retour est bien égal à dev... Récupérer le jeton CSRF dans un formulaire construit à la mainDes fois on crée nos formulaires à la main et on oublie de rajou... -
24 Juillet 2014
Les mauvaises excuses pour ne pas utiliser git
GIT est partout ! Aujourd'hui, vous aurez du mal à trouver un développeur professionnel qui n'utilise pas un système de contrôle de version (VCS), comme Git, mais il y a encore une partie d'entre nous qui choisissent de ne pas utiliser de VCS à cause de certaines idées préconçues qu'ils pourraient avoir au sujet du contrôle de version. Voici quelques excuses qui dissuadent l'utilisation de Git che... -
scponly? C'est quoi cette dépendance au juste ? scponly est en quelques sortes une alternative pour les administrateurs système qui souhaitent fournir un accès aux utilisateurs distants pour à la fois lire et écrire des fichiers sur votre machine, ici un simple RaspberryPi sans fournir de privilèges d'exécution à distance. Pour faire simple on peut dire que c'est une sorte de ssh bricolé qui perme...
-
Fichiers cachés Par défaut Netbeans cache tous les fichiers qui commencent par un point à l'exception du fichier .htaccess, donc si vous utilisez git vous allez rencontrer le même problème que moi, votre fichier .gitignore ne sera pas affiché dans l'arbo de Netbeans. C'est un peu le bordel d'aller chercher son fichier dans le dossier puis de le faire glisser vers l'IDE pour pouvoir l'éditer.
-
28 Fevrier 2014
Configurer netbeans pour les recommandations php psr-2 du framework interoperability group
Lapidation en ligneIl y a quelques jours j’ai eu besoin d’un coup de main en développement et comme je n’avais pas trop de retours concluants sur les forums j’ai été harceler les copains pour avoir de l’aide, ...à peu près sur la totalité des chans freenode. Après voir posté un petit pastebin qui va bien pour expliquer en détails l’endroit précis ou j’étais coincé, j’ai entendu les gars tousser… N... -
13 Decembre 2013
Verifier si on est sur le dernier element d'un tableau php
On est à la fin ou pas la ? J'ai eu un petit bug lors d'un dev php pourtant banal, qui m'a posé un petit souci, le temps de comprendre ma boulette. Bon j'ai pas passé la nuit dessus non plus mais la chose est tellement simple qu'elle en devient vicieuse et on peut vite se laisser prendre au piège. Je simplifie la musique puisque le but n'est pas de savoir ce que je voulais faire de ce tableau... J... -
22 Octobre 2013
Générer du faux texte dynamiquement avec l'api bacon ipsum
Créer dynamiquement des articles avec du faux texte Je viens d'avoir des faux articles à créer, avec du faux texte en pagaille, pour voir un peu à quoi ressemblerait un blog une fois rempli. J'avais pour habitude d'aller copier mes paragraphes sur des sites basiques comme lipsum.com ou un peu plus modernes comme fillerati.com ou picksumipsum, et de revenir les coller dans mon champ texte à chaque ... -
12 Juillet 2013
Proteger votre adresse mail des spammeurs grace à une astuce css
Cacher votre adresse mail via CSS En utilisant une petite supercherie CSS de vieux roublard des cavernes, vous pouvez cacher complètement votre adresse e-mail des spammeurs. L'inconvénient de cette approche est qu'elle ne fonctionne que sur les sites qui lisent de gauche à droite car il utilise les CSS pour inverser le sens du texte. Mais bon, ça tombe bien c'est dans ce sens la que j'écris ! Alor... -
Composer.phar est bien relou mon ami Bon alors la, ca va pas ! J'upgrade mon Framework préféré (Symfony) et sans parler des bugs que j'ai résolu rapidement, j'ai plus moyen de générer une entité sans avoir un beau message d'erreur ! You are going to generate a "MsgMsgBundle:ducon" Doctrine2 entity using the "annotation" format. Do you confirm generation [yes]? Entity generation PHP Fatal error: Ca...
-
Comme beaucoup de gens qui travaillent avec Symfony2, j'utilise parfois le célèbre bundle FosUserBundle pour gérer les membres de mes sites web. Pas toujours bien sur, car je me suis fait le mien et il fonctionne à peu près aussi bien pour les grosses lignes ; cela dit, des fois, c'est comme ça, je passe quand même par FosUserBundle. Ca fonctionne bien, c'est vite configuré, mon code est maintenab...
-
Quand on trimballe un bundle qu'on aime bien d'un projet à un autre, il est parfois assez pénible de devoir modifier ses vues pour pouvoir les faire pointer sur les layouts du projet en cours. Prenons pour exemple mon userbundle perso. Il est super léger, il gère ce que j'ai besoin de gérer, je n'ai pas peur de mettre les mains dedans et d'adapter au cas par cas si besoin. Je le connais par cœur, ...
-
21 Mars 2013
Quelques outils css3 utiles
Quelques outils CSS3 très utiles Oui bon, ok, je l'admet, je n'arrive jamais à me rappeler de toutes les déclarations différentes et de toutes les syntaxes pour l'ensemble des effets CSS ! Voila c'est dit, mais a mon avis je ne suis pas le seul dans ce cas, hein ? Je me suis fait un petit bookmark qui va bien pour toujours avoir quelques outils indispensables sous la main, en voici quelque uns. -
21 Mars 2013
Les filtres d'image css3 de chrome
-
03 Fevrier 2013
Enlever les notifications sonores de facebook
Si vous aussi vous avez remarqué que Facebook s'est mis a vous notifier les tympans à chaque fois qu'il se passe quelque chose quelque part chez vos amis ou dans le monde (notifications), alors vous êtes au bon endroit. Quelle mauvaise idée quand même de rendre notre expérience de ce réseau social intrusif aussi pénible par défaut. Certains aiment ça ? Ces "pop" ... "pop" .. "pop" toutes les 45 se... -
Quand le lecteur d'une news veut sélectionner l'URL d'une page il a bien sur la possibilité de coller directement l'adresse dans le navigateur mais on peut aussi l'afficher pour lui dans une vue quand c'est pour partager l'URL d'une image ou d'un fichier quelconque par exemple. Il n'y a malheureusement pas de fonction toute faite pour cette tache incroyablement exotique (malgré les nombreuses requ...
-
24 Janvier 2013
Requetes sql natives avec doctrine
Il se peut parfois que pour une bonne raison personnelle on refuse d'utiliser le QueryBuilder de Doctrine dans un projet Symfony2.X à la faveur d'une requête native. C'est souvent injustifié car au fil du temps on s’aperçoit qu'on pouvait faire autrement en grattant un peu dans la doc. Hélas des fois on a pas la tête à lire/traduire et on regrette nos bonnes vieilles requêtes maison, si claires à ... -
04 Janvier 2013
Newmanity, un réseau social écolo
Connaissez-vous le nouveau réseau social Newmanity ? Cela fait à présent deux jours que je m'y suis inscrit et il est temps de livrer mes premières impressions sur ce réseau social un peu nouveau. Qu'est ce que Newmanity ? Créé par Victor Ferreira (le fondateur du label Max Havelaar), Newmanity est un réseau social d'un nouveau genre. D'après son créateur, l'objectif de Newmanity est d'offrir un e... -
01 Janvier 2013
Valider une adresse email avec php
Un petit article pour indiquer qu'il est très simple de valider les adresse mails saisies par un utilisateur lors d'une inscription à une section membre par exemple. C'est une question qui revient assez souvent sur les forums les plus populaires malgré le nombre d'informations qu'on peut trouver la dessus. Hélas souvent on trouve pas mal de regex de tous genres dans les réponses, qui se valent plu... -
19 Decembre 2012
Verrouiller un fichier avec php
On peut avoir besoin de verrouiller des fichiers dans le cas ou on aurait besoin d'écrire à l'intérieur assez souvent, comme pour un petit script de comptage de visiteurs ou un truc comme ça, ou plusieurs instances serveur pourraient être amenées à faire ce boulot d'ouverture écriture à un moment unique, ce qui planterait le script en question. Une fonction native nommée flock() existe mais elle n... -
12 Decembre 2012
Empêcher l'indexation d'une page dans tous les moteurs de recherche
L'autre jour j'ai enregistré un article pour tester mon blog en prod, ça marchais nickel mais il me fallait du contenu pour tester mon SEO vite fait, et pour éviter qu'on arrive sur un blog vide, je l'ai laissé le temps de finir quelques bricoles. Le problème c'est que cet article sur Kim Dotcom, je n'en ai plus besoin, mais trop tard il est passé dans le crawl du moteur de recherche et a été inde... -
07 Decembre 2012
Sauvegarder une image depuis une url en utilisant php
On a tous un jour eu la bonne idée de chopper une image sur le site d'un autre type, pour un design ou pour un article ou pour illustrer n'importe quoi d'autre (par exemple) , bon osef :) Et du coup ce même jour (un peu plus tard), on s'est dit qu'on pourrait surement aussi aller chercher ce fichier image depuis une URL, pour par exemple, automatiser la chose ou que sais je encore... -
06 Decembre 2012
Des conditions dans un switch en php
-
14 Novembre 2012
Racourcir une chaine [script php]
-
09 Novembre 2012
Scroll vers une ancre interne (avec jquery)
Quand on veut se rendre sur une ancre interne avec un simple lien HTML c'est assez simple, il suffit de faire pointer l'attribut href du lien en question vers l'id de l'élément vers lequel on souhaite se rendre en le préfixant de # . Rien de bien sorcier mais bon avec un petit exemple c'est bien aussi : <a href="#contact" title="Vers élément contact">lien vers l'élément contact</a> <p>... du conte... -
09 Novembre 2012
Configuration basique de la sécurité symfony2
Comme souvent, le backoffice de votre plus beau site web se trouve derrière une page de login qui vous demande un couple identifiant et mot de passe pour vous laisser passer vers la page du seigneur, celle qui vous donne l'accès au saint Graal, l'index de l'administration. Si tout le monde avait accès aux interfaces admin je pense que ça serait drole quelques minutes mais nous on a pas trop envie ... -
31 Octobre 2012
Commandes sympas pour access.log
Dans un esprit de contrôle rapide de ses entrées access.log on a parfois besoin ou envie de faire un petit classement rapide des IP récurrentes, ou de savoir qui hotlink nos image comme un voleur, ou que sais-je... voici une petite liste de méthodes pratiques et sans prétentions que j'utilise pour faire le chaud. -
31 Octobre 2012
Parser rapidement ses logs apache avec awk
Le programme Awk est très complet et peut s'avérer complexe a maîtriser. Le but ici est surtout d'utiliser sa puissance et sa rapidité pour faire un tri grossier lors des vérifications de logs. Ces derniers fichiers sont parfois assez conséquents et les parser a l'oeil reviendrait a chercher un hétéro (analement vierge) dans une gay pride....