🏴☠️ Fun with feature flags
conference
Speaker
Leonore DES PLAS
Technical Leader & Solutions Architect @SSG
photo de profil de léonore
company
Co-Founder of internal community Tech'Women UP
Speaker @Devops DDay
@hanatori13
hanatori.bsky.social
Léonore des PLAS
Speaker
Matthieu VINCENT
Tech Advocate @SSG
youpi
company
GitLab Hero
R2DevOps Ambassador
Volcamp co-cofounder
@yodamad03
yodamad03.bsky.social
me.yodamad.fr
Feature flag : kesako ?
🤔
👨🏫 Definition
Aussi connu sous le nom de
Feature toggle
Pattern de développement permettant d'activer ou non une fonctionnalité dynamiquement, sans redéploiement
Différent du
canary deployment
Proposer un comportement, design, … différent aux utilisateurs basés sur un critère fixe ou random
Aide à la mise en place de l'A/B testing
featureflag
Demo !
sheldon
Unleash a la rescousse
🦸🏻♀️
Unleash
Depuis 2015,
v6.5
actuellement
Permet d'implémenter les features dans votre application et de piloter l'activation des features, mesurer l'usage…
Une plateforme fournissant des SDK
pour la partie serveur (Go, Java, Python…)
pour la partie front (Android, React, …)
Une version communautaire riche en fonctionnalités (
sous Apache-2.0
)
et une version payante (pour la gestion de la sécurité, stratégies de déploiement complémentaires…)
Des concurrents/alternatives :
LaunchDarkly
,
Statsig
…
👉
Site officiel
👈
Comment ca marche Unleash ? 🤔
unleash
Une demo (en local)
localhost
On s'envole vers le Cloud
excited
On déploie sur ECS
scale
A vous de jouer 🎮
scale
Et pourquoi pas avec une lambda ?
C'est vrai qu'on peut facilement gérer des versions différentes en parallèle avec Lambda
Mais on garde le principal avantage de ne maintenir qu'une version justement !
Utile aussi avec les flags "permanents" : activation/désactivation d'un message de maintenance par exemple
scale
Et comment ça scale alors ? ⬆️
scale
On retient que
Les feature flags : c'est très simple à mettre en place
vous avez plein d'outils pour vous aider,
Unleash
est un des plus complets
Ça peut vous aider dans votre
business
pour cibler au mieux les besoins et l'utilisation de vos clients
Mais ...
ça peut vite devenir le
bazar
: il faut faire du
ménage
régulièrement
il faut
mesurer
l'usage pour pouvoir analyser le comportement de vos clients et leur parcours utilisateurs
ça revient à
tester
en prod : donc il faut faire un peu attention à ce qu'on fait
tester n'est pas douter
tester tous les cas (ça peut devenir coûteux d'où le besoin de nettoyage)
Openfeature ?
Communauté (depuis 2022) :
https://openfeature.dev/
Incubating project @ CNCF
Une initiative visant à normaliser la mise en place des features flags
via une spec :
https://github.com/open-feature/spec
Une abstraction de votre moteur de feature flags
openfeature
Merci !
qrcode
devfest
Les slides :
devfest-strasbourg-2024.yodamad.fr
Les demos :
gitlab.com/yodamad-workshops/2024/devfest-strasbourg
@hanatori13 & @yodamad03
A Bientot !
company