はじめに
こんにちは。Toyoshinです。普段は北海道の大学に通っています。iOSDCに行ってみたいなーとは思いつつ東京は遠いのでなかなか行けなかったのですが、それでも昔から参加したいと思っていたカンファレンスに今回初めて参加することができました。
I will blog. 自分にとっては初めて聞くフレーズだったんですが、めちゃくちゃいい言葉だと感じてます。3日間本当にたくさんのセッションが開催されて、またたくさんの方々と交流する中で、こうやって自分でブログを書くことで聞いたこと学んだことを振り返ることができるとてもいい行動だと思いました。
タイトルの通り、私は現在HCI(ヒューマンコンピュータインタラクション)という分野の研究室でUI/UXについて研究しています。個人的に興味深いセッションは本当に沢山ありましたが、その中でもHCIの目線で特に印象に残ったセッションを中心に振り返ります。
また、今回は、STORESさんの支援制度を受けて参加させていただきました!北海道ってモバイルエンジニアのイベントが体感少ないんですよね。今まで色々なイベントの開催を見かけても、北海道からは遠い地域なことが多く、なかなか簡単に参加することができませんでした。今回のiOSDCも例外ではなく、自費参加となると厳しかったと思います。そんな中、Xでこの支援制度を見つけ、交通費や宿泊費の援助を受けながら参加できると知り、自分にも参加のチャンスがあるかもしれないと思い応募させていただきました。選考にはオンライン面接もあり、多くの応募者がいることは予想できましたが、大変ありがたいことに支援制度の対象者に選ばれることとなりました🙇♂️。
Day -1
当日入りだとスケジュールに余裕が無かったので前日の木曜日入りで東京へ移動しました。
行きたかった東京の🍜屋さんへ訪れ、その後入ったカフェで各時間帯にどのセッションを見るか決めていました。(見たいセッションが同時間帯に衝突しまくりで全然決められない)
ホテルは今年の会場の最寄駅である国際展示場駅から、りんかい線で1駅の東雲駅付近で宿泊しました。
有明エリアは比較的高級なホテルが多いのでホテル選びは少し大変でしたが、奇跡的にリーズナブルなホテルを見つけ、快適に過ごせたのでいい選択ができたなと思っています。🏨🏨
Day 0
初日は「Day0」とのことでした。ITだからゼロインデックスなのかなーと納得していましたが、別にそういう意味ではなくて去年までこの日は前夜祭扱いだったみたいです!
iOSDC自体は夕方からでしたが、自分は学生支援を受けているため、昼頃恵比寿にあるSTORESのオフィスに招待いただき、社員の方々や同じく招待された学生と交流しながらランチをいただきました!旅行先では野菜不足になりがちなので野菜たっぷりのお弁当はめちゃくちゃ良かったです。
ランチ中の雑談の中で印象に残っているのは、個人開発アプリを紹介し合う時間で、社員の皆さんはもちろん学生の皆さんも当たり前のように自作のiOSアプリをAppStoreなどにリリースしていて、レベルの高さに刺激を受けました。自分もアプリを紹介したのですが、社員の方に自分の有料アプリに興味を持っていただけたようで、インストールしていただきました。嬉しかったです。
iOSDCの会場には夕方に到着しました!(朝早くから準備してくださったスタッフの皆様、本当にありがとうございます…!)
会場に入って驚いたのは企業ブースの多さでした。会場内には40以上のブースが連なっていてなかなか回りきれないという気持ちもありながら、これが大規模カンファレンスなんだとそこで実感しました。
受付でビンゴカード形式のスタンプカードを受取り、各企業ブースを周りビンゴが揃うと受付にある福引きを回すことができます。セッションを見ながら初日ですべての企業を回り切るのはかなり難しくて、自分は丸3日かけてブースを回りきりました。ブースをすべて回りきった後に回した福引きで、なんとiOSDCTシャツをGETすることができました!やった!
企業ブースの企画で面白かったのは、LINEヤフーさんのAIのコードを見分けるクイズ企画と、pixivさんの「SwiftUI秘密の修飾子」というアプリです。SwiftUI秘密の修飾子は特に面白かったので、TestFlightだけでなくAppStoreにリリースしてほしいなと思いました。
day0のSugiy@u5_03さんによる 手話ジェスチャーの検知と翻訳~ハンドトラッキングの可能性と限界~は、Apple Vision Proのハンドトラッキングを用いた手話検知ツールを題材に、その基礎技術から現状の限界までが語られました。
ハンドトラッキングは、物理的なコントローラーを不要にし、より直感的で自然な操作を実現する鍵となる技術です。しかしその一方で、誤認識や認識範囲の限界はユーザーに「意図通りに伝わらない」というストレスを与え、大きな認知負荷を生む原因にもなり得ます。そんな中でApple Vision Proのハンドトラッキング精度はどの程度なのか気になっていたので、自分にとって貢献の大きいセッションだと感じました。ジェスチャ検知のライブラリを作成して頂いたのも非常にありがたいです。そのまま研究で使えそうな気がします。
day0のakkey@AkkeyLabさんによる アセンブリで学ぶCPUアーキテクチャ では、CISCとRISCの違いの話から、Appleが今までどのような変遷を経てきたかを紹介しつつ、実際にアセンブリのコードで書かれたスタックトレースをざっくり読み解く方法についてお話されていました。私は情報系学生なので、CISCとRISCは4年前ぐらいに講義で聞いたな〜懐かしいなq〜!という気分で聞いていました。x86はCISCで、AppleSiliconではiPhoneで成熟したRISCのアーキテクチャであるということぐらいは学校で学んでいましたが、それより前のPowerPCがRISCだったということはこのセッションで初めて知りました。今まではRISCって何か「新しい」アーキテクチャだというイメージがあったので、それはちょっと間違っていたんだなという学びがありました。
セッション後半のスタックトレースを読み解く話も学びになりました。自分はアセンブリのオペコードを何も覚えていないので今まではスタックトレースのアセンブリを読もうと思ったことが一切無かったのですが、生成AIが発展している今はこれをAIに投げることでポンコツなXcodeは教えてくれない詳細なエラーが分かって良さそうだなと思いました。今後実践したいです。
Day 1
STORES CAFE at iOSDC Japan 2025
学生支援生はランチ会にも招待いただけるとのことで、ランチ会にも参加させていただきました。
有明のメヒコでカキフライ定食をいただきました。店内は入り口からしておしゃれで大きな水槽があちこちにあってとてもきれいでした。この日は朝からミスドのドーナツも食べていたので、お腹は満充電になりました。
Day1のまつじ@mtj_jさんによるカスタムUIを作る覚悟からは、実際にカスタムUIを使ってアプリを開発した際の体験談をもとに、カスタムUIを使う際に陥りやすい罠と必要な覚悟について学ぶことができました。
自分も昔は独自のデザインでかっこいいアプリを作るぞ!なんて夢を見ていましたが、最近の考えではAppleが提供するAPIを使うことは多くの場合に最適だと思っています。本当にそのUIはどんな国のどんな人々にとっても受け入れられるかわかりませんし、iOSプラットフォーム全体で一貫したUIを用いて、ユーザが新しいアプリを使っても、なんとなくそのUIとのインタラクション手段がわかるという体験はユーザビリティの高さにつながる大切なことだと思っています。ヤコブ・ニールセンが提唱したユーザビリティヒューリスティックスの一つ「一貫性と標準」を思い出しました。まつじさんがセッションで話されていた内容をあわせると、カスタムUIの採用には想像以上に慎重になるべきだと痛感しました。
Day1のtreastrain@treastrainさんのそろそろ FormatStyleでは、Swiftにおいて、日付や時刻などの様々なデータ型とString間の変換を行う際に使用するおけるFormatStyleの使い方について、網羅的に紹介していただきました。備忘録としてぜひ残しておきたいすばらしい資料でした。自分が個人開発を始めた頃は"\(month)月\(date)日"みたいに雑にStringに変換していたのですが、このような操作はローカライズなどを行う場合に適切ではありません。日付以外にもこんなところにもFormatStyleが用意されているのか...という発見があったので、これらのFormatStyleを利用していかないとなと思いました。
Day1のaohara@hikaruaoharaさんのiPhoneを光学式マウスにする試みでは、iPhoneのカメラを用いて、iPhoneを光学式マウスとして使うという面白い試みについて話していました。自分は直前にNintendo Switch 2のひみつ展でNintendo Switch 2のマウスも低解像度のカメラでできていると聞いていたので、原理的にはiPhoneでもできそうだけどどうなるのかが気になりました。
単なる技術的な面白さだけでなく、既存のデバイスにソフトウェアの力で新たな役割を与えるというHCIの重要なテーマを体現していると思いました。
デモだけではわかりませんでしたが、一般的にポインティングデバイスはカメラで読み取った動きに対して大きな遅れがあると、ユーザーは「カーソルを直接操作している」というダイレクトマニピュレーションの感覚を失い、ストレスを感じます。遅延はどうなのか少し気になりました。
夜ご飯
この日はなんとお昼ご飯だけでなく、夜ご飯もSTORESの方々に連れて行ってくださいました!(ほんまにありがとうございます(._.))
お台場の沖縄料理屋さんでSTORESの方々や同じ支援を受けた学生の方々との会話を楽しみました。
沢山のプロポーザルが採択された秘訣を聞いたり、学生の皆さんと就活や進路の話をしたり、とても充実したご飯になりました。
Day 2
day2のakatsuki174@akatsuki174さんの逆向きUIの世界 ~iOSアプリのRTL言語対応~では、アラビア語などのRTL言語圏対応するときに手動で直さなければならない部分についてのお話がありました!
この日、私はSwiftUIで左右の指定が left / right ではなく leading / trailing である理由を初めて知り、「RTL言語圏ではUIの左右が逆になるんやな...」と感動しました。
SFSymbolのアイコンの中で、反転するものとしないものがある点はすごく興味深かったです。
RTL対応は、多様な文化圏のユーザー一人ひとりへの敬意を示すという観点からも、開発者が真摯に取り組むべき責務だと改めて感じました!
day2の服部 智@shmdevelopさんのセッションでは、Apple Vision Proでの立体動画アプリの実装と40の工夫というタイトルで、Apple Vision Proを用いた180°立体映像コンテンツの体験会を開催した経験を踏まえて、利用者に快適に体験してもらうための40のTipsを紹介してくださいました。自分が所属している研究室でも実験や、デモ発表で多くの人にVRデバイスを利用していただくことがあるので、非常に参考になりました。特に、アプリ内に効果音を適切に配置することで、案内者がVR内の映像をプレビューしなくても参加者の進捗を音で把握できる、というアイデアは面白かったです!参加者の体験を損なわずに案内者の負担を軽減する、巧みなデザインだと感じました。
カンファレンスに参加して感じたこと
セッションでの学びもさることながら、今回のカンファレンスで特に楽しかったな〜と感じたのは、会場での皆さんとの交流でした。
セッション後に登壇者の方へ質問に行ったり、企業ブースで技術について話を聞いたりと、オンラインのイベントでは得られない貴重な体験ができました。
そして、自分は半年前に参加したtry! Swift Tokyoが初めてのカンファレンス参加だったのですが、ぽっと出の学生でありながら、その時お会いした多くの方々に私のことを覚えていてくださっていたことも、本当に嬉しい出来事でした。「お久しぶりです〜」って声をかけていただくたびにコミュニティとの繋がりを実感できました。iOSアプリ開発者のコミュニティに受け入れられている感覚があって、温かい気持ちになりました。
さらにiOSDCでは、自分と同じ学生の登壇者が多かったことも大きな刺激になりました。時には年下なのに堂々と発表している姿を見て尊敬すると同時に次は自分も登壇したいという気持ちが強くなりました。採択倍率は結構高いみたいですが、次回は登壇を目指してプロポーザルを書きたいと思います!✏️
さいごに
人が写っていない写真を選んで載せていたらなんだかご飯の画像ばっかりになってしまいました🍜🍚🥢🍩
とても刺激的で楽しい3日間になりましたが、今回得られた技術的な知見、そして何より様々な方々との交流は、STORESの支援制度がなければ手に入りませんでした。このような貴重な機会を提供してくださる環境は、学生エンジニアの成長を本気で応援してくれているだと感じます。
この3日間で受けた刺激と学びを、今後の開発を通して必ずプロダクトに還元していきたいです。また、宿泊費や交通費だけではなく、会場付近の美味しいランチやディナーにまで連れて行ってくださり、本当に至れり尽くせりな3日間でした。STORESの皆様本当にありがとうございました!


