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
便利ライブラリを実運用で使うか迷った話
Search
mizzsugar
December 11, 2019
Programming
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
便利ライブラリを実運用で使うか迷った話
mizzsugar
December 11, 2019
More Decks by mizzsugar
See All by mizzsugar
自分のPCにPython環境を用意して_VSCodeでStreamlitアプリを動かすまでの8ステップ.pdf
mizzsugar
0
94
Colabのみで初心者向けPythonハンズオン.pdf
mizzsugar
0
78
厳しさとゆるさの間で迷う人に捧げる個人開発記
mizzsugar
0
72
SQLModel入門〜クエリと型〜
mizzsugar
3
1.6k
フルリモート向いてないと思っていた私が、なんだかんだ健やかに 1年半フルリモート出来ている話
mizzsugar
1
160
Djangoでのプロジェクトだって型ヒントを運用出来る!
mizzsugar
4
9.1k
「動くものは作れる」の一歩先へ 〜「自走プログラマー」の紹介〜
mizzsugar
0
660
pytestの第一歩 〜「テスト駆動Python」の紹介〜
mizzsugar
3
490
データ分析ツール開発でpoetryを使う選択肢
mizzsugar
1
1.2k
Other Decks in Programming
See All in Programming
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
460
FastAPI の並行処理モデルを完全に理解する
hoto17296
8
2.9k
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
120
「つくるAI」だけではバグは見つからない ~テストに必要な「見つけるAI」を分離させる戦略~
mfunaki
0
170
Cloudflare is Agents
chimame
0
180
React本体のコードリーディング
high_g_engineer
1
150
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
280
30年振りにコンパイラの定数整数除算を改善した
herumi
9
4.1k
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
540
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
130
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
180
引き算の組織 ― アウトカムとAIに全振りするために辞めたこと ― / Organization by Subtraction
hirokiyamamoto14
PRO
0
290
Featured
See All Featured
Amusing Abliteration
ianozsvald
1
260
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
950
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
We Are The Robots
honzajavorek
0
310
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Why Our Code Smells
bkeepers
PRO
340
58k
Between Models and Reality
mayunak
4
400
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
What's in a price? How to price your products and services
michaelherold
247
13k
Transcript
便利ライブラリを 実運用で使うか迷った話 @stapy 2019-12-11 mizzsugar0425
お前、誰よ • みずきと申します。 • やっていること↓ ◦ 昼:データ分析のデータ基盤のデータマネジメント (GCP: 特にBigQuery) ◦
夜:PythonでWebアプリ開発(Pyramid, PostgreSQL, Nuxt.js, TypeScript) ◦ つい最近まで仕事で Djagoいじってたので趣味で Django触ったりも ◦ Twitter -> @mizzsugar0425 • コーヒーと自転車が好き
前提 • これは、ある便利ライブラリを実運用で使うか迷い、こんな観点から判断し たよという話です。 • 意思決定の観点は組織やプロジェクトの内容によって異なると思います。 • これは、「こうすれば絶対に上手く行く!」という話ではありません。よっ て、このスライドの通りに意思決定したけど上手く行かなかったとしても責 任を負いません。
SNS連携の実装をしていた時のこと
著名なWEBサービスのPython SDKはあるか? WEBサービス・アプリ 公式 非公式 Google googleapis/google-auth-li brary-python - Line
- - Facebook - mobolic/facebook-sdk Twitter - - ※ユーザー認証ができるもの。違ったら教えてね。
著名なWEBサービスのPython SDKはあるか? WEBサービス・アプリ 公式 非公式 Google googleapis/google-auth-li brary-python - Line
- - Facebook - mobolic/facebook-sdk Twitter - - ※ユーザー認証ができるもの
どうする??
PyPIの嬉しい反面困るところ • 極端に言えば、誰でもライブラリを登録できる • 逆にいうと、きちんとメンテナンスされなかったり、ちゃんとした組織が作 成していないライブラリも混じっている。玉石混交。 • 実運用で使う場合、「お、便利ライブラリだ! pip install
~!」と早ま らず吟味する必要がある。
気にしたところ • ライセンス • IssueやPRに対応しているか • 継続的にメンテナンスされているか • ソースコード
ライセンス • GPLライセンスだとライブラリを使用したらソースコードを公開しないとい けないので、秘密にしたかったら使えない • MITやBSDだと公開義務はない →facebook-sdkはApache-2.0。公開義務はない
IssueやPRがほったらかされていないか • バグ見つけてもMaintainerから返信がなかったら今後の保守が大変そう
PRやIssueに今でも対応していることがわかった
継続的にメンテナンスされているか • 便利ライブラリに足引っ張られたら本末転倒
(できたら)ソースコードを読む • 今まで見たものでも判断に迷ったら • できたらでいいです。私もWebフレームワークやハッシュライブラリは読ん でないです。
結論: facebook-sdk(非公式)を使う GOOD • Apache License 2.0なのでソースコード公開義務がない • IssueやPRが無視されていない •
最新の更新は1ヶ月以内されていた (2019年12月時点) • 「ライブラリ使わないで自分で実装したら大体こん な感じだろうな」というソースコードだった Improvements • ドキュメントが更新されていない -> 気になるのでIssue投げて必要に応じて PRあげようと思う • そもそもFacebook公式がSDK出してほしい〜(どうしようもない)
ありがとうございました!