Continuity is The Father of Success

Androidアプリとかゲームとか。毎日続けてるものについて。

DroidKaigi 2019に参加しました

昨年に引き続き、今年もDroidKaigiに一般参加してきました。わいわい。

droidkaigi.jp

開催前の話

今年も conference-app にコントリビューションしました。 本当はリポジトリが公開されたらすぐに取り掛かるつもりだったのですが、色々とあって取りかかれず。来年はもうちょっと深いところに関わりたいなーと思っています。

1つめ

Change OnPreDrawListener object to field variable to avoid leak by koji-1009 · Pull Request #668 · DroidKaigi/conference-app-2019 · GitHub

issueの起票から行ったのでちょっと思い入れの深いやつ。 トップ画面のリークを解消できたので、コントリビュートできた感があったのを覚えています。

原因もViewTreeのObserveタイミングが起因だったりと、去年読んでいた技術書のアレコレがあったから対応できたよなーとも。

2つめ

Fix missing visiblity change by koji-1009 · Pull Request #786 · DroidKaigi/conference-app-2019 · GitHub

起票してくれた人がすごいと思っているもの。再現動画を撮っている時、早い時は2回目で発生するのに、発生しない時には7~8回やってもおきなかったのを覚えています。 Groupieの使い方がわからず、そもそも何が正しいのかから調べたので対応コードに対して調査に時間がかかりました。

3つめ

Avoid IndexOutOfBoundsException at RecyclerView.getChildAdapterPosition by koji-1009 · Pull Request #798 · DroidKaigi/conference-app-2019 · GitHub

アプリ初回起動直後に画面遷移をするとクラッシュするケースの対応でした。出社前に再現報告を上げて、電車の中でちょっとやり取りをし、出社後すぐにPRを作成した覚えがあります。 問題に対してどこまで防御的にコードを書くべきか、また考えるきっかけになったいいケースでした。あとクラッシュなので直せて素直に嬉しいやつ。

一方で、もともとのチケットを調査はしてみたのですが原因の特定まで至れなかったのが悔やまれます。 どこで……どこでリークしているんだ……。

開催中の話

2月7日、8日両日とも参加しました。ただ、本業の疲労が確実に体にきていたので、途中で体力的にきつかった……!

印象深かったセッション:デザイン

youtube.com

触れられているインタビュー、数年前に読んでいた覚えはあるのですが、ちゃんと読んでなかった模様。

マテリアルデザインにおける「多様性」について、もっとエンジニアとして意見を持つべきだなと反省しました。 8日の「Android アプリ開発における、デザイナーとエンジニアのワークフロー」と合わせて、社内のデザイナーと取り組みたいなーと思っています。

www.youtube.com

印象深かったセッション:DI

www.youtube.com

kobakei.hatenadiary.jp

Daggerのコンポーネントって/モジュールって、そういう文脈の中で出てくる概念/言葉だったんだー! という目から鱗が落ち続ける30分でした。 最前列で聴けてよかった。

DI知らなかった時に手渡されたかったというお気持ちが強い。

印象深かったセッション:テスト

www.youtube.com

docs.google.com

www.youtube.com

www.slideshare.net

他にもテスト関連のトークはあったのですが、時間の都合上この2つに参加しました。 Androidアプリ、Java/Kotlinで書いている時にはある程度バグらないコードを書く自信はあるんですが、Flutterで書く時にはなーと思っているところに刺さりまくっています。

サバンナで生き抜くためにもTDDしなきゃ。

開催後の話

Flutterで"何か"を作ろうとしているのですけれど、TDDを実際にやってみようかなと考えて取り組み出したところです。 まだ不慣れ、というかCIでテストが回るように試行錯誤中。

テストをちょこちょこ見たり読んだりする機会は増えてきたのですが、まだ業務含めて成果をうまく開発に持ち込めていません。 そういったところを含めて、まずは自分の好きなものの開発からテストに慣れていきたいなと思っています。

そもそも仕様が決まっていないとき、EvernoteではなくAndroidStudioに向かいながら考えられるだけで、自分にとっては効果があるのでは……!? というのが2日目の感想です。

さいごに

DroidKaigiは、毎年刺激が多くて「まだまだやらないとなー!」という気分に。 一方で「あ、このやり方はやってたな!」みたいな、自分の技術スタックの積み直しみたいな側面を感じています。

スピーカー、スタッフの皆さんには感謝を! 来年も参加するぞ!