[iOSDC Japan 2019 リポート] 俺々RxSwift / 試行錯誤LT2本 / iOSDC全体感想

こんにちは。きんくまです。iOSDC Japan 2019に参加しました。

これまでのレポート

day1

- [iOSDC Japan 2019 リポート]「実機の管理とおさらば!AWS Device FarmでiOSのテストをしよう!」を聞いてきた
- [iOSDC Japan 2019 リポート]「iOSアプリのリジェクトリスクを早期に発見するための取り組み」を聞いてきた
- [iOSDC Japan 2019 リポート] 「めくるめくシェーダアートの世界」を聞いてワクワクした!

day2

- [iOSDC Japan 2019 リポート]「iOSアプリに「意識」は宿るのか?ディープラーニングの先にある人工知能(AI)」を聞いてきた
- [iOSDC Japan 2019 リポート]「ソーシャルライブサービスにおけるデジタル化粧の仕組みと実装」を聞いてきた

iOSDC Japan 2019 最後の記事になります。

自作して理解するリアクティブプログラミングフレームワーク

発表:y.imajoさん @yimajo

WWDC19で発表されたCombine.frameworkはリアクティブプログラミングという言葉では発表されなかったものの、複雑になりがちなイベント処理をデータの流れとして統一的に扱い、イベントへ反応する処理を組み合わせる宣言的なコーディングを実現します。 このことによりCombine.frameworkは最近のリアクティブプログラミングのパラダイムに沿ったフレームワークと言えるでしょう。これに備え、我々はリアクティブプログラミングのパラダイムを仕組みから理解する時がやってきたのです。

このトークでは、現状のリアクティブプログラミングフレームワークであり広く普及しているRxSwiftを構成するソースコードを解説し、それを参考にテストコードを交えながら最小限の「偽・リアクティブプログラミングフレームワーク」をトークの中で作成していきます。

感想

RxSwiftの仕様をみたす、俺々RxSwiftを作ることで理解を深めよう!というコンセプトでした。(発表では偽RxSwiftとされていた)

  1. RxSwiftを使ってテストコードを書く
  2. RxSwiftの仕様に満たすように自作RxSwiftのコードを書く
  3. RxSwift側をコメントアウトして、自作のテストが通ればOK

という感じに進められてました。

また発表の形式がちょっと変わってました。

  1. スライドでやること説明
  2. 3(or6?)倍速のライブコーディング動画を流しながら、何をやっているか解説
  3. スライドに重なるようにTwitterの特定のハッシュタグから取得してきたコメントを流す(ニコニコ動画のような感じです)

スライド上にコメントを流していたのは、自作のmacアプリだそうです。発表に反応した受講者からのTwitterコメントも拾って画面に現れていたので、会場は盛り上がってました。

LT 1ヶ月半でプッシュ通知許諾率を17%から40%にあげた話

発表:akutsuさん @zsky_83325

スライド

感想

  1. プッシュ通知の許諾率を上げたい!
  2. 導線にこだわって、ユーザーにきちんと説明した上で許諾をとるようにした
  3. ところが!許諾率が全然良くない、、
  4. 導線が奥に行ってしまっていたのが原因。許諾までたどり着いていないユーザーも多かった
  5. 初回起動直後に許諾を出すようにした
  6. 急増!!!!!!!!

という内容でした。開発者の思う通りにはユーザーは反応してくれないという学びがありました。こういう施策はやってみないとわからないです。結果的には他のアプリと同じように初回起動直後に許諾をとることになったわけですが、やってみたことで確信が得られたわけで、とても良いなーと思いました。

LT ARKitの壁認識で、壁にぶち当たった話

発表:shibatomさん @shibatom_dev

感想

  1. 壁にARを使って実物大のポスター(or額)を貼るアプリを作りたい
  2. 特定の手順を踏んで壁を認識させるようにした
  3. 開発者は毎回成功するけど、何人かのユーザーにテストを頼んだらほとんど失敗してしまった
  4. 結局当初想定した方法はあきらめた
  5. アプローチを変えて、壁ではなく床を認識させる
  6. そこにARでポール(棒)の上にポスターを出してもらった後、そこから壁に近づけてもらうようにした

壁にポスターを貼るARアプリを作ろうとした試行錯誤の話でした。

プロトタイプを作りユーザーテストを早い段階でしたことで気づきが得られた良い例だと思いました。やりたいことに対して実現方法がまだ確立されていない場合は、やってみないとわからないことばかりです。こちらも、先ほどのLTと同じくとても良い試みだと思いました。

iOSDC Japan 2019 に参加してみた感想

ブログを書くのがちょっと大変だったりしたのですが、いろいろな技術だったり試みが聞けて良い刺激になりました。まだまだ勉強することはたくさんありますねー!