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
2
530
Happiness in Open Source
A talk about how to make open source work without destroying your soul.
Armin Ronacher
May 09, 2016
Tweet
Share
More Decks by Armin Ronacher
See All by Armin Ronacher
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
74
Do Dumb Things
mitsuhiko
0
620
No Assumptions
mitsuhiko
0
180
The Complexity Genie
mitsuhiko
0
210
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
320
Runtime Objects in Rust
mitsuhiko
0
350
Rust at Sentry
mitsuhiko
0
460
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
210
Rust API Design Learnings
mitsuhiko
0
560
Other Decks in Programming
See All in Programming
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
350
AIプログラマーDevinは PHPerの夢を見るか?
shinyasaita
1
180
PicoRuby on Rails
makicamel
2
120
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
840
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
130
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
170
ニーリーにおけるプロダクトエンジニア
nealle
0
700
Team operations that are not burdened by SRE
kazatohiei
1
290
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
520
GraphRAGの仕組みまるわかり
tosuri13
8
510
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
550
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
1
720
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
246
12k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
500
The Invisible Side of Design
smashingmag
300
51k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
GraphQLとの向き合い方2022年版
quramy
49
14k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Scaling GitHub
holman
459
140k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
230
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
A Tale of Four Properties
chriscoyier
160
23k
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/