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
Happiness in Open Source
Search
Armin Ronacher
May 09, 2016
Programming
570
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Happiness in Open Source
A talk about how to make open source work without destroying your soul.
Armin Ronacher
May 09, 2016
More Decks by Armin Ronacher
See All by Armin Ronacher
Reflections on building cloud and local hybrid machine entities
mitsuhiko
1
6
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
840
Do Dumb Things
mitsuhiko
0
970
No Assumptions
mitsuhiko
0
420
The Complexity Genie
mitsuhiko
0
340
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
440
Runtime Objects in Rust
mitsuhiko
0
420
Rust at Sentry
mitsuhiko
0
600
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
300
Other Decks in Programming
See All in Programming
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
14
6.7k
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
640
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
250
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1k
どこまでゆるくて許されるのか
tk3fftk
0
430
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
220
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
170
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
1
120
地域 SRE コミュニティ最前線 - ホンマでっかSRE勉強会
tk3fftk
0
160
symfony/aiとlaravel/boost
77web
0
120
霧の中の代数的エフェクト
funnyycat
1
280
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
Featured
See All Featured
Code Review Best Practice
trishagee
74
20k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
630
Speed Design
sergeychernyshev
33
1.9k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Done Done
chrislema
186
16k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
Optimizing for Happiness
mojombo
378
71k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.7k
Six Lessons from altMBA
skipperchong
29
4.3k
Transcript
Happiness in Open Source Armin Ronacher
Me • Armin Ronacher (@mitsuhiko) • Open Source Person •
Flask, Werkzeug, Jinja, Lektor etc. • Now working on Sentry
Interrupt Me
Getting There
The Trigger • Bought a book by Gregor Lingl: “Python
für Kids” • Stumbled upon the German Python Forum • The former administrator recommends Linux and with it Ubuntu
Back in Time • 2004: Ubuntu was released • the
first version of Linux I could actually run on my desktop. • Little bit of PHP Hacking • --> ubuntuusers.de
Going with the Flow • Ubuntu exploded. You could actually
see yourself making a “difference” • got a contribution into ubuntu directly: a simple wallpaper and some translations
Growing Big • Founding of the German ubuntu society •
Scaling website to multiple servers • The politics start
Why did it happen?
Hermagor • My Hometown • Population: 1.500 • People with
an interest in technology: few • Enter the internet
Next Step: Programming • Diving into Python development • learning
real programming • Getting in contact with other Python developers (Georg Brandl)
Learning • Jinja -> Templates without Django • Copy pasting
code over, trying to improve it • Learning on IRC from a guy who actually knows parsers.
Release • First implementation was crap • Did not stop
me from publishing it though • What is a license?
Open? • You can do whatever you want with it.
• Wrong
Stumbling Blocks • Jacob Kaplan–Moss sends me a mail that
some of the leftover code from Django in Jinja is missing the License declaration. • Learning on Licensing
Communication & Culture
People • There is a difference between IRC and RL
• Textual communication can be a problem • IRC/mail does not transfer emotions • Different cultures
Licensing • Horrible, horrible, horrible, horrible, horrible, horrible, horrible, bad,
bad, bad, bad, AAAAaaaargh • And you can seriously hurt yourself
Goals • Often you don't want what others do •
And that might not even be obvious • Learn to say no
Why do it?
Why Open Source? • Fun • Rewarding • Networking for
shy people • A common ground
Learning • I learn by failing and communicating with others.
• If it wasn't for the open source community I wouldn't be able to find people to talk to. • Cross language / border
It pays off • Learning new things • Getting introduced
to interesting people • The thrill of working together • Happiness when you see your stuff being used
Staying Motivated
Use It • You can only build things you use
yourself • Let other's chime in when you stop using it • Stop using it if you find something better / you need to use something else
Be More Boring • Sometimes it's important to stay boring
• Don't get carried away by the latest trends • Don't overstep the original goals
Licensing
BSD or GTFO • All popular Python modules are MIT/BSD
licensed with the occasional LGPL one • Commercial modules are very, very rare • GPL libraries ends up being mostly unused • Why?
Forced Contributions • “99% of useful code contributions come from
people who are motivated to participate in the project regardless of what the license tells them they have to do.” — Steve Streeting
Money: Case Studies
Making Money • Selling the software? • Libraries vs Applications
• Selling support? • BSD/MIT/zlib
Flask • Impossible to sell • However an amazing way
to bootstrap a career • More than possible to sell consulting
Sentry • Open Source not Open Core • Puts us
where others cannot be • Bootstrapped
Thank You
Contact • Armin Ronacher (@mitsuhiko) • http://lucumr.pocoo.org/ • http://www.getsentry.com/