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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Armin Ronacher
March 20, 2015
Programming
2.4k
11
Share
10 Years of Python Libraries
A presentation at PiterPy 2015 about 10 Years of Python Libraries.
Armin Ronacher
March 20, 2015
More Decks by Armin Ronacher
See All by Armin Ronacher
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
670
Do Dumb Things
mitsuhiko
0
920
No Assumptions
mitsuhiko
0
390
The Complexity Genie
mitsuhiko
0
310
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
410
Runtime Objects in Rust
mitsuhiko
0
390
Rust at Sentry
mitsuhiko
0
570
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
280
Rust API Design Learnings
mitsuhiko
0
640
Other Decks in Programming
See All in Programming
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
250
Nuxt Server Components
wattanx
0
260
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
2
150
へんな働き方
yusukebe
6
2.9k
L’IA au service des devs : Anatomie d'un assistant de Code Review
toham
0
220
Smarter Angular mit Transformers.js & Prompt API
christianliebel
PRO
1
120
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.2k
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
340
Coding as Prompting Since 2025
ragingwind
0
770
Kubernetes上でAgentを動かすための最新動向と押さえるべき概念まとめ
sotamaki0421
3
450
CursorとClaudeCodeとCodexとOpenCodeを実際に比較してみた
terisuke
0
230
ファインチューニングせずメインコンペを解く方法
pokutuna
0
280
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
370
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
140
The Curse of the Amulet
leimatthew05
1
11k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
160
Odyssey Design
rkendrick25
PRO
2
570
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
150
Game over? The fight for quality and originality in the time of robots
wayneb77
1
160
Raft: Consensus for Rubyists
vanstee
141
7.4k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.8k
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
?