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
Runtime Objects in Rust
mitsuhiko
0
220
Rust at Sentry
mitsuhiko
0
250
Overcoming Variable Payloads to Optimize for Performance
mitsuhiko
0
100
Rust API Design Learnings
mitsuhiko
0
400
The Snowball Effect of Open Source
mitsuhiko
0
280
Mobile Games are Living Organisms, Too
mitsuhiko
0
180
We gave a Mouse an NDK
mitsuhiko
0
660
Debug is the new Release
mitsuhiko
1
520
A Future Python
mitsuhiko
0
2.6k
Other Decks in Programming
See All in Programming
Ruby on Fails - effective error handling with Rails conventions
talyssonoc
0
300
WebGLで始める コンピュータグラフィックス入門
heller77
0
370
Revisiting the Hotwire Landscape after Turbo 8 @ RailsConf 2024, Detroit
marcoroth
3
610
哲学史とモデリング
tanakahisateru
2
420
Using "modern" Ruby to build a better, faster Homebrew
mikemcquaid
2
250
Introducing Kotlin Multiplatform in an existing mobile app - Workshop Edition | AndroidMakers Paris
prof18
0
180
TypeScript 関数型スタイルでバックエンド開発のリアル
naoya
49
16k
Jetpack Composeとデザインシステム
rmakiyama
0
230
TSKaigi 2024 - 新サービス Progate Path の演習で TypeScript を採用して見えた教材観点からの利点と課題
makotoshimazu
1
220
[RubyKaigi 2024] Ruby Mixology 101: adding shots of PHP, Elixir, and more
palkan
0
120
ts-morphを使ってコードリプレイスとASTへのハードルを下げる!
nyawach
5
330
Balkan Ruby 2024 — How and why to run SQLite on Rails in production
fractaledmind
0
110
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1025
450k
4 Signs Your Business is Dying
shpigford
176
21k
Done Done
chrislema
178
15k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Designing for Performance
lara
601
67k
Making Projects Easy
brettharned
109
5.5k
Fireside Chat
paigeccino
22
2.7k
Debugging Ruby Performance
tmm1
70
11k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
20
1.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
How to train your dragon (web standard)
notwaldorf
75
5.2k
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
?