{"person":"Benoit Masson","total":9,"slots":[{"jour":"Mercredi","date":"2026-06-24","horaire":"13h30-15h45","mission":"Surveillance salle","lieu":"Amphi E","benevoles":["Benoit Masson","Hermann NSOUNGA","Seow Chin Ong Quemerais"],"nb_benevoles":3,"date_fr":"24/06/2026","talks":[{"title":"Karpenter * Keda : Le duo gagnant du FinOps","speaker":"Sebastien Fourreau, Guillaume Membré","summary":"La gestion des coûts est un enjeu majeur sur les plateformes Cloud. Sans une approche rigoureuse, l’élasticité et la flexibilité promises peuvent rapidement se transformer en dépenses imprévisibles. RCA utilise le service managé Kubernetes EKS d’AWS. Afin de gérer les variations de charge des applications, nous avons déployé KEDA pour ajuster automatiquement le nombre d’instances en fonction de l’activité des utilisateurs et des périodes de la journée. Dans une optique FinOps, le dimensionnement des nœuds est optimisé via Karpenter, garantissant ainsi une adéquation au plus juste entre les ressources allouées et les besoins des applications. En combinant ces solutions avec une stratégie hybride de facturation avec des instances Spot et des instances réservées en fonction des environnements, nous maximisons l’efficacité tout en réduisant les coûts. Lors de cette présentation, nous vous partagerons nos astuces et nos difficultés sur l'intégration de ces outils sur AWS dans une approche FinOps.","room":"Amphi E","start_time":"2026-06-24T13:30:00","end_time":"2026-06-24T14:25:00","start_fr":"13h30","end_fr":"14h25","url":"https://www.breizhcamp.org/programme/session/1171108"},{"title":"Retour d'expérience - La quête du homelab parfait","speaker":"Mathieu Vincent","summary":"GAFAM, dépendance, données personnelles livrées au plus offrant ; Bienvenue dans la matrice. Moi, j'ai choisi la pilule rouge. Une idée, beaucoup d'huile de coude. Et quelques mois plus tard : une infra déclarative, résiliente, indépendante, qui m'appartient vraiment et qui respecte mes données. Apprendre, mettre les mains dans le cambouis, construire une base pour de futurs projets ou sortir de la matrice... Les raisons sont nombreuses pour se lancer dans le self-hosting. Pour ma part, c'était un peu tout à la fois ! Que vous soyez dev curieux ou ops en quête d'un terrain de jeu personnel. Refaites avec moi tout le chemin pour passer (après maintes soirées debug et autres prises de tête) d'une idée pas si farfelue à une infra redondante, observable, sécurisée, avec une dizaine de services en production. Le genre d'architecture qu'on retrouverait en entreprise. Au programme : virtualisation avec Proxmox, orchestration avec Kubernetes, Talos et ClusterAPI, GitOps avec ArgoCD et Gitlab, IaC avec OpenTofu, gestion des secrets avec SOPS et Infisical, OS immutables avec NixOS et CoreOS. Et une touche de loki et grafana pour lier le tout. Vous repartirez avec le fruit de mes tentatives, apprentissages et galères. Tout ce qu'il faut pour démarrer votre propre homelab cloud-native ; Et je l'espère, l'envie de vous lancer dans cette aventure aussi passionnante qu'elle est pleine d'embûches !","room":"Amphi E","start_time":"2026-06-24T14:30:00","end_time":"2026-06-24T15:25:00","start_fr":"14h30","end_fr":"15h25","url":"https://www.breizhcamp.org/programme/session/1182027"}]},{"jour":"Mercredi","date":"2026-06-24","horaire":"15h45-18h","mission":"Surveillance salle","lieu":"Amphi B","benevoles":["Benoit Masson","Quentin Liso","Mélanie Gueguen"],"nb_benevoles":3,"date_fr":"24/06/2026","talks":[{"title":"Arrêtez de miser sur vos Tests Unitaires !","speaker":"Jean-Michel Leclercq","summary":"Vous en avez assez de voir vos Tests Unitaires passer... alors que votre application plante en production ? Fatigué de devoir adapter des dizaines de mocks à chaque refactorisation ? Il est temps de passer aux Tests d'Intégration ! Dans ce codelab, nous explorerons comment tester efficacement une application Spring Boot en simulant les dépendances externes : * WireMock pour simuler vos appels API, * Testcontainers pour tester une vraie base de données dans un environnement isolé, * LocalStack pour reproduire vos intégrations AWS. Repartez avec une application plus robuste, des tests plus fiables… et moins de surprises en production !","room":"Amphi B","start_time":"2026-06-24T16:00:00","end_time":"2026-06-24T18:00:00","start_fr":"16h00","end_fr":"18h00","url":"https://www.breizhcamp.org/programme/session/1180523"}]},{"jour":"Jeudi","date":"2026-06-25","horaire":"8h45-10h15","mission":"Amphi principal (D) Retransmission","lieu":"","benevoles":["Benoit Masson","Brendan Abolivier","Malo Godin"],"nb_benevoles":3,"date_fr":"25/06/2026","talks":[]},{"jour":"Jeudi","date":"2026-06-25","horaire":"10h30-12h30","mission":"Surveillance salle","lieu":"Amphi C (principal)","benevoles":["Benoit Masson","Frederic Penel","François Eoche"],"nb_benevoles":3,"date_fr":"25/06/2026","talks":[{"title":"HTMX, de manière simplix !","speaker":"Thomas Labarussias, Stéphane Trebel","summary":"**Résumé**: On a beaucoup parlé d'HTMX, maintenant, il serait temps de s'y mettre. Et c'est exactement ce que Thomas et moi avons fait ! Nous nous sommes mis à la place d'une équipe technique qui décide d'effectuer une migration d'une application SPA (React, Angular, etc.) vers une \"Hypermedia Driven Application\", grâce à HTMX (https://htmx.org) ! **À qui ça s'adresse**: À qui s'intéresse au développement Web, aux frameworks FrontEnd, ou bien au contraire qui avait fait une croix sur tout ça parce que \"c'est devenu trop compliqué\". Bonne nouvelle ! Non seulement ça ne l'est pas, mais en plus on va vous expliquer pourquoi ! **Plan**: - On part d'un exemple concret, un bon vieux CRUD implémenté en React (https://github.com/mutoe/preact-realworld-example-app), et on migre progressivement ce paradigme SPA+JSON vers une version HDA+HTMX - Point de ToDo-List simpliste ici, on va prendre un vrai cas métier: un clone de Medium, le site de gestion/publication d'articles de blog : https://realworld-docs.netlify.app/ - Comment qu'on migre ? Graduellement ! On va Jouer sur le Content-Type pour renvoyer soit du JSON, soit du HTML, ce qui nous permettra de jouer sur les deux tableaux afin de comparer les deux approches. On prendra donc un ensemble de composants plus ou moins complexes pour les convertir. - À chaque étape, on aborde un aspect du développement Web et ses conséquences : SPA vs HDA, WebComponents, la gestion des APIs des \"Back-For-Front\" et la transition JSON->HTML - La grande force des SPA, ce sont leurs composants \"réactifs\". Voyons comment on a fait la même chose avec https://lit.dev/ pour créer des WebComponents équivalents, notamment grâce à HTMX","room":"Amphi C","start_time":"2026-06-25T10:30:00","end_time":"2026-06-25T11:25:00","start_fr":"10h30","end_fr":"11h25","url":"https://www.breizhcamp.org/programme/session/1141303"},{"title":"Tests d’UI : rendre la qualité accessible à toute l’équipe","speaker":"Manon Carbonnel","summary":"Les tests d’UI sont souvent réservés aux spécialistes du front-end, tant ils semblent dépendre du DOM, des sélecteurs et de détails d’implémentation. Dans des architectures modernes (micro-services, micro-frontends, systèmes distribués) cette séparation devient rapidement un frein à la qualité logicielle. À partir d’un retour d’expérience client, je propose d’aborder les tests d’UI sous l’angle du craft : comme une pratique de conception à part entière, au service de la lisibilité, de la robustesse et de la coopération. J’explorerai les freins classiques à l’écriture de tests end-to-end efficaces (parcours utilisateurs multiples, évolutions fréquentes de l’interface, difficulté à choisir quoi tester) et montrerai comment le design des tests, appuyé sur des patterns d’architecture, permet de rendre la qualité accessible à toute l’équipe, y compris aux développeur·ses backend. Enfin, à travers une démonstration avec Playwright, je montrerai comment un outil avec une developer experience pensée pour les tests facilite l’adoption de ces pratiques : API expressives, feedback rapide, outils de debug intégrés. Je vous montrerai également comment ces tests automatisés peuvent aussi favoriser l’accessibilité.","room":"Amphi C","start_time":"2026-06-25T11:30:00","end_time":"2026-06-25T12:25:00","start_fr":"11h30","end_fr":"12h25","url":"https://www.breizhcamp.org/programme/session/1139629"}]},{"jour":"Jeudi","date":"2026-06-25","horaire":"13h30-15h45","mission":"Surveillance salle","lieu":"Amphi D","benevoles":["Gaël Salaün","Benoit Masson","Théo Blandin"],"nb_benevoles":3,"date_fr":"25/06/2026","talks":[{"title":"1BRC avec Node.js : Au-delà de l'Event Loop","speaker":"Yoann Breton","summary":"Le \"1 Billion Row Challenge\" a poussé Java dans ses derniers retranchements. Mais Node.js, souvent réduit à son rôle \"single-threaded\", a-t-il les épaules pour relever ce défi ? Je vous propose un voyage au cœur de la compréhension du runtime. Nous partirons d'une implémentation naïve pour la reconstruire brique par brique. Au programme : éviter le Garbage Collector, maîtriser le Zero-Allocation, et orchestrer Worker Threads et Shared Memory ou encore utiliser WebAssembly. Venez découvrir comment transformer du JavaScript classique en une solution haute performance, grâce à des concepts applicables bien au-delà de ce challenge.","room":"Amphi D","start_time":"2026-06-25T13:30:00","end_time":"2026-06-25T14:25:00","start_fr":"13h30","end_fr":"14h25","url":"https://www.breizhcamp.org/programme/session/1181562"},{"title":"Développer un moteur de règle en 50 minutes, l'AST à la rescousse","speaker":"Maxime Odye","summary":"Cette conférence est issue d'une histoire vraie, où j'ai du écrire un moteur de règles qui doit pouvoir modifier le contenu d'un document JSON en utilisant un DSL maison 🍜 exposé par une API REST 😅 Lors de la première tentative, nous étions parti sur l'utilisation du langage Kotlin, à base de KFunction, de KParameters, d'introspection, qui s'est révélée être un enfer. C'est en discutant de mes déboires avec un collègue qu'il m'a dit: \"mais en fait c'est un AST ton truc 💡\". L'AST, Abstract Syntax Tree est une structure de données permettant de représenter un programme, exactement ce que l'on cherche à accomplir pour notre moteur de règles, mais ça je ne le savais pas ! Le lendemain, il m'envoyait un scratch IDEA de 40 lignes représentant bien mieux le coeur de notre futur moteur que mes innombrables fonctions génériques de haut niveau et mon code impossible à maintenir. C'est pas clair ? Alors venez, on redéveloppe from-scratch le coeur du moteur avec Kotlin en quelques lignes de code, en illustrant le concept de ce fameux AST.","room":"Amphi D","start_time":"2026-06-25T14:30:00","end_time":"2026-06-25T15:25:00","start_fr":"14h30","end_fr":"15h25","url":"https://www.breizhcamp.org/programme/session/1145894"}]},{"jour":"Vendredi","date":"2026-06-26","horaire":"9h30-10h30","mission":"Surveillance salle","lieu":"Amphi E","benevoles":["Gaël Salaün","Etienne Besson","Benoit Masson"],"nb_benevoles":3,"date_fr":"26/06/2026","talks":[]},{"jour":"Vendredi","date":"2026-06-26","horaire":"10h30-12h30","mission":"Surveillance salle","lieu":"Amphi E","benevoles":["Guillaume Collic","Benoit Masson","Sébastien Bettinger"],"nb_benevoles":3,"date_fr":"26/06/2026","talks":[{"title":"Let's play Factorio","speaker":"Julien Wittouck","summary":"Factorio est un jeu vidéo d'automatisation hautement addictif (croyez-en mes 400h de jeu). Le but est simple : le vaisseau spatial du joueur est échoué sur une planète extra-terrestre, il faut construire une fusée pour s'échapper, en utilisant toutes les ressources disponibles sur la planète. Le joueur construit alors une usine (d'où le nom du jeu) pour créer des matériaux de plus en plus complexes, jusqu'à pouvoir construire la fusée. Mais quel rapport avec la tech ? Architectures de code spaghetti, en couches et micro-services. Métriques, alertes, root-cause analysis. Scalabilité horizontale, verticale, load-balancing. Charge, débit, performance. Sécurité, firewalls, DDoS. On peut retrouver tous ces concepts dans le jeu. Ce talk, intégralement réalisé dans le jeu, reprend et illustre ces différents concepts qui sont au coeur de nos métiers. Pour les débutants, ce sera l'occasion de comprendre ces concepts fondamentaux. Pour les plus expérimentés, ce sera l'occasion de les voir illustrés en dehors d'un schéma d'architecture ennuyeux. The Factory Must Grow.","room":"Amphi E","start_time":"2026-06-26T10:30:00","end_time":"2026-06-26T11:25:00","start_fr":"10h30","end_fr":"11h25","url":"https://www.breizhcamp.org/programme/session/1149153"},{"title":"Comment réorganiser un code legacy complexe","speaker":"Pascal Le Merrer","summary":"Je vais vous parler d'un gros projet, avec un métier complexe. La croissance du nombre de contributeurs a été aussi forte que rapide, mais son architecture logicielle n'a pas été maitrisée. Jusqu'au jour où la dette technique est apparue comme un problème majeur, qui freinait le développement du business, et qu'il a fallu se résoudre à traiter. Dans ce talk je vous expliquerai comment nous avons procédé, et décrirai les outils et méthodes mis en oeuvre pour réorganiser le code aussi bien que les équipes, tout en continuant à faire évoluer le produit. J'évoquerai aussi les difficultés rencontrées, car les embûches sont toujours nombreuses sur un chemin de ce type. Vous pourrez alors réutiliser ces outils et méthodes sur vos projets, afin de démêler votre propre plat de spaghettis.","room":"Amphi E","start_time":"2026-06-26T11:30:00","end_time":"2026-06-26T12:25:00","start_fr":"11h30","end_fr":"12h25","url":"https://www.breizhcamp.org/programme/session/1169384"}]},{"jour":"Vendredi","date":"2026-06-26","horaire":"12h30-13h30","mission":"Surveillance salle","lieu":"Amphi C (principal)","benevoles":["Julien Stephan","Etienne Besson","Benoit Masson"],"nb_benevoles":3,"date_fr":"26/06/2026","talks":[{"title":"Le vrai coût d'un token: la facture cachée de l’IA générative","speaker":"Amine Gani, Pietro Mele","summary":"Nous mesurons le coût de l’IA générative en centimes par tranche de 1 000 tokens ou en millisecondes de latence. Mais chaque prompt s’accompagne d’une facture invisible, réglée en kilowattheures et en litres d’eau. À mesure que l’adoption de l’IA s’accélère, son impact environnemental devient une contrainte d’ingénierie majeure. Une seule interaction avec un LLM peut consommer jusqu’à dix fois plus d’énergie qu’une requête de recherche traditionnelle, tandis que le cycle de vie du matériel génère des niveaux record de déchets électroniques. Dans cette session, nous évaluerons le « véritable coût d’un token », en dépassant le battage médiatique pour analyser les données concrètes liées à l’entraînement et à l’inférence des modèles d’IA. Nous passerons ensuite des métriques aux solutions, en montrant que l’« IA verte » est bien souvent synonyme d’IA efficace et économiquement pertinente. Vous repartirez avec une boîte à outils pratique pour mieux gérer notre dépendance à ces modèles : apprendre à dimensionner correctement votre architecture, optimiser vos pipelines et mettre en œuvre des approches sensibles au carbone afin de construire une intelligence qui ne coûte pas la planète.","room":"Amphi C","start_time":"2026-06-26T12:45:00","end_time":"2026-06-26T13:00:00","start_fr":"12h45","end_fr":"13h00","url":"https://www.breizhcamp.org/programme/session/1183934"},{"title":"Tuner uv pour travailler avec Docker","speaker":"Florent Vuillemin","summary":"Vous utilisez uv, le super gestionnaire de packages Python ? Vous avez bien raison. Si vous faites des builds fréquents, vous voudrez éviter de télécharger les dépendances à chaque fois. Et au moment de construire une image docker de votre application, il faudra minimiser son contenu pour réduire la surface d'attaque et accélérer son transfert. Ça tombe bien, Astral a tout prévu pour ça au moyen d'options et de variables d'environnement dédiées ! Je vous ai déjà dit que c'était un super outil ?","room":"Amphi C","start_time":"2026-06-26T13:05:00","end_time":"2026-06-26T13:20:00","start_fr":"13h05","end_fr":"13h20","url":"https://www.breizhcamp.org/programme/session/1179892"}]},{"jour":"Vendredi","date":"2026-06-26","horaire":"17h","mission":"Rangement","lieu":"","benevoles":["Julien Stephan","Didier Certain","Caroline Mouden","Gaël Salaün","Guillaume Collic","Etienne Besson","Sébastien Chédor","Benoit Masson","Brendan Abolivier","Daniel Brossier","Frederic Penel","Hermann NSOUNGA","Malo Godin","Mikael Lefalher","Pascal Caignard","Quentin Liso","Sylvain Guernion","Théo Bougé","Mélanie Gueguen","Théo Blandin","Anthony Leray","Imelda DUIGOU"],"nb_benevoles":22,"date_fr":"26/06/2026","talks":[]}]}