こんにちは、umatoshi & satton & fumy & tatsumi0000です。
このブログは、ペパボのiOSエンジニア達がお送りするiOSDCの参加レポートになります。
【参考までに昨年のブログはこちら💁】
【2024年のプロポーザル採択とアーカイブ🎀】
今年は、EC事業部からTatsumi0000が パンフレット記事&ルーキーズLT で採択され、minne事業部からfumyが パンフレット記事×2 で採択されました。iOSDC当日は終了していますが、下記リンクより資料や原稿などが見れますので、ご興味がある方は是非見て頂けると嬉しいです。
そして、内容に関する感想やフィードバックも心待ちにしています!
- (ルーキーズLT) InputMethodKitとTCAを使ったmacOS上で動作するIMEの開発 by Tatsumi0000
- (パンフレット記事) InputMethodKitとTCAを使ったmacOS上で動作するIMEの開発 by Tatsumi0000
- (パンフレット記事) UIKitを利用した複雑な表現をSwiftUIで再現する際の考え方と事例紹介 by 酒井文也
- (パンフレット記事) Combineベースの実装をSwift Concurrencyへ少しずつ置き換えていく際のアイデアとヒントのご紹介 by 酒井文也
iOSDC Japan 2024について
iOSDC Japan 2024は、iOS関連技術をコアのテーマとしたソフトウェア技術者のためのカンファレンスで、今年も早稲田大学の西早稲田キャンパスで8/22〜8/24の3日間に渡って開催されました。
iOS関連技術だけに留まらず、Swift言語に関する話題やMacアプリケーション、機械学習関連、IoT関連など、発表内容も多岐に渡るので、仮にiOSアプリエンジニアでなくとも、iOS関連技術やAppleが提供している技術に少しでも関心があれば、とても参加しやすく楽しめる雰囲気があるカンファレンスです。スピーカーの皆様による濃い内容のトークはもちろんですが、スポンサー企業様が出しているブースも毎年楽しめる企画を準備しており、トークを聞く時間以外も楽しむ事ができます。また、iOSエンジニアが集まって活発な交流や意見交換がされるため、所属会社の垣根を超えたコミュニケーションの貴重な機会でもあります。
スポンサーブース巡り
カンファレンスの合間には、企業様スポンサーブースにお邪魔していました。自社プロダクトに関するご紹介いただいたり、アンケートに答えて豪華なノベルティを頂いたり、Swiftに関するクイズに夢中になったりと、セッション外でも存分に楽しむ事ができました。
数ある企業様スポンサーブースの中でも個人的に気になったのは、DeNA様のブースで実施していた 「iOSの画面とコードを見比ながら穴埋めをするクロスワードパズル」 でした。時間帯によって難易度が違い、午後の遅い時間では、あまり馴染みがなかった「Swift Charts」を利用したグラフ実装に関する問題や「Swift6への対応」を題材にした問題でしたので、解き応えがかなりあったのでついつい夢中になって取り組んでいました。
- SwiftUI Crossword Quiz の問題紹介&解答解説
- ※DeNA様のブログへ遷移します。
※問題を解く際はスマホで調べてもOKでしたが、コレがとても難しかった…😓
当日の様子をX(旧Twitter)のタイムラインからピックアップ
3日間様子をfumyのX(旧Twitter)の投稿から振り返ってみます。会場の雰囲気や賑わっている様子が伝わると幸いです。
【day0: 前夜祭】
今年も昨年に引き続き、前夜祭から参加しました。ひとたび会場に入ると「ああ、今年もiOSDCに来たんだ!3日間楽しんでいくぞ!」という気持ちにさせてくれる感じです。この日は気になったセッションを拝聴しながら、合間の時間にブースを巡ったり、勉強会やコミュニティで知り合った友人達とのコミュニケーションを楽しんだりしていました。前夜祭終了後でもiOSエンジニア同士の技術談義のネタは尽きず高田馬場にある居酒屋で近況から最近気になったトピックに関する情報交換や議論で盛り上がり続けていました。
とうとう来ましたiOSDC!
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 22, 2024
楽しみ😊 #iOSDC pic.twitter.com/lEyUgLhLIA
アヒル釣り🎣#フォークウェル #Forkwell #iosdc2024 #iosdc pic.twitter.com/wt0RHmGfKD
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 22, 2024
ブース巡り in 前夜祭
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 22, 2024
楽し過ぎて時間が過ぎていく⏳#iosdc pic.twitter.com/uhbNyj9Bii
前夜祭なのに打ち上げております🍹
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 22, 2024
餃子は最高🥟#iOSDC pic.twitter.com/ZGT0U0Juiy
改めて原稿を確認しています。この感じ、たまりませんね〜👍🍹#iOSDC pic.twitter.com/ambU4PTwEt
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 22, 2024
【day1: 本編】
day1は前夜祭りのテンションのまま会場へ。朝にも関わらず、全国から多くのiOSやmacOS関連技術に関心があるエンジニア達が集まる「文化祭」の様な雰囲気を全身に感じつつ、気になるセッションを聴いたり、ポスターセッションの場でディスカッションをしたり、ブースにご挨拶に行ったりと忙しいながらも充実した時間を過ごす事ができました。7月に徳島で徳島で開催された「神山.swift」の参加メンバーと記念撮影をしたり、友人や別の会社様でiOSエンジニアとして勤務されている方から執筆した原稿内容をお褒め頂いたり、普段は遠方にいらっしゃる方と久しぶりに再会できたりと、本当に楽しい時間でした。セッション終了後に開催されたオープニングパーティーでも、やはり技術的な話題で盛り上がっていました。(オープニングパーティーは夜通ししている訳ではなく23時ぐらいお開きになる感じです。)
朝の時間からテンションは良好。#iOSDC pic.twitter.com/Q7zVULAHzV
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 23, 2024
お昼の時間🍱#iOSDC pic.twitter.com/74tB49hh4x
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 23, 2024
小休止🍙友人との出会いもうれしい☺️#iOSDC pic.twitter.com/QnequgkkpH
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 23, 2024
何とか解き切ってやったぜ👍
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 23, 2024
だが頭ぶっ壊れそうになった🤯
明日も対戦よろしくお願いします‼️#iOSDC pic.twitter.com/jfZWbLE4j5
オープニングパーティーの図です🥳
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 23, 2024
まぁ、花金ですからねー🌸#iOSDC pic.twitter.com/9gapm7VJ0F
【day2: 本編】
濃密過ぎる2日間もあっという間に過ぎ、最終日は少し寂しさを抱えながら午前中はセッションを聴いていました。合間には、昨日顔を出す事ができなかったブースやポスターセッションを巡りながら、来年は頑張ってプロポーザルを通したいなと、ちょっと来年に向けて思いを馳せたりしていました。最終日のLT終了後に行われるクロージングでは、iOSDCでの採択者がエンドロールに流れてくる場面があり、それを見ると私は毎年「原稿(またはスピーカー)をやって良かったな〜来年もやるぞ!」という気持ちになります。そして、その後に開催される懇親会や懇親会終了後の2次会でも、会社・勤務地・得意領域を超えた様々な話題で大盛り上がりでした。
本日も引き続きよろしくお願いします🙇#iOSDC pic.twitter.com/04ctRxZFBp
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 24, 2024
ポスターセッションをまわっています🙌
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 24, 2024
サーマルプリンターも大家させて頂きました🙇♂️#iOSDC pic.twitter.com/XEh1MLWvZJ
こちらも何とか解いたぜ!& LT大会!
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 24, 2024
楽しいぜ〜 #iOSDC pic.twitter.com/afk6j2LdUs
お祭り感が今も思い出すとグッと来る物がありますね〜#iOSDC pic.twitter.com/Li7dduw9k5
— fumiyasac@iOSアプリ開発UI実装であると嬉しいレシピブックシリーズ販売中です〜📖 (@fumiyasac) August 24, 2024
気になったセッションのご紹介
どのセッションのプロポーザルも大変魅力的でして、どのセッションを聞こうかと目移りする程でしたが、今回は会場でお聞きしたセッションの中で4つ程ご紹介します。(今回会場で直接お聞きできなかったセッションについては、後日のニコニコ動画のタイムシフトにて視聴させて頂きました!)
1. Server-Driven UI入門: 画面のStateを直接受け取るアプローチ
サーバーからUIの構成をそのまま受け取って描画する方針については、以前からも海外記事等で話題になったトピックでしたが、実際のプロダクトで導入をした時の所感やポイントになる点はとても参考にななりました。ペパボ内でも現在GraphQLをプロダクト開発に利用していたり、モバイルアプリとサーバーサイドの「つなぎ目」になる部分のアプローチは個人的にも非常に関心が高かったので、モバイルとサーバーとの連携を円滑に行うための方針アイデアとして参考になりました。
2. メインスレッドをブロックさせないためのSwift Concurrencyクイズ
セッション内で紹介されていた問題はなかなか解き応えのある良問揃いでしたので、とても楽しく取り組みながら聴いていました。 このセッションが終わった後に「自分は意外と分かった気持ちになっているだけで、ちゃんと体系的に理解していないな〜危機感持たなきゃ…」と痛感すると共に引き続きSwift Concurrencyの理解を深めようと感じた次第です。
※ セッション内容の問題のみを抜粋したものはこちらのブログ記事にまとまられています。
3. Mergeable Libraryで 高速なアプリ起動を実現しよう!
Dynamic FrameworkとStatic Frameworkのいいとこ取りをしてくれる、本当に便利な機能の紹介に関する内容でした。マルチモジュール化をはじめとしたXcode・Framework・Build時間短縮等の様な技術課題に関しては、今後もまだまだ取り組んで行く余地が今後もあるため、今後も開発やデリバリー環境の改善に繋がる知識や知見についても徐々に広げていきたいと考えています。
4. めざせ!WKWebViewマスター!
以前の業務でWKWebViewを利用する機能開発をした経験があり、その際に体系的にまとまった情報へ行き着く事が難しかった故に非常に苦労した経験があったので、非常に共感できる部分が多い内容でした。特に外部機能を利用した決済や認証をはじめ、機能次第ではWebViewを前提とした方針にせざるを得ない場面もありますので、その場合はきっとこのセッション内容を再度復習する機会がありそうだと感じています。
感想
iOSエンジニア1人1人の感想になります💁
umatoshi
今年は主にオンライン視聴での参加でしたが、一部オフラインでも参加しました。iOS開発者の同窓会のような顔ぶれで、今年も頑張ろうというエネルギーをもらい、元気が出ました。 現在、私はSwift 6.0対応という課題を抱えており、特にSwift Concurrencyについて理解に苦労していました。しかし、今回のトークを通じて非常に有益な知見を得ることができました。これらの学びを活かし、成果が出次第アウトプットする予定です。 特に参考になったトークは以下の通りです:
- メインスレッドをブロックさせないためのSwift Concurrencyクイズ
- 座談会「Strict ConcurrencyとSwift 6が開く新時代: 私たちはどう生きるか?」
- Mastering AsyncSequence - 使う・作る・他のデザインパターン(クロージャ、Delegate など)から移行する
satton
初めてiOSDCに参加しました!セッションを聞いたりブースを回ることで、iOSの技術トレンドに触れることができたと思います。 また、参加者の皆様との交流も楽しむことができました。来年は登壇できるように頑張ります!
tatsumi0000
今回は、ルーキーズLTでの登壇とパンフレットの執筆をしました。 初めてオフラインイベントに参加したのですが、お祭りみたいでとても楽しかったです。参加者のレベルが非常に高く、とても刺激を受けました。 また、登壇できるように来年に向けてネタを作ろうと思います!
fumy
今回はパンフレット記事執筆のみでしたが、執筆期間中も本当にこの機会を心待ちにしていました! チーム内外をはじめ様々なご支援くださったメンバーと、iOSDCの機会を通じて交流してくださった参加者の皆様に本当に感謝しております。
まとめ
各セッションを聴いてiOSの関連技術が学べるだけでなく、スポンサー企業様ブースで情報交換をしたり、勉強会で知り合えた友人や懐かしいメンバーと近況を報告したり、ポスターセッションやセッション後のQ&Aで議論をしたり、内容が濃密な3日間でした。iOSDCの機会を通じて得られた知識や知見を活かして、minneや弊社をモバイルアプリ開発を今以上に盛り上げていければと思います。