Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Open-source sans Burn Out ? Le modèle CNCF
Search
Damien Mathieu
February 03, 2025
Programming
55
0
Share
Open-source sans Burn Out ? Le modèle CNCF
Damien Mathieu
February 03, 2025
More Decks by Damien Mathieu
See All by Damien Mathieu
Let's deploy on fridays
dmathieu
0
250
The 12Factor App
dmathieu
1
980
Building Resilient Services
dmathieu
0
160
Easily monitor your product data
dmathieu
0
62
Play with ruby threads
dmathieu
2
130
Other Decks in Programming
See All in Programming
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
7
2.8k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
250
3Dシーンの圧縮
fadis
1
400
Moments When Things Go Wrong
aurimas
3
120
inferと仲良くなる10分間
ryokatsuse
1
260
AI時代だからこそ「Bloc」を採用する価値があるのかもしれない
takuroabe
0
240
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
390
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
2.2k
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
220
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
150
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
250
AIエージェントの隔離技術の徹底比較
kawayu
0
430
Featured
See All Featured
The Curse of the Amulet
leimatthew05
1
12k
Scaling GitHub
holman
464
140k
The Limits of Empathy - UXLibs8
cassininazir
1
340
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Code Reviewing Like a Champion
maltzj
528
40k
Faster Mobile Websites
deanohume
310
31k
Technical Leadership for Architectural Decision Making
baasie
3
380
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
200
Building Applications with DynamoDB
mza
96
7k
Design in an AI World
tapps
1
220
The Invisible Side of Design
smashingmag
302
52k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Transcript
DAMIEN MATHIEU OPEN-SOURCE SANS BURN OUT ? LE MODÈLE CNCF
- Software Crafter at Elastic - OpenTelemetry Contributor - Kayak
- Cuisine DAMIEN MATHIEU
QUI ICI MAINTIENT UN PROJECT OPEN SOURCE ?
QUI TROUVE CELA GRATIFIANT ?
ET POURTANT …
None
None
None
None
CERTAINS PROJETS ONT UN FRANC SUCCÈS
QUEL EST LEUR SECRET ? PUIS-JE LE REPRODUIRE À LA
MAISON ?
Comment fonctionne OpenTelemetry Comment rendre son projet libre viable Comment
s’assurer que les projets que l’on utilise sont viables
None
None
None
None
None
None
COMMENT CA FONCTIONNE ?
None
SPECIAL INTEREST GROUPS SIGs
OTLP
COLLECTOR
SEMANTIC CONVENTIONS
TRANSVERSAUX Communications End-users Security Project Tooling Contributor Experience Developer Experience
IMPLEMENTATIONS Ruby Go Java Rust Erlang/Elixir C++ Javascript Python PHP
Swift Android .NET
package main import ( "context" "math/rand/v2" "go.opentelemetry.io/otel" ) var tracer
= otel.Tracer("dice") func roll(ctx context.Context, min, max int) int { ctx, span := tracer.Start(ctx, "roll") defer span.End() return rand.IntN(max-min) + min }
None
const { trace } = require('@opentelemetry/api'); const tracer = trace.getTracer('dice');
function roll(min, max) { return tracer.startActiveSpan('roll', (span) => { const result = Math.floor(Math.random() * (max - min) + min); span.end(); return result; }); }
SPECIFICATIONS
None
None
Interface Animal{ Name() string IsAdult() bool }
class Animal def name; end def adult?; end end type
Animal interface { Name() string } type IsAdultAnimal interface { IsAdult() bool }
Interface Animal{ Name() string IsAdult() bool }
The Animal is responsible for describing animals. ANIMAL The `Animal`
MUST provide functions to: Retrieve the animal’s name. The `Animal` SHOULD provide functions to: Retrieve whether the animal has reached full growth or not.
Don’t try this at home !
None
IMPLEMENTATIONS Ruby Go Java Rust Erlang/Elixir C++ Javascript Python PHP
Swift Android .NET
None
package main import ( "context" "math/rand/v2" "go.opentelemetry.io/otel" ) var tracer
= otel.Tracer("dice") func roll(ctx context.Context, min, max int) int { ctx, span := tracer.Start(ctx, "roll") defer span.End() return rand.IntN(max-min) + min }
None
None
None
None
None
None
None
COMITÉS TECHNIQUE GOUVERNANCE
PROCESSUS DE DÉVELOPPEMENT ET LES STANDARDS
MÉDIATION DES DISCUSSIONS TECHNIQUES
STRUCTURE DE GOUVERNANCE
TECHNIQUE GOUVERNANCE Membres élus par leurs pairs Membres élus par
la communauté
None
None
COMMENT JE RENDS MON PROJET VIABLE ? ET JE M’ASSURE
QUE LES PROJETS QUE J’UTILISE SONT VIABLES
IL N’Y A RIEN DE MAGIQUE
QUEL EST L’OBJECTIF DU PROJET ?
DÉCOUVERTE / APPRENTISSAGE ?
None
None
None
PRODUCTION ?
It's a dangerous business, Frodo, going out your door. You
step onto the road, and if you don't keep your feet, there's no knowing where you might be swept o ff to.
None
None
EASY FIXES
DITES NON
None
VOUS UTILISEZ DES PROJETS LIBRES ?
None
Félicitations ! Vous faites déjà partie de la communauté de
l’Open-Source
None
Oh no, poor maintainer
None
None
None
None
Stand back I’m gonna fi x this bug
Do you have 5 minutes For a quick chat
None
None
DAMIEN MATHIEU
[email protected]
@
[email protected]
QUESTIONS ?