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
0
14
Open-source sans Burn Out ? Le modèle CNCF
Damien Mathieu
February 03, 2025
Tweet
Share
More Decks by Damien Mathieu
See All by Damien Mathieu
Let's deploy on fridays
dmathieu
0
190
The 12Factor App
dmathieu
1
970
Building Resilient Services
dmathieu
0
130
Easily monitor your product data
dmathieu
0
44
Play with ruby threads
dmathieu
2
120
Other Decks in Programming
See All in Programming
AI時代のリアーキテクチャ戦略 / Re-architecture Strategy in the AI Era
dachi023
0
140
fieldalignmentから見るGoの構造体
kuro_kurorrr
0
140
Vibe Coding の話をしよう
schroneko
14
3.9k
파급효과: From AI to Android Development
l2hyunwoo
0
170
Cursorを活用したAIプログラミングについて 入門
rect
0
310
ASP.NETアプリケーションのモダナイゼーションについて
tomokusaba
0
280
Embracing Ruby magic
vinistock
2
280
AIコーディングエージェントを 「使いこなす」ための実践知と現在地 in ログラス / How to Use AI Coding Agent in Loglass
rkaga
4
1.5k
実践Webフロントパフォーマンスチューニング
cp20
45
10k
生成AI時代のフルスタック開発
kenn
8
1k
Golangci-lint v2爆誕: 君たちはどうすべきか
logica0419
1
280
オープンソースコントリビュート入門
_katsuma
0
150
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
Bash Introduction
62gerente
613
210k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.7k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Why Our Code Smells
bkeepers
PRO
336
57k
The Cost Of JavaScript in 2023
addyosmani
49
7.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 ?