pyconjp2018に参加して来ました
pyconに参加したあと、私生活がごたごたしていたずいぶん遅くなってしまいましたが、blog書きました。
概要
9月15,16,17,18で開催されたpyconjp 2018に参加してきました。
15日はスプリント、16日がチュートリアル、17,18日がカンファレンスといったスケジュールで、自分はスプリントとカンファレンスに参加してきました。
今年のテーマは「ひろがる Python」
公式サイト : https://pycon.jp/2018/
スプリント
自分はQuantXというサービスでpythonを使用して株価の予想を行うプログラムを作って見るスプリントに参加しました。
Quantは作ったアルゴリズムを売ることができるので、いいアルゴリズムが実装できればお小遣い稼ぎができるといったサービスです。
スプリントでは既にこのサービスでアルゴリズムを売っている人や、QuantXを運営しているSmart Trade社の人がいたためとてもスムーズに開発を進めることができました。
金融の知識も簡単なことならば、その場にいる人に質問したら教えてくれたりと非常に助かりました。
加えて、talib
めっちゃ便利。
これなかったら時間内に何もできなかったと思う。
自分がやったこととしては下記のような感じです。
- チュートリアルを実施して2つのアルゴリズムを実装
- この2つのアルゴリズムを組み合わせてみた
- jupyter環境でQuantX FactoryのAPIを叩ける環境をさわってみた
user slack : https://smarttradeusers.slack.com/messages/C5MMXBTRC/? 公式サイト : https://factory.quantx.io/ SDK Doc : https://factory.quantx.io/quantx-sdk/index.html#
1日目
keynote
アルゼンチンでpythonを広げる活動をやっている人。
pythonを広げる活動をするようになった話をその活動の話だった。
活動の中で彼女に振られたり、ヤギを交通事故を起こしたり、ボリビアの内戦に遭遇しながらも活動を続けており、pythonへの情熱が凄まじかった。
「print "Hello world"
から始まって、現実でもいろんな世界に行くことができた」というまとめが最高にエモかった。
招待講演 東大松尾研流 実践的AI人材育成法
東大 松尾研のリサーチディレクターの中山さん
最初の15分pythonの話がまったくでてこなかったので、途中退出してブースを回っていたのでわからない。
「numpy力」というワードがtwitterで急に流れてきてた。
Webアプリケーションの仕組み
https://scrapbox.io/shimizukawa/PyCon_JP_2018:_Webアプリケーションの仕組み
すごく丁寧なWebの裏側の話だった。
web開発は上から下まで幅広い知識が必要だが、フレームワークを使えば全体を知らなくてもOK。
フレームワークがなぜ生まれたのかをゼロから作って追体験していく話。
会場で使っているフレームワークを聞いていたが、django派が多かった。
実際にコードを動かしながら説明しており、非常にわかりやすかった。
発表内容を参考にして、自分でも一度ゼロから追体験してみるべきだと思った。
あなたと私いますぐパッケージング
ここ1年のパッケージングまわりのライブラリの状況とパッケージ管理のベストプラクティスについて。
パッケジング周りについて、ざっくりと理解できるセッションだった。
パッケージングがsetuptoolsに依存しなくなり、他のパッケージング方法がでてくるかもしれないとのこと。
pipenvでパッケージ管理は問題なさそう。
Pythonで時系列のデータを分析してみよう
https://www.slideshare.net/ssuser49f8441/python-114923273
時系列データにstatsmodelsを適用するだけで、わりと簡単にデータ分析ができるといった内容だった。
もう少し発展的な内容を期待していたので、若干物足りなさはあったが、statsmodelsの使用感はなんとなくわかったのでよかった。
Pythonistaの選球眼(せんきゅうがん) - エンジニアリングと野球の目利きになる技術
野球のデータ分析のPFを作ってきた話を過去のpyconでの発表を振り返りながら、最近作った環境の説明。
選球眼とは「毎日発生する【選択と決断】の繰り返しの中で【選択と集中】ができること」
選択するためには「技術力」を磨くこと「決断」を恐れないこと。
集中するためには、実現したいことを「言語化」し、言語化したものから決断する「ルール」を作り、「時間」・「お金」といったリソースを集中することが大事とのこと。
2日目
2日目は若干体調が悪かったので、午後からyoutube liveで視聴しながらtwitterでつぶやいて参加してました。
REST APIに疲れたあなたに送るGraphQL 入門
RESTの問題点を上げながらGraphQLでそれをどうやって解決しているのかの説明。
後半はAWSのApp SyncでGraphQLを使ってみるデモ。
pythonでGraphQLを使用する話を期待していてので、少し期待外れだったが、GraphQLの概要を理解する意味ではよかった。
複数アプリケーションのプロセスとログを管理するための新しいツールと手法
Jaffleというツール説明 : 複数のpythonアプリケーションと外部プロセスをまとめて管理
https://jaffle.readthedocs.io/en/latest/
開発環境でログの管理を手軽にできるツールがあると確かに便利そうだった。
あとで触ってみる。
Pythonによる異常検知入門
異常検知自体の説明から入り、異常検知の各アルゴリズムの説明とpythonでの実装方法の話だった。
スライドが非常にわかりやすく、異常検知についての理解は深まったが、時間的にpythonでの実装にあまり触れられてなかったのが残念。
異常検知自体の入門としては非常に参考になった。
Django を Zappaで構築してServerless Python のベストプラクティスを探る
いろいろ調査した結果、python で serverless なら zappa だとなったのでそれの発表。
serverless framework ・ zappa ・ chalice について調査し、結果としてzappaが今のところベストプラクティスとのこと。
zappaはDjango zappaが元になっていて、pythonistaが使うなら一番しっくり来るらしい。
Djangoだけじゃなく、flask等でも使うことができるとのこと