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
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
770
Do Dumb Things
mitsuhiko
0
940
No Assumptions
mitsuhiko
0
410
The Complexity Genie
mitsuhiko
0
330
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
430
Runtime Objects in Rust
mitsuhiko
0
400
Rust at Sentry
mitsuhiko
0
580
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
290
Rust API Design Learnings
mitsuhiko
0
660
Other Decks in Programming
See All in Programming
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
810
RailsTokyo 2026#4: AI様があれば、 Hotwireの弱点は消えるか?
naofumi
5
990
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
120
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.2k
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.1k
3Dシーンの圧縮
fadis
1
360
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.7k
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
250
New "Type" system on PicoRuby
pocke
1
210
バックエンドにElysiaJSを採用して気付いた、良い点・悪い点
wanko_it
1
180
Swiftのレキシカルスコープ管理
kntkymt
0
200
RTSPクライアントを自作してみた話
simotin13
0
220
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
For a Future-Friendly Web
brad_frost
183
10k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
250
Believing is Seeing
oripsolob
1
130
Agile that works and the tools we love
rasmusluckow
331
21k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Being A Developer After 40
akosma
91
590k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
370
Optimising Largest Contentful Paint
csswizardry
37
3.7k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
310
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
450
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
?