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
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
4
Agentic Coding: The Future of Software Development with Agents
mitsuhiko
0
840
Do Dumb Things
mitsuhiko
0
970
No Assumptions
mitsuhiko
0
420
The Complexity Genie
mitsuhiko
0
340
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
440
Runtime Objects in Rust
mitsuhiko
0
420
Rust at Sentry
mitsuhiko
0
600
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
300
Other Decks in Programming
See All in Programming
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
250
OSINT for SRE: 学術論文とポストモーテムから探る システム障害の共通パターン / SRE NEXT 2026
tomoyk
1
2.4k
Webフレームワークの ベンチマークについて
yusukebe
0
200
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
290
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
110
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
120
継続モナドとリアクティブプログラミング
yukikurage
3
400
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.7k
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
180
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
14
2.8k
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.6k
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
0
160
Featured
See All Featured
Prompt Engineering for Job Search
mfonobong
0
370
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
260
Embracing the Ebb and Flow
colly
88
5.1k
Are puppies a ranking factor?
jonoalderson
1
3.7k
My Coaching Mixtape
mlcsv
0
170
Mobile First: as difficult as doing things right
swwweet
225
10k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
170
Optimizing for Happiness
mojombo
378
71k
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
?