DroidKaigi 2017で登壇してきた
2日目の16:00から「Error Handling in RxJava」というタイトルで、RxJavaにおけるエラーハンドリングについて発表してきました。
スライド
概要
- RxJavaのおさらい
- Reactive Extensions for Java
- マーブルダイアグラム
- RxJavaにおけるエラーハンドリング
- Catch(エラー発生時にリカバリーを行う)
- onError:エラーをキャッチする
- onErrorReturn:エラーをキャッチして代わりのデータを返す
- onErrorResumeNext:エラーをキャッチして代わりのObservableを返す
- Retry(エラー発生時に再購読を行う)
- retry:エラー発生時に再購読する
- retryWhen:再購読する条件を細かく制御する
- Catch(エラー発生時にリカバリーを行う)
- 基礎編
- エラーをトーストで表示する:onError
- 代わりのデータを表示する:onErrorReturn
- エラーの種類で処理を分岐する:onErrorResumeNext
- リトライする:retry
- リトライするかをユーザーに尋ねる:retryWhen
- 応用編
- リトライ&キャッシュ:retry/onErrorReturn
- リトライ&キャッシュ&トースト:retry/onErrorReturn/onError
- 実践編
- Retrofitのエラーハンドリング
- RxJavaCallAdapterの拡張
- Retrofitのエラーハンドリング
振り返り・感想
資料
1日目の終了後に自分の資料を改めて見直して、後から資料単体で見た場合に情報量が少なく分かりにくいのでは、ということに気が付き資料を修正した。修正後に一度だけ通しで練習をしたものの、基本的には情報量を増やす方向で修正を行ったので、当日は少し急ぎで喋った。結果として、中盤を過ぎた辺りで早すぎることに気が付き、後半は少しゆっくりと喋った。直前に資料修正は良くないし、発表練習では話す内容だけでなく、タイムマネジメントも含めて練習すべきという当然の学びを得た。
登壇直前
ありがたいことに自分のセッションは立ち見が出た。
RxJava エラーハンドリングのルーム4、立ち見発生です #DroidKaigi #DroidKaigi2017 #DroidKaigi4
— バトルプログラマー柴田智也🔄神様になった日をみて (@tomoya_shibata) March 10, 2017
RxJavaエラーハンドリング見たかったけど,超満員だったのでビデオまつ… #DroidKaigi
— Kuchinashi@Androidすき (@kuchinashi_r) March 10, 2017
セッション前の静かな会場の雰囲気に耐えられず、登壇者席からiPhoneでパノラマで写真を撮るということをやってみた。
まさかの発表者プライベート端末がiPhone #droidkaigi #droidkaigi4
— G_devi (@G_devi) March 10, 2017
登壇者席からiPhoneで写真撮影したけど生きてる #DroidKaigi
— Yuya Kaido | Head of Android - Eureka (@yuyakaido) March 10, 2017
登壇中
前回のDroidKaigiでも同じような規模の部屋で登壇していたこともあり、今回は過度に緊張せずに喋れたと思う。発表中に聞いている人の表情や頷き具合とかを観察しながら説明の仕方を調整する余裕もあった。具体的には、retryまでは頷きながら聞いてくれる人がかなりいたので練習のときよりも説明を軽めにして、retryWhenに入った辺りから今まで頷いてくれていた人の表情が曇り始めたのでより詳細に説明するようにした。
登壇後
登壇後はオフィスアワーとして質問を受けていましたが、その場で分かりやすかったです!と言っていただけたりTwitterでもいくつか反響をいただけたりして素直に嬉しかった。
資料と説明が丁寧でわかりやすい #DroidKaigi4
— FURUKI Eiji (@fullfool) March 10, 2017
retryWhenは説明不足なところもあった模様。反省。
RxJavaにおけるエラーハンドリングがわかりやすい(ただしretryWhenを除く) #DroidKaigi #DroidKaigi4
— グーゴルプレックス (@pmtud) March 10, 2017
まとめ
プロポーザルを出す前はこんなネタで登壇していいのか悩んだが、結果的には登壇して本当に良かったと思います。同僚のMoyuruAizawaがオープニングトークでも言っていましたが、自分の当たり前は必ず誰かに需要があるので、悩んだらとりあえずプロポーザルを出せばいいんじゃないかなと思います。僕は来年も絶対プロポーザルを出します。
皆様2日間おつかれさまでした!オープニングトークでも申し上げましたが、あなたの当たり前のは誰かに需要があります。来年は運営がパンクするほどのプロポーザルを出しましょう!!!
— Moyuru Aizawa (@MoyuruAizawa) March 10, 2017