見出し画像

iOSDC Japan 2023に参加しました


はじめに

こんにちは、新卒2年目の、まるです。
ナビタイムジャパンでiOSアプリ開発を担当しています。

2023年9月1日(金)~3日(日)にオンラインとオフラインで開催された「iOSDC Japan 2023」に参加しました。その振り返りを兼ねてレポートをしたいと思います。
iOS開発にまつわる技術セッションを聴講したり、他社のエンジニアとの交流があったりと、とても充実した3日間でした!

また、今回は最終日をオフライン会場である、早稲田大学 西早稲田キャンパスへ行ってイベントに参加してきました。

iOSDCとは

iOSDC Japan 2023はiOS関連技術をコアのテーマとしたソフトウェア技術者のためのカンファレンスです。

日本中、世界中から公募した知的好奇心を刺激するトークの他にも、パンフレットに掲載された技術記事、参加者であれば誰でも作れる即興のトーク・アンカンファレンスなど、初心者から上級者まで楽しめるコンテンツがみなさんを待っています。

iOSDC公式HPより一部抜粋, https://iosdc.jp/2023/

メインのトーク以外では、iOSDC Japan 2023では「交流」がキーワードとなっており、オフライン・オンライン共にコミュニケーションの場が用意されていました。

オフライン会場ではトークの後にスピーカーと直接話せるAsk the Speakerが開かれており、コミュニケーションがとりやすくなっていました。
オンラインではニコニコ生放送のコメント機能で、トークへのリアクションがリアルタイムで見られるので盛り上がりました。
他にもスポンサーブースでは、アンケートやクイズなどの企画が開かれていて、楽しみながら各会社の活動を知ることができました。トークは3日間全てで行われていました。

気になった技術トーク

トークは3日間全てで行われています。2023年は最多トーク数だったそうです。
私が気になった技術トークの一部を以下で紹介したいと思います。

Appleにおけるプライバシーの全容を把握する by akatsuki174

ナビタイムジャパンでは移動に関するサービスを扱っているので、位置情報の許可をユーザーに求めることがあります。その他にも広告の表示があるため、Appleのプライバシー管理について、とても興味深かったです。
プライバシーの許可についてはアプリの審査でも重要なポイントなので、iOSアプリ開発者としてしっかり知っておきたい部分だと思いました。

メタバースプラットフォームを支えるiOS開発と運用 by TAAT

トーク内容で気になった点は、iOSアプリの開発の運用でトランクベース開発という手法を使っているということでした。
私はトランクベース開発という、常にmainブランチへマージして進める方法を初めて知りました。この運用方法では、開発中の機能もmainにマージしますが、Feature Flagを使って公開を制御しています。
小さい粒度でマージを行うので、競合解消のコストが低い事や影響範囲の把握がしやすいのがメリットのようです。

Xcode Previewを気軽に利用するためのDI戦略 by まつじ

近年iOSアプリ開発で使用され始めているSwiftUIですが、特徴の一つとして実機やシミュレーターで実行しないでも開発中のコードがリアルタイム反映されてプレビュー出来る機能のXcode Previewがあります。
このトークでは、そのXcode Previewを使うために行うDependency Injection(DI)上での課題をサンプルアプリを用いて具体的に説明されていました。
通常のDIだと依存をアプリのトップレベルからバケツリレーを行い実装コストが大きくなるのですが、トークでは各Viewで必要な依存だけをDIする新しい手法が提案されていました。

余談ですが、まつじさんのスライドはXcodeでビルドできるのですが、まさか発表スライドがビルドされてくるとは思わないので面白いなと思いました。
(まつじさんのビルドできるスライド:https://github.com/mtj0928/iOSDC23)

iOSではじめるフォトグラメトリ by 堤 修一

このトークは、iPhoneで街並みの空間を3Dモデル化する内容でした。
フォトグラメトリとは複数枚の写真から3Dモデルを生成する技術のようです。
単純に物体の3Dモデルを生成するのは簡単なようですが、空間だと歩きながら写真を撮影するので手ブレによるモデルのテクスチャが汚くなったりしてしまって、それらを上手くいくように試行錯誤するお話が楽しかったです。

こういった3Dモデルの生成は私の業務には直接関係ないですが、単純にワクワクするものを技術で叶えられるのは楽しいと思います。

参加してよかったこと

人との繋がりが増えた

イベント最終日の懇親会に参加したりオフライン会場に行くことで、スピーカー含め社外のエンジニアの方々と知り合えたことです。
元々X(旧Twitter)で知っていた方や元弊社の方と話しているうちに、いろんな人を巻き込んで話していて、人の輪が広がる感じがとても良い時間だなと感じました。

モチベーションが上がる

単純ですが社外の有名なエンジニアの方と交流できるので、活力をもらいますし勉強に対するモチベーションが上がります。
また、直接話す事で出来るエンジニアとはいえ、同じ悩みを抱えていたりするので、同じ人間なんだなと思えて自分も頑張ろうと思えました。

iOSアプリ開発周辺のノウハウが学べる

例を挙げればキリがないですが、自分でプログラムするところから、長い大規模開発の運用の歴史まで、さまざまな技術以外のお話まで聞くことができました。
普段の業務内ですぐに試せそうなコードリーディングの仕方や、困りごとの解決法も発表されていたので、どこの現場でも起きうる問題なのかと認識できたことも良かったです。

おわりに

今回iOSDCをオフラインで参加してみて、知識や人との繋がりが増え、モチベーションが上がり、とても良いことがたくさんありました。
このやる気を持って、iOSをもっと理解してどうやったらサービスに貢献できるのか考えられるようになりたいと思いました。

技術カンファレンスというと敷居が高く感じられますが、新卒2年目の私でもワイワイとした雰囲気で参加できます。
来年もぜひ参加したいですね。