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
10 Years of Python Libraries
Search
Armin Ronacher
March 20, 2015
Programming
11
2.3k
10 Years of Python Libraries
A presentation at PiterPy 2015 about 10 Years of Python Libraries.
Armin Ronacher
March 20, 2015
Tweet
Share
More Decks by Armin Ronacher
See All by Armin Ronacher
No Assumptions
mitsuhiko
0
54
The Complexity Genie
mitsuhiko
0
86
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
270
Runtime Objects in Rust
mitsuhiko
0
340
Rust at Sentry
mitsuhiko
0
390
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
170
Rust API Design Learnings
mitsuhiko
0
500
The Snowball Effect of Open Source
mitsuhiko
0
320
Mobile Games are Living Organisms, Too
mitsuhiko
0
230
Other Decks in Programming
See All in Programming
Datadog DBMでなにができる? JDDUG Meetup#7
nealle
0
120
CloudNativePGを布教したい
nnaka2992
0
100
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
410
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
120
Kubernetes History Inspector(KHI)を触ってみた
bells17
0
250
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
260
How mixi2 Uses TiDB for SNS Scalability and Performance
kanmo
40
16k
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
190
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
130
Jakarta EE meets AI
ivargrimstad
0
140
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
230
Go 1.24でジェネリックになった型エイリアスの紹介
syumai
2
250
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Thoughts on Productivity
jonyablonski
69
4.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Docker and Python
trallard
44
3.3k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Practical Orchestrator
shlominoach
186
10k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Designing for humans not robots
tammielis
250
25k
GraphQLとの向き合い方2022年版
quramy
44
13k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Transcript
10 Years of Python Libraries Armin “@mitsuhiko” Ronacher
Who am I? { }
Armin Ronacher Advisor and System Architect at Splash Damage /
Fireteam Partner at Getsentry lucumr.pocoo.org/talks
None
Where I come from { }
Hermagor Carinthia; Austria ( )
Population: 6952
Computer Scientists: 0
The Internet to the rescue
h 2003 Discovered Python
9 2004 ubuntuusers.de
n 2005 Pocoo!
D 2005 WTF is CGI?
h 2006 Colubrid GPL Licensed!
h 2007 Licensing
9 2009 Flask
h 20?? Many, many more
n Now Open Source Consulting
How to Succeed { }
you can only build what you use
you can only build what you understand
you can only build what you love
be critical
restrict your API
license it well
The Thing with Using { }
chicken and egg situation:
not enough to use it after building;
how do you use something that does not exist?
Iteration
M ockups
Use the Repl
Learn to Throw Away
Systems > Solutions
one trick pony
Understanding { }
this is the trickiest part
especially if you build something new
Data Flow Transformation &
context matters
w Love what you build { }
how do you know you found love?
enjoy using it? :) do you …
what if you found new love?
admit mistakes
give it someone else
being critical { }
it's normal to learn
you might hate what you did a year ago
second system syndrome careful though:
Restrict your API { }
APIs are Contracts __________________
Contracts Expensive are
maintenance complicates
it's okay to keep things private
you can make them public later on
license it well { }
consider the consequences
licenses are forever
API Design Goals { }
stateless
layered
consistent
small
abstraction leakage
documentation thou shall write
?