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
60
The Complexity Genie
mitsuhiko
0
100
The Catch in Rye: Seeding Change and Lessons Learned
mitsuhiko
0
270
Runtime Objects in Rust
mitsuhiko
0
340
Rust at Sentry
mitsuhiko
0
400
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
180
Rust API Design Learnings
mitsuhiko
0
510
The Snowball Effect of Open Source
mitsuhiko
0
330
Mobile Games are Living Organisms, Too
mitsuhiko
0
240
Other Decks in Programming
See All in Programming
iOSでQRコード生成奮闘記
ktcryomm
2
160
AWS CDKにおけるL2 Constructの仕組み / aws-cdk-l2-construct
gotok365
4
740
Lambdaの監視、できてますか?Datadogを用いてLambdaを見守ろう
nealle
2
870
やっと腹落ち「スプリント毎に動くモノをリリースする」〜ゼロから始めるメガバンクグループのアジャイル実践〜
sasakendayo
0
280
運用しながらリアーキテクチャ
nealle
0
280
Accelerate your key learnings of scaling modern Android apps
aldefy
0
100
はじめての Go * WASM * OCR
sgash708
1
150
もっと大きなデータを送りませんか? エラーがゴロゴロ出るようなデータです
sublimer
0
130
Domain-Driven Design (Tutorial)
hschwentner
13
22k
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
130
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
280
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
140
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
RailsConf 2023
tenderlove
29
1k
How to train your dragon (web standard)
notwaldorf
91
5.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Code Review Best Practice
trishagee
67
18k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Typedesign – Prime Four
hannesfritz
41
2.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Why Our Code Smells
bkeepers
PRO
336
57k
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
?