Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
10 Years of Python Libraries
Search
Armin Ronacher
March 20, 2015
Programming
2.4k
11
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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
Reflections on building cloud and local hybrid machine entities
mitsuhiko
1
190
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
930
Do Dumb Things
mitsuhiko
0
1k
No Assumptions
mitsuhiko
0
440
The Complexity Genie
mitsuhiko
0
350
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
460
Runtime Objects in Rust
mitsuhiko
0
450
Rust at Sentry
mitsuhiko
0
620
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
320
Other Decks in Programming
See All in Programming
SONY CISC-NEWS NWS-1750 + NWB-225 フレームバッファの NetBSD/news68k ドライバ実装 / OSC2026Hiroshima
tsutsui
0
120
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
180
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
270
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
200
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
540
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
180
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
200
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
460
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
310
AWS Step Functions 大規模並列の壁を越える / jaws-sonic-2026-niigata-step-functions
kasacchiful
PRO
1
490
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
550
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
510
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
420
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Accessibility Awareness
sabderemane
1
210
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
400
Scaling GitHub
holman
464
140k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
How to build a perfect <img>
jonoalderson
1
6k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
1k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
910
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
76k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
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
?