Featured image of post Récap FOSDEM 2024

Récap FOSDEM 2024

Ecrit par ~ zwindler ~

Introduction

Si vous me suivez sur les réseaux sociaux, vous avez peut-être vu que j’étais pour la deuxième fois au FOSDEM (Free and Open Source Software Developers’ European Meeting).

Note: comme l’an dernier, mon employeur a payé le voyage pour moi et une quinzaine de collègues. Merci à lui.

Contrairement à l’an dernier par contre, cette année, j’étais speaker ! J’ai refait (en anglais) mon talk sur GoReleaser. J’étais un peu stressé, car je suis relativement débutant en Golang, surtout par rapport au niveau de la room.

The state of Go

La première conférence que je suis allé voir est “The State of Go”. C’est un “must” au FOSDEM et beaucoup de monde me l’a conseillé et effectivement, j’ai passé un très bon moment : Maartje a beaucoup d’humour.

Je n’avais pas spécialement suivi les nouveautés du langage en 1.21 (et la future 1.22) mais j’ai été content de voir qu’il y a pas mal de nouvelles fonctions built-in assez utiles, notamment les fonctions sur les maps et les slices (rendues possibles grâces aux generics).

Le changement qui m’a le plus marqué est le changement du scope de la variable d’itération dans les boucles for.

Évidemment, il y a aussi pas mal d’amélioration côté WASM ;-) (“c’est le turfu!” dirait un copain).

External Rook Ceph Cluster

J’avais prévu d’aller voir ce talk ensuite et j’ai été un peu court en temps pour aller du bâtiment Ud jusqu’à K… Je regarderai le replay et mettrai à jour l’article.

Point positif, pas mal de gens m’ont arrêté en voyant mon GopherBadge. C’est un bon moyen d’engager la discussion ;-P.

Incus

Je suis assez fan de LXC et LXD depuis un moment (j’ai écrit plusieurs articles sur le sujet, certains sont dans mes brouillons aussi). Mais si vous lisez mes “rants” sur ce blog, vous savez que Canonical a fait un “move” pour refermer reprendre la main sur LXD en le retirant de la fondation LinuxContainer.

L’auteur du talk donne un peu plus de détail sur ce qui s’est passé (je n’avais pas tous les détails) mais c’était encore un peu plus rude que je pensais.

Stephane Graber nous a présenté l’outil, et fait une petite démo de l’outil. A titre perso, je suis toujours fan, mais clairement l’outil va moins loin que d’autres solutions de virtualisation + containérisation (Proxmox ? Kubernetes ?).

Je pense que c’est un bon fit pour un homelab comme le mien, voire des workloads de prod plutôt simple. Dans les points qui me paraissent manquants : les sauvegardes (il n’y a que des snapshots).

Les choix techniques sont bons, (Ceph pour le stockage distribué, OVN pour le SDN, support d’OIDC). La CLI est agréable et permet de gérer plusieurs clusters en même temps.

Kubernetes Operators: Expanding Automation in Containerized Applications

Ce talk réalisé par Edith est aussi une introduction aux concepts de Kubernetes.

La seconde partie est dédiée à l’explication des concepts d’opérateurs, avec un exemple simple permettant aux débutants de bien comprendre.

Déjeuner

Étant un peu stressé, je voulais avoir bien le temps de manger. Nous avons donc fait une queue interminable pour un burger pas terrible (et même pas de frites). Un peu frustré, je me suis rattrapé sur le club maté, qui m’a redonné la patate :D.

Pour être serein, je me suis posé dans la devroom go au milieu du talk “How we almost secured our projects by writing more” mais je pense que j’ai manqué de contexte pour bien tout comprendre (ça parle de tests, de strace et d’eBPF, je pense qu’il faut être concentré).

Dependency injection: a different way

Dylan Reimerink, ingénieur chez Isovalent nous a fait un retour d’expérience sur les injections de dépendances dans un projet d’envergure en go.

J’ai pris peu de notes (concentré sur mon talk) mais j’ai quand même bien aimé l’explication de sa solution pour résoudre les problématiques d’injection de dépendance dans un projet complexe.

Putting an end to makefiles in Go projects with GoReleaser

Ma session. Ayant vu le niveau globalement élevé de la devroom go, j’étais nécessairement un peu inquiet du retour que j’aurais, étant un débutant dans le domaine (comparativement).

Dans l’ensemble, le talk (et surtout la démo) s’est bien passé. J’ai eu un petit glitch lors du docker build que j’ai subtilement esquivé et j’ai pu montrer ce que j’avais à montrer.

Avec le stress, j’ai fini 5 minutes trop tôt, ce qui a laissé 10 minutes de questions, donc je suis forcément un poil frustré par ça (mon côté perfectionniste ?), mais je pense que les gens ont apprécié et finalement c’est bien ça l’essentiel.

Une fois le talk terminé, j’ai pris une “gaufre de la victoire” (de toute façon c’était l’heure du goûter) et un deuxième club maté (l’équivalent de 2.5 cafés dans chaque bouteille, je crois).

Bare-Metal Networking For Everyone

Reboosté, je suis allé dans la salle Cloud & Virtualisation.

Mateusz Kowalski, Principal engineer chez Redhat a fait un talk sur les difficultés à déployer des clusters Kubernetes sur des serveurs baremetal (surtout on-prem).

Évidemment, ce genre de discours me parle forcément.

Il a parlé de plusieurs exemples de corner cases un peu tordus dans lesquels les layouts réseau “opinionated” de kubeadm ou kubespray ne sont pas utilisables (IPv6 dualstack, ranges chelous, …).

J’ai bien aimé ce talk mais je reste un peu frustré car je n’ai pas compris dans quel “produit” ils avaient dû développer les features dont il nous a parlé.

Instant Ramen: Quick and easy multi-cluster Kubernetes development on your laptop

J’ai trouvé le titre de cette session un peu déceptif. Je m’attendais à nouvelle façon de déployer des clusters Kubernetes sur un laptop.

En fait, il s’agissait plutôt d’une présentation d’un tool appelé RamenDR, qui, comme son nom l’indique, permet de faire du disaster recovery sur des clusters Kubernetes, notamment avec Kubevirt.

FOSDEM Saturday Night Fever

Une fois nos talks terminés, je suis allé voir un copain puis nous sommes allés directement aux bars.

ERREUR !

Il n’y a pas à manger dans tous les bars (obviously?). Après une pinte de delirium, avec la fatigue et à jeun j’étais HS.

Heureusement nous sommes allé diner ensuite, puis nous avons déambulé dans les rues de Bruxelles.

Dimanche !

Après une bonne nuit de sommeil, retour à l’ULB pour quelques talks de plus !

Après une bonne gaufre, c’est reparti pour un tour :).

20 years of Open Source building XWiki and Cryptpad

Je me suis levé “tôt” exprès pour aller voir Ludovic parler de la façon dont il a réussi à faire tourner une entreprise avec un produit open source (XWiki dans un premier temps, puis Cryptpad en plus à partir de 2016).

J’ai la façon qu’a Ludovic de voir l’open source. Contrairement au modèle open core (une partie du produit est open source, le reste closed source), Ludovic croit en un modèle d’Open source payant (l’open source, ce n’est pas gratuit), soit bien le support, soit en faisait payer le produit, mais en gardant tout open source.

Open source is not free!

Focus on the product! Involve the team.

“Open core tends to push you to do more proprietary”

J’adore cette philosophie et Ludovic a su nous expliquer les pièges et les difficultés de ce genre d’entreprises.

You too could have make curl!

Un très bon talk de Daniel Steinberg, avec beaucoup de conseils et de bons sens pour créer de bons logiciels (open sources).

Quelques exemples :

Keep having fun

Success requires time and attention

Learn to use the time you get / spare time is a luxury

Own your mistakes / Learn, adapt, add more tests

People are more difficult than code

Je ne vais évidemment pas tout lister. Écrit comme ça, ça parait évident / enfoncer des portes ouvertes. Mais en réalité, le talk est impossible à transcrire, Daniel est passionnant à écouter.

Si le sujet vous intéresse, je vous invite donc à aller écouter le replay.

Je laisse juste cette capture d’écran d’un email reçu par Daniel en 2021 (il avait fait un article là-dessus si vous voulez en savoir plus)…

Rires dans la salle. Moi, quand j’ai vu la réaction de Daniel en relisant le titre, je n’ai pas ri. Les gens ne se rendent pas compte de la violence d’internet. Je ne suis pas sûr d’être capable d’encaisser ça, à sa place…

Introducing ‘Refiners’ – A Micro-Framework for Seamless Integration of Adapters in Neural Networks

Pour finir, je suis allé voir le talk de la boite d’un copain qui bosse dans le domaine de l’AI depuis bien avant que ce soit hype.

Son entreprise actuelle a créé un micro-framework permettant d’adapter des modèles existants, pour les rendre plus performants (sans ré-entrainement complet donc) à des cas d’usages bien précis à moindre coût (adapters).

Ne travaillant pas dans ce domaine, j’avoue ne pas avoir d’avis sur le framework en lui même, mais les explications étaient très claires et je ne me suis pas senti perdu.

This is the end

Pour être parfaitement honnête, je n’avais pas l’énergie pour aller dans la room observability, même s’il y avait certainement de bons talks qui auraient pu m’intéresser.

J’ai donc décidé de retourner à Bruxelles un peu plus tôt pour aller chercher quelques souvenirs (et accessoirement, écrire cet article).

J’ai passé un très bon moment au FOSDEM et à Bruxelles, rencontré plein de gens (merci le GopherBadge), “miggled” avec de très chouettes communautés que je ne croise habituellement pas.

Si vous n’en avez pas eu assez, vous pouvez aussi aller lire les récap’ de mon collègue Zibok

Pour finir, quelques photos en vrac de ce week-end

Licensed under CC BY-SA 4.0

Vous aimez ce blog ou cet article ? Partagez-le avec vos amis !   Twitter Linkedin email Facebook

Vous pouvez également vous abonner à la mailing list des articles ici

L'intégralité du contenu appartenant à Denis Germain (alias zwindler) présent sur ce blog, incluant les textes, le code, les images, les schémas et les supports de talks de conf, sont distribués sous la licence CC BY-SA 4.0.

Les autres contenus (thème du blog, police de caractères, logos d'entreprises, articles invités...) restent soumis à leur propre licence ou à défaut, au droit d'auteur. Plus d'informations dans les Mentions Légales

Généré avec Hugo
Thème Stack conçu par Jimmy