My Devoxx 2022

| 9 min read

Devoxx France happened again in 2022 ! Going back on my experience as a Speaker, sharing the conferences I've liked and my Sketchnotes. 3 days summed up in a few words and drawings: Hold my beer, let's get started!

Hold my beer

Devoxx France, in a few words

Devoxx is the biggest conference for developers in France. It takes place yearly in Paris, lasts 3 whole days and gathers more tham 3200 people. More than 170 conferences are presented (under different formats: keynotes, universities, quickies, hands-on-labs and conferences) around very diverse themes (web, UX, Java, big data, cloud...).

In addition to being the year that marked its great return after a period of significant pandemic, the conference of passionate developers celebrated its 10th anniversary this year!

Warning: Devoxx France being a French conference, most of the content are only available in French.

My experience as a Speaker

It would have been a shame to write an article without speaking about my experience as a speaker, wouldn't it? 😄

I had the honnor to be selected to present two talks; a first one about the state managements in React, and another one about MJML email templates.

I'll publish other articles soon to share about the process of CFP submission and my experience as a speaker.

[French] React: one hell of a state

Photo of Amélie on stage

Speakerine: Amélie Benoit

Sources on Github (slides + code): https://github.com/abenoit/react-states

Conference's replay

Résumé: Que nos applications soient legacy ou complètement nouvelles, la question du stockage et de la gestion des données est une constante. Il existe aujourd'hui de nombreuses façon de gérer ce state, mais peu de guidelines fortes.

Avec des exemples de code, nous verrons ensemble trois acteurs majeurs de la gestion du state en React aujourd'hui: de la solution native à Recoil en passant par Redux-toolkit.

[French] Email templates: you're the hero

Photo of Amélie on stage

Speakerine: Amélie Benoit

Sources sur Github (slides + code): https://github.com/abenoit/email-templates

Conference replay

Résumé: Vous êtes la personne qui s'est portée volontaire pour écrire les templates HTML pour la prochaine campagne d'email de votre entreprise. Mais qui dit HTML, dit interprétation de rendu. Votre expérience avec Internet Explorer vous avait déjà laissé quelques traces, et votre instinct vous dit - à raison - de vous méfier tout autant des client mails qui liront votre template...

Un ami vous a parlé de MJML, un framework spécialement dédié à la création d'emails responsive. Technologie qui vous est inconnue, vous vous lancez pour trouver la meilleure solution - de l'écriture à la validation - de vos templates d'emails.

Keynotes

As always, keynotes open our mind about the ecosystem and its repercussions. 6 keynotes spread over 2 days, as many topics presented I've summed up in the skechnotes below. Pour Devoxx France's 10 year anniversary, the organizers wondered: what will our ecosystem look like in the next 10 years? This is under this theme of sustainability and future of tech that the keynote were all about.

Jour 1

Opening keynote Sketchnote, day 1

Vidéos

Jour 2

Opening keynote Sketchnote, day 2

Vidéos

Conférences

I am not going to make a list of ALL the conferences presented at Devoxx France (there are way too many of them for such a small article!). All the videos are published online if you would like to watch them. Here is a palmares of the conferences I had the chance to attend to and that I liked the most!

Architecturoplastie hexagonale d’un backend Node.js

As a front-end developer, it was more out of curiosity that I sat down for a 3 hour conference about hexagonal architecture (I've already played with DDD but I can't say that I'm a fluent back-end dev). In the end, all the concepts were naturally and clerly brought with concrete example; I did not see the time passed, I laughed and had a very nive moment.

Through a story of legacy code to bring back to life, the speakers provide solutions to help re-work on code that no one masters (legacy, side effects, no / few tests, cross dependencies ...).

Sketchnote of the conference "Architecturoplastie hexagonale d’un backend Node.js"

Speakers:

Conference replay

Résumé: Votre backend n'a même pas 3 ans et pourtant, il n’est pas en forme. Il devient difficile d’y ajouter de nouvelles fonctionnalités, de maintenir et/ou de refactorer l’existant. Le code est intolérant à la montée de versions de librairies, pouvant lui causer une régressionnite fonctionnelle aiguë. Les tests deviennent douloureux à l’écriture.

Les précédents choix techniques ont comme effet secondaire de limiter ou verrouiller l’évolution du logiciel, à un point où il devient tentant de repartir de zéro. Votre backend commence lentement à pourrir, son architecture s’étant sclérosée.

Mais savez-vous qu’il existe différents types de complexité logicielle ? Et que bien les identifier en les séparant avec un pattern d’architecture adapté, peut améliorer la pérennité de nos applications ? Et tout ça, quels que soient les frameworks que vous utilisez ?

Dans cette opération à code ouvert sous forme d’un mob-programming intéractif, venez découvrir comment redonner un coup de jeune à votre backend à bout de souffle en le faisant migrer vers de l’Architecture Hexagonale.

Pourquoi vous n'attirez pas et ne retiendrez pas les femmes dans vos équipes tech

My favorite talk of Devoxx France 2022! Marcu gives explanations about minorities feelings within the tech ecosystem, along with some keys to help them to be included better.

Conference Sketchnote "Pourquoi vous n'attirez pas et ne retiendrez pas les femmes dans vos équipes tech"

Speaker: Marcy Ericka Charollois

Conference replay

Résumé: Les femmes sont sous-représentées dans le domaine du numérique. Elles représentent à ce jour uniquement 30% des salariés, tous métiers confondus.

Que s´est-il passé dans ce secteur professionnel pourtant dominé par la gente feminine lors de sa génèse ? Les femmes ne se sentiraient-elles plus ou pas à leurs places ?

Pourtant, les femmes communiquent. Hélas, bien souvent, on ne les écoute pas. Résultat ? Migration vers des métiers corollaires, brown-out, désincarnation dans l'équipe, démission, création de la FemTech et de safe places comme lieux d'expression communautaire.

Alors, si vous voulez favoriser la mixité et que vous avez saisi que la cause des femmes dans la tech est une brèche pour résoudre, en plus, la problématique de la diversité et de l'inclusion, venez découvrir comment améliorer vos pratiques !

Marcy Ericka Charollois : Auteure en social tech, content strategist, fondatrice de Merci Marcy et The Safe Place. Ancienne rédactrice en cheffe de WeLoveDevs pendant 2 ans. J'y étais la première femme embauchée. Oui, en plus de ça, j’étais la première femme racisée et LGBTQIA+.

Je me rends vite compte que peu de personnes comme moi sont représentées dans la tech. J'ai alors choisi de prendre une plume plus engagée pour valoriser la diversité en brisant le ciment des faux-semblants des valeurs d'entreprise.

Je milite afin de créer une cohésion véritable au sein des équipes, en leur permettant d'incarner une culture d'inclusion authentique au delà du bullshit.

Mob programming, la véritable approche du développement en équipe

We probably all have already had mob-programming sessions in our companies; this has become a recurring practice for those developers at Ouest France. Return on their experience and share of the attention points for a mob-programming that works!

Conference Sketchnote "Mob programming, la véritable approche du développement en équipe"

Speakers:

Conference replay

Résumé: Shérif, le manager, est en colère. Il vient de surprendre toute l’équipe de développement autour d’une même machine. Rendez-vous compte ! Après des comparaisons douteuses avec la DDE, il les a bien sermonnés et leur a ordonné de retourner à leur poste de travail immédiatement, un peu de sérieux ! Avec Shérif, la bamboche, c’est terminé !

Malheureusement, des Shérif, il en existe encore beaucoup dans les open-spaces de nos DSI. Partager un ordinateur entre plusieurs développeurs, mais pourquoi donc ?

Le MOB programming est une pratique s’appuyant sur le Lean et sur Extreme Programming qui consiste à réaliser une tâche, qu’elle soit technique ou non, à plusieurs. Les groomings, planifications et autres réunions de conception, ne serait-ce pas déjà des MOBs ?

De mythe à réalité, nous vous proposons de faire un retour d’expérience du MOB programming dans une équipe produit chez Ouest-France. Nous vous offrirons deux points de vue, celui du lead, présent depuis le début du projet (5 ans) et celui d’un développeur qui a rejoint l’équipe début 2021.

S'affranchir de la Pyramide des Tests

The pyramid of tests, we all know about it. Jonathan explains why he came into questioning all of those principles, what wasn't working, and what is important to keep in mind when we write tests in our application.

Conference Sketchnote "S'affranchir de la Pyramide des Tests"

Speaker: Jonathan Boccara

Conference replay

Résumé: Tester son code c'est facile à dire, mais écrire des tests utiles dans du code en entreprise, c'est pas toujours facile à faire.

En théorie les tests doivent nous aider, pourtant: - Le code ne se prête pas toujours aux tests unitaires, - On se retrouve parfois à refactorer les tests quand on refactore le code, - La pyramide des tests est souvent inversée, - Certains tests sont toujours verts, sauf quand ils sont rouges pour de mauvaises raisons, - On a beau tester le code, on a toujours des bugs, - Etc.

La meilleure façon d'éviter ces problèmes est d'avoir les clefs pour choisir le bon test à écrire (ou à ne pas écrire!) en fonction du code à tester.

Le but de cette présentation est de vous rendre autonome sur votre stratégie de tests, en vous présentant les tenants et aboutissants des différents types de test et du testing en général.

En particulier vous verrez: - pourquoi la pyramide des tests est contre-productive - quand écrire des tests unitaires et quand ne surtout pas en écrire, - comment rédiger des tests robustes et clairs - les différentes abstractions que l'on peut tester

Venez prendre du recul sur le testing et faites les bons choix dans vos tests!

Créer & distribuer un plugin pour Kubernetes en quelques minutes ? Easy ! 🙂

Once again, I stepped out of my comfort zone by assisting a conference on a tool I do not master: Kubernetes. And it was in a very accessible way and with a background of good mood that Aurélie and Gaëlle explained to us why writing a Kubernetes plugin is interesting according to need, and they even wrote one live!

Conference Sketchnote "Créer & distribuer un plugin pour Kubernetes en quelques minutes ? Easy !"

Speakerines:

Conference replay

Résumé: Kubernetes est assez complexe comme cela … mais savez vous qu’il est possible de rajouter des fonctionnalités à notre orchestrateur préféré grâce aux plugins et à un petit outil : Krew ?

Nous verrons dans ce talk, qu’en quelques minutes il est possible de créer un plugin à Kubernetes permettant de rendre plus user-friendly nos pods (selon la thématique saisonnière ^^). Mais ce n’est pas tout ! Le but est aussi de le partager aux autres et pour cela, Krew est “The place to be”. A la fin de ce talk vous aurez toutes les billes en main afin de pouvoir réaliser & partager votre propre plugin.

OAuth2 expliqué simplement, même si tu n'es pas un dev

One of my favorite conference, during which I have discovered the public speaking skills of Julien Topçu (for the second time actually, as he was also presenting the conference about hegaxonal architecture). Julien brings us in a scripted universe about explanations and evolutions that brought us with today's implementation of OAuth 2, through allegories that help us to understand terms and concepts that can be complex. Clear (even limpid) and fun, don't miss watching this conference to better understand what is hidden behind this authorization mechanism!

Speaker: Julien Topçu

Conférence replay

Résumé: Il est très difficile aujourd'hui de déployer une application sur le web sans se frotter à OAuth2. Conçu pour mieux protéger les utilisateurs et les utilisatrices, ce standard de délégation d'autorisation s'est totalement imposé dans l'industrie.

Cependant, n'avez-vous pas pleuré en essayant de comprendre les concepts de OAuth2 ? On ne va pas se mentir, entre les différents rôles et la multitude de flows qui le constituent, il y a vraiment de quoi se perdre et sa complexité en décourage plus d'un ! Et pourtant, on ne peut pas s'en passer, donc on y va et généralement c'est douloureux…

Mais ne vous inquiétez pas, que vous ayez un profil tech ou non, ce talk va vous permettre d'enfin comprendre les méandres de OAuth simplement, dont la nouvelle version 2.1, en s'appuyant sur des analogies de la vie courante !

Equity for software engineers

When joining a company, the salary is important but it shouldn't be the only things to look at. For example with startups, employees are offered other advantages - with sometimes scarny acronyms. Damien explains clearly and in a simple manner what they correspond to, and why it could be interesting to take them into account!

There is a calculation mistake in this sketchnote, I haven't fixed it yet.

Conference Sketchnote "Equity for software engineers"

Speaker: Damien Pacaud

Conférence replay

Résumé: De plus en plus d entreprises proposent, en complément de la rémunération, des « packages d’équity ».

C’est un cercle vertueux qui démarre en Europe et il peut être utile de prendre ces éléments en compte lorsque vous cherchez votre nouvel emploi.

Bien souvent, les développeurs en France considèrent peu ces éléments de rémunération et n'y prêtent pas beaucoup d'attention.

Ce talk a pour but de démystifier le monde bizarre des BSPCE, AGA, RSU, Warrants et autres Stock options.

Record du monde

Benoît explains very clearly what DataClasses are in Python, a new feature also appearing in Java 17 under the name of Records. They are useful in a large number of cases (especially on a DDD-based back-end).

Speaker: Benoît Prioux

Conférence replay

Résumé: Les Records sont l’une des nouveautés les plus attendues avec la sortie de Java 17. Des concepts similaires ont déjà été introduits dans d’autres langages: data class en Kotlin, @dataclass en Python, case class en Scala.

Pattern assez simple de premier abord, les records vont devenir un véritable indispensable de votre boite à outils de développeur.

Après un tour d’horizon des implémentations dans les différents langages, je vous propose de vous partager différents cas d’utilisations pour du pattern matching, du DDD et même pour des monoids 😱.

Conclusion

Of course, there are still plenty of amazing content I haven't talked about and that is available to watch on Devoxx France's YouTube channel.

This year, once again, I spent an incredible moment at Devoxx France. 3 days, intense but with so many people I met and so fulfilling! I did not speak about the BoFs (Birth of Feather) where a small group of people can share about various topics (hello Duchess France!), the concert, the wine & cheese event, the closing keynote provided by the cast-codeurs... Maybe the opportunity to write a second article!