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
便利ライブラリを実運用で使うか迷った話
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
Transcript
16 slides
便利ライブラリを 実運用で使うか迷った話 @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出してほしい〜(どうしようもない)
ありがとうございました!
More Decks by mizzsugar
See All by mizzsugar
自分のPCにPython環境を用意して_VSCodeでStreamlitアプリを動かすまでの8ステップ.pdf
mizzsugar
0
150
Colabのみで初心者向けPythonハンズオン.pdf
mizzsugar
0
110
厳しさとゆるさの間で迷う人に捧げる個人開発記
mizzsugar
0
79
SQLModel入門〜クエリと型〜
mizzsugar
3
1.7k
フルリモート向いてないと思っていた私が、なんだかんだ健やかに 1年半フルリモート出来ている話
mizzsugar
1
180
Djangoでのプロジェクトだって型ヒントを運用出来る!
mizzsugar
4
9.2k
「動くものは作れる」の一歩先へ 〜「自走プログラマー」の紹介〜
mizzsugar
0
670
pytestの第一歩 〜「テスト駆動Python」の紹介〜
mizzsugar
3
500
データ分析ツール開発でpoetryを使う選択肢
mizzsugar
1
1.2k
Other Decks in Programming
See All in Programming
AIが実装を担う時代の「技術設計」と「チームマネジメント」
kamina_zzz
2
260
コード生成時代のAPI定義を支えるRequest Spec移行
pvcresin
0
140
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
180
조합이폭발하는디자인시스템이걸눈으로도테스트하라고요
giljongyu
0
750
小さなアプリを作って公開するまで
onozaty
0
180
AI時代のTerminal環境を UNIX哲学で設計・運用する
yasunori0418
1
350
Seven New Principles of Software Engineering
yegor256
0
500
Engineering Biometric UX Across Android Versions | DroidKnights 2026
ryunen344
1
210
AI時代のFlutter品質設計 — アプリ品質を守るQuality Layers
omatty198
0
380
PyConTW 2026 - AI Coding 不只是工具升級, 區域醫院醫療資訊系統協作開發與資訊團隊轉型實踐
cclai999
0
250
[Kotlin Fest 2026] eBPF Tracing for Kotlin
takehaya
1
140
[DroidKnights 2026] Workflow AX: From Auto-Documented Policies to E2E Testing
raeminkang
0
570
Featured
See All Featured
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
430
Tell your own story through comics
letsgokoyo
1
1.1k
Designing for humans not robots
tammielis
254
26k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.3k
Thoughts on Productivity
jonyablonski
76
5.5k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
300
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
330
Marketing to machines
jonoalderson
1
6k