AndroidエンジニアがiOSDC Japan 2023に現地参加してみた!
目次
はじめに
「ニフティ不動産」アプリのAndroid側の開発を担当している、TS-Elfenです。
先日(9月1日〜9月3日)開催された、iOS関連技術をコアのテーマとしたソフトウェア技術者のためのカンファレンス、「iOSDC Japan 2023」に現地参加してきました!
iOSの実装に関してはまだまだ勉強中なのですが、楽しいしとても勉強になるカンファレンスだったので、その感想などをご紹介しようと思います。
今回のiOSDC Japan 2023の概要
今回のiOSDC Japan 2023は以下のような日程で開催されました。
- 0日目(9/1(金) 15:30-20:00)
- 様々なスピーカーによるトーク
- 1日目 (9/2日(土) 10:00-18:30)
- オープニング
- スポンサーや一般参加の方々による様々なトーク
- ルーキーズLT(登壇経験が少ない方向けのLightningTalkセッション)
- 2日目(9/3(日) 10:00-18:30)
- スポンサーや一般参加の方々による様々なトーク
- 通常のLT
- クロージング
というような流れになっております。これだけみると色々なトークを聞く受動的なイベントなのか?と思いますがそうではありません。
- オープニングパーティ
- DJの方を呼んでワイワイ楽しく交流を深められるイベントです!
- 懇親会
- Ask the Speaker(トークを終えたスピーカーに直接質問や相談ができるコーナー)
- 企業ブース(常時様々な企業の担当者やスピーカーがいる)
上記のように、会話や質問等でコミュニケーションを取れる場が多数用意されています。これらの場に触れ、参加することで、iOSDC コミュニティの一員として人脈を広げたり、様々な知見を得ることができました。
また、私自身がそうだったのですが、カンファレンスというと学会とか会議というイメージが強く、堅苦しいのかな…と思っていました。iOSDCでは、夕方からはビールが無料で配布されていたり、ソフトドリンクやコーヒー、お菓子などの配布があり、リラックスした雰囲気で楽しむことができました。また、企業ブースでもアンケートコーナーや楽しめる企画がいろいろと用意されており、文化祭のような雰囲気で他の会社さんの情報に触れることもできます。
聴講したトークの一部の感想
それでは、本カンファレンスのメインコンテンツであるトークの一部について紹介します。私は、基礎的なセッションや、弊社で採用していない技術についてのセッションを中心的に聴講していました。これは、iOS側を担当しているメンバーがプロダクトに活用できそうなセッションを見ていたので、その他のセッションも共有したかったのと、基礎的なセッションを見ることで視野を広げようと思ったのが理由です。
watchOS開発最前線
内容
- watchOS 6からwatch単体のアプリが作れるようになった
- UI作成は、今はSwiftUI一択
- UIKitは使えなくて、WatchKitが使える
- watchOSに最適化されたSwiftUIの挙動をする
- TabViewがiOSとは異なる表示になっていたりする
- 1画面に表示できる情報が極端に少ない
- OSの時計の4タブはwatchだと別アプリ
- iOSと同様の実装だと動かない部分があり、ラッパーを使って回避するなど、独特のコツが要る
- 実機デバッグがやりにくい
感想
- watchOSもiOSと同様にMacに繋いでやるものだと思っていたので、びっくりしました。
- また、独特のコツが必要みたいなので、作る時は多分試行錯誤しながらになるのかな、と思いました。
- スマートウォッチ向けアプリの開発は今のところ計画にはありませんが、AndroidにもPixel Watch等があるので、開発する時には気をつけねばならないなと思いました。
モバイルアプリの行動ログの運用つらさ解消法
内容
- 何が辛いのか?
- ほしいログが送られていない。追跡しようとしたら一部分抜けてた!とか
- ログの管理ができていない
- スプシで管理→アプリに反映の流れ
- スプシ/アプリに反映漏れが起こる
- スプシが実態を表さなくなる
- 機能名の変更への対応
- OS間差分
- 行動ログの重要性
- 次の施策のヒント
- 不具合の原因調査
- 仕込んだログがチェックできるアプリ内ログツールをつくった
- ドキュメントベースの型安全な行動ログの自動生成をおこなった
- 今後)未使用のログを検出するlinterを作る
- ログ運用の改善委員会を一人ずつ選定
- 課題の洗い出しとか分類をしている
感想
- 他社でのログに対する取り組みを聞くことができてよかったです。日々の業務の中で、ログ改善に取り組む時間をもう少し多く設けることを検討してみようと思っています。
- 行動ログを取るのにも当然金銭的コストがかかります。さらに、運用で問題があるとその調査にコストがとられますし、計測が間違っているとなると施策の効果の判定も怪しくなります。なので、みなさんも同じような悩みを抱えているのだなと実感しました。
- 弊社のAndroidアプリでも一度スプレッドシートの中身の見直しなど、ログに関する改善をもう少し実施してみようと思いました。
iOSで始めるフォトグラメトリ
内容
- フォトグラメトリとは、写真から3Dモデルを生成する技術
- 写真を複数の角度からとって、画像の重なり合う特徴量を抽出し、モデルを生成する
- 今は、Appleの枠組み(Object Capture)で可能になっている。
- Image CaptureAPI
- 撮影用のAPI
- iOS17の新しいAPI
- Reconstruction API
- 撮影したデータをもとに3D復元を行うAPI
- WWDC23でiOSにもサポートが始まり、実装はたったの2行!すごい。。
- Image CaptureAPI
- Object Captureでは動画入力はサポートしていない
- 撮影した動画からフレーム分割すればよい
- フレームの中から、ラプラシアンフィルタを適応してブレ度合いを判定、ブレてない画像のみを抽出することでモデルの精度向上
- また、撮影の仕方を横向き、広角に変更することで、オーバーラップの特徴量が取りやすく、精度が向上する
- 空などはモデリングしなくてよいので、CoreMLから空の領域を抽出し、マスクをかけることでさらに良いモデルになる
- visionOSにも適応可能!
感想
- ARへの拡張性も高そうで、非常に面白い技術だなと思いました。
- デモの動画や、実演がとても興味深く、Androidでもフォトグラメトリを試したりできないかな、と思わず発表後に調べてしまいました。
最後に
私が今回オフライン参加した目的は、今後iOS側の実装も勉強していく上で、iOSの技術カンファレンスの雰囲気などを掴みつつ、iOSで出来ることがもう少し知りたいというものでした。
上記のような発表を通じて、watchOSやiOSの新しいAPIで出来ること、iOSだけに限らないモバイル開発に係る対応などを知ることができました。
また上記では紹介していませんが、LTのコーナーでは、発表者の方がユーモアを交えながら発表をしたり、聴講者の方々がペンライトを振ったりする要素があり、笑顔の絶えないカンファレンスだと知ることができました。
このように、iOSの知識や経験が浅い私でもすごく楽しめるカンファレンスでした。私と同様に「iOSそこまで詳しくないので参加するのが不安」という方も、ぜひ参加してみてもらえればと思います!
#ididblog
掲載内容は、記事執筆時点の情報をもとにしています。