[Dd]enzow(ill)? with DB and Python

DBとか資格とかPythonとかの話をつらつらと

Django Congress 2018 で登壇してきました

かなり更新をサボってしまっていました。2018/05/19に開催されたDjangoCongressにスピーカとして参加してきましたので参加記録をまとめておきます。

発表内容

いまさら振り返る Django Migrationという内容でmanage.py migratemanage.py makemigrationsのソースを追っかけたりする内容でした。

speakerdeck.com

45分で資料が90枚あって余裕がないと思いきや、急ぎすぎて7分あまるとか色々と後悔する部分はありますがいい経験ができたと思います。

もともとこの内容は自分が雰囲気でマイグレーションをやっていたのでちゃんと中身を知りたいなと思ったのがきっかけで、CfPを出した時点ではまだソースをちゃんと読み込んではいませんでした。CfPの倍率も3-4倍と聞いていたので、さすがに通らないだろうと高を括っていたらまさかの採用、後に引けなくなり必死こいてDjangoのソースを読んでました。なんというか、登壇駆動形学習って感じでしたが終わってみればDjangoへの理解が深まったのでとても良かったです。 (同時期は公私ともにテンパっていたので結構死にそうではありましたが)

DjangoCongressという新しい場を作られたスタッフ及び他の参加者の方には感謝しかありません。

他の方の講演について

自分が聞けた範囲での感想です。(正直自分の講演まで気が気でなかった)

できる!Djangoでテスト!(tell-kさん)

Djangoのテスト、というかそもそものテストとはどうあるべきかといった話から進んでいく内容でした。@patchは自分も以前嵌ったりしたのでそういったところがきれいにまとめられていてとてもわかり易かったです。

responsesなんかは知らなかったので、使ってみようと思います。

Django After Web 2.0(Tzu-ping Chungさん)

SPAとかRestとかWEB2.0の時代でDjangoがどのような立ち位置であるかという内容でした。英語セッションでしたので実は雰囲気しかわかってないですが、Djangoのセッション情報等をReactやVueといったクライアントサイドにどのように渡すかなんかはまさに悩んでいた内容なので参考になりました。

Django/WSGIミドルウェア入門(thinkAmiさん)

WSGIミドルウェアやDjangoミドルウェアについて、とてもわかり易くまとめられていた内容でした。両ミドルェアについてフックされるタイミングがしっかりまとまっており、また複数のミドルウェアを連携した際にどのような相互作用を持つかなどもわかりやすく説明されていました。サンプルのコードもシンプルながら、動作を理解する上で十分な内容であり絶妙だと感じました。

いまのプロジェクトでは独自のミドルウェアを書く機会はそう多くないですが、参考にしたいと思います。

Password Hashing(Yuri Umezakiさん)

そもそもパスワードのハッシュ化とはなんぞやという話から、昨今はビットコイン等の影響でハッシュ処理の高速化が進んでしまい、その影響でパスワードのハッシュ処理により強固なものが求められるという内容でした。

また、Djangoではバージョンアップをすると次のログインのタイミングで該当アカウントの既存のパスワードについて、イテレーションをあげたハッシュ処理をし直すところなんかは知らなかったのでDjangoやりおる・・って思いました。

Django REST framework 実践入門(Masataka Araiさん)

DRFについてSerializer等を中心に入門的な部分から、実際につかっていくとハマるであろうケース(ネストしたモデルの更新等)の解説的な内容でした。だいたい困るとサードパーティでいい感じのパッケージがあるというのはOSSっぽくてとてもいいなと思います。今のプロジェクトでは中々DRFを組み込むタイミングがないのが悩みどころですが。。。

来年のDjangoCongress

正式な発表は特になかったですが、きっとあるかと思っています。もしあれば次はDjano Channelsで何か話したいなと思います。(その前にPyConのCfP考えないと・・・)