iOSDC Japan 2022 にスピーカー&コアスタッフとして参加しました
2022年9月10日〜9月12日の日程で、iOSDC Japan 2022 が開催されました。
iOSDC Japan 2022 はiOS関連技術をコアのテーマとしたソフトウェア技術者のためのカンファレンスです。今年はリアル会場とオンライン配信のハイブリッド開催を予定しています。
日本中、世界中から公募した知的好奇心を刺激するトークの他にも、パンフレットに掲載された技術記事、参加者であれば誰でも作れる即興のトーク・アンカンファレンスなど、初心者から上級者まで楽しめるコンテンツがみなさんを待っています。
- iOSDC Japan 2022 https://iosdc.jp/2022/
自分の参加形態
今年は「スピーカー」と「コアスタッフ」の2つの形態で参加しました。
この iOSDC Japan 2022 はオンライン・オフラインのハイブリッド開催でしたが、Day 0 から Day 2 の全日、オフラインで参加しました。自分のこれまでの参加形態をまとめると…
- 2019: 当日スタッフ(Day 2 のみ)
- 2020: コアスタッフ
- 2021: コアスタッフ スピーカー
- 2022: コアスタッフ スピーカー
となります。昨年は Revue に 2019〜2021 のお話を綴りましたので、もしご興味あれば…!
今年は iOSDC Japan 2022 の期間中(2022年9月10日〜9月12日)、所属している事業部から業務扱いとしてもらうことができたので、せっかくですからこの Zenn Publication への投稿としたいと思います。
コアスタッフとして
iOSDC Japan で「スタッフ」というと、「コアスタッフ」と「当日スタッフ」の二種類あります(これに「ネットワーク(専門)スタッフ」としての分類が加えられたりもします)。
「当日スタッフ」は読んで自の如く、iOSDC Japan 開催当日にさまざまなお手伝いを担当していただくスタッフとなっており、iOSDC Japan 2022 の場合は2022年7月29日から募集されていました。
そして、「コアスタッフ」は開催日よりももっと前の時期から、カンファレンスの実施に必要なあらゆる準備について実施し、当日スタッフたちのリーダー的ポジションも務めることになるスタッフとなります。iOSDC Japan の運営についてある程度知った状態だととてもスムーズなため、コアスタッフのほとんどは過去の当日スタッフ等の経験者となっています。
ノベルティボックスの箱設計・紹介ブログ記事執筆
iOSDC Japan ではもはや恒例となった「ノベルティボックス」、こちらの箱の設計を昨年に引き続き担当しました。
と言っても、過去の2年の経験からほとんどフローは確立しており、今回は大体の箱の大きさと内容物を取りまとめ、実際に箱へノベルティを封入してくださる業者との連絡を行う… といったものがメインになりました。
箱のデザインだったり、中のノベルティは自分が作ったモノではありませんが、それでもやっぱりこうして実際の「モノ」として自分の手元にノベルティボックスが届いたときは、感動もひとしおでした。
また、こちらも昨年に引き続きですが、みなさんの手元へノベルティボックスが届く前に、中身の一部を紹介するブログ記事も執筆・公開しました。
今回は昨年からアップデートし、ノベルティボックスの 3D データファイル(USDZ 形式)をブログ記事内に掲載し、対応端末では AR でも確認できるようにしてみました。
はじめて Blender を使いました…。使いこなすにはまだまだ経験が必要です……。
もう一つ取り組んだこと…?
iOSDC Japan は回を重ねるごとに新しい取り組みにも挑戦しています。今回、2019年開催ぶりのオフライン復活、情勢などもあり、とあるシステム構築に取り組みましたが……。それはまた別の記事でご紹介します。
iOSDC Japan 2022 - Track A (9/11 SUN.) より
オフライン参加で現地にいらっしゃった方は、こういうモノがあったのを覚えているでしょうか…
スピーカーとして
これらのコアスタッフ業とは完全に独立かつ並行して CfP も提出し、レギュラートーク(40分)の採択をいただきました。
昨年は Formatter について同じレギュラートーク(40分)としてお話させていただき、ニッチな話題かな… と思いながらでしたが、「今でも役に立っています!」という嬉しいコメントもいただいています。ありがとうございます!
今年挑戦したのは、さらに一般受けはしないのではないかという、「"NFC"・"Core NFC" について40分間話し続ける」内容でした。しかし、会場では自分の想像よりも遥かにたくさんの方が聴いてくださり、フィードバックもいただきました。本当にありがとうございました…!後ほどアーカイブが YouTube で公開されると思います。当日投影した資料は SpeakerDeck にて公開しています。
いただいたフィードバックの一部(表現の一部を変更しています)
- NFC の仕様から説明があり、基礎的な情報を含めてキャッチアップできた
- Core NFC 特有の制限や、自分で取り組まないと気づけないであろう注意点がまとまっていてよかった
- 自分でもサンプル App を作ってみたいと思った
- プライバシーに配慮した API が Apple らしいと感じた
- iOS App 開発のために Android 端末を持っている方がよい、という重要な知見が得られた
- 落ち着いてトークしていて(喋っていて)聴きやすかった
...etc.
また、このようなカンファレンスへの登壇自体は2回目なのですが、初回がその iOSDC Japan 2021 で完全オンライン開催(事前収録による登壇)だったので、このようにオフラインで事前収録を流すかたちではない登壇というのはこれが生まれてはじめての経験でした。貴重な経験をさせていただきました…!
会社のエンジニアとして
また、昨年に引き続き会社のエンジニアブログの記事の執筆も担当していました。
気になったトーク
例年、スタッフとして自分の担当をこなしながら、空いた時間には好きなトークを聴きに行く… というのができるのですが、今年は2年のオフライン開催ブランクによる体力の低下を忘れており、期間中はかなり忙しくしていました…。
(もし来年また開催されることがあれば、ぜひ当日スタッフとしてお手伝いいただけると嬉しいです…!人数が増えるとその分余裕が生まれます……!!!)
そのため以下に挙げるものは、いくつかは現地で聴いたもの、それ以外はアーカイブ等で見聞きしたものとなります。
ウーニャ、しってる。みんなふんいきでSwiftUIをつかってる。
ウホーイ(@the_uhooi)さんによる、SwiftUI の View
で大きくなりがちなものを適宜分割したりするときの考え方についてのお話でした。いや、「お話」というよりも「みんなで議論する時間」だったというのが正しいかもしれません。トークの内容自体はさまざまな方が書かれたブログ記事などでたくさん出てきますのでここでは割愛しますが、トーク中の Twitter ハッシュタグを定めて、ウホーイさんがトークしながらそれらのツイートを拾っていく… というスタイルが、オフライン・オンラインのハイブリッド開催を活かしながらかつ双方向コミュニケーションも行う…… のが非常に印象的でした。
Swift Concurrency Next Step
shiz(@stzn3)さんによる、Swift 5.6 以降の Swift Concurrency に関するアップデートなどの情報が濃密に詰まったお話でした。昨年も Swift Concurrency についてのトークをされており、何度お世話になったか… というところでありますが、本トークではそれのおさらいも含まれています。とくに Swift 5.7 で起きた内容の変更点についてのまとめで出てくる内容(SE-0338 など)は、このトークのおかげで自分の認識を改めることができました。また、普段自分は「Swift の言語機能・コンパイラに頼るコーディングをする」ことを極力意識しているのですが、Concurrency な処理をどのようにコンパイラに頼るように寄せていくか… といった点などを再認識することができました。
Kotlin Multiplatform Mobile でiOSとAndroidの実装差異を無くす
新田 陸(@hal8563)さんによる、社内で iOS App プロジェクトに KMM を導入した際の取り組みについて解説するお話でした。リポジトリの管理方法、Kotlin で書かれた共有モジュールを CI/CD で管理… といったあたりの実務的なお話はとても勉強になりました。とくにエンジニアとして「iOS 担当」「Android 担当」「KMM 担当」と3つ配置しているといったあたりが非常に興味深かったです。
Kotlin 利用経験が10分くらいしかない私ですが、クロスプラットフォーム App 開発として Kotlin Multiplatform Mobile は個人的にもっとも興味のある仕組みです。過去にほんの少しだけ試した(そして失敗した)という発表を LT でしたのですが、再び KMM を使って何かアプリケーション開発してみたいと思ったトークでした!
Xcode が遅い! とにかく遅い!! 遅い Xcode をなんとかする方法
Yoshimasa Niwa(@niw)さんによる、Xcode が遅い原因をとにかく深ぼっていくお話でした。〜〜という問題で悪いのはここの部分、それの回避策はこれで…… とトークは進んでいきとても勉強になりました。「この問題は Xcode のアップデートで直ります」というような場面で、会場から自然と拍手が起こっていたのがとても印象的でした。
即時通知を導入する際に考えるべきこと
あおい(@aomathwift)さんによる、iOS 15 で導入された「即時通知」をプロダクトに導入する際、どのような仕組みを整えて運用しているかというお話でした。技術的な「仕組み」のお話もありましたが、「重大な通知」を除いてもっとも優先度の高いレベルの通知がこの「即時通知」であることから、プロダクトを提供する側は節度を持った利用がユーザーのためになるということも伝えていました。非常に印象的だったのは、これを利用するための独自の社内ガイドラインを iOS App Developer 側が整えている、という点でした。
Effective PencilKit / 新聞スクラップ体験の実現
shimastriper(@shimastriper)さんによる、新聞の紙面ビューアー App で PencilKit(Apple Pencil)を用いて手書きによる機能をサポートしたときのお話でした。確かに新聞紙面を取り扱う App は Apple Pencil との相性が良さそうだなと思いつつ、機能実現のためにさまざまな苦労をされているのがわかるトークでした。
鉄道アプリを支えるテクノロジー
Hiroshi Shikata(@dotrikun)さんによる、鉄道に関する App で用いられているさまざまな技術についてのお話でした。「ハードウェア」という言葉の中に「鉄道車両」・「線路」・「駅」が含まれる… というのが非常に鉄道に関する App らしいなと思いました。App の中で確認できる、運行中の鉄道車両の混雑状況について、必要な計測を行えない車両については予測データから算出している… といったあたりのお話も目から鱗でした。今回は LT でしたが、ぜひ40分のレギュラートークでみっちり伺いたいようなお話でした。
そのほか気になっていたトーク
開催前から気になっており、fortee の「スター」機能を使ってスターを付けていたトークは以下です(上記までで紹介したトークは除いています)(トーク実施順)。
2022年の新規アプリ開発で採用した技術
施策基盤としてのディープリンク 〜なめらかにアプリが開く体験のために〜
PiPを応用した配信コメントバー機能の開発秘話と技術の詳解
SwiftPMのプラグイン機能をiOSアプリ開発に活用する
Dive into Mac Catalyst
20分間で振り返るIn-App Purchaseの歴史
令和時代のXML処理を考える 〜もしあなたが巨大なXMLと相見える(あいまみえる)ことになったら〜
UIKit ベースの大規模なプロジェクトへの SwiftUI 導入
CoreGraphicsでドット絵を描こう
Swift Concurrency時代のリアクティブプログラミングの基礎理解
神速iOSDC〜6年分〜
Apple Watchを使い倒す 〜Watchから取れるデータとその活用法〜
挑戦!ISUCON de Server-side Swift 〜タイムゾーンには気をつけろ〜
Exposure Notification Privacy-preserving Analytics Architectureの仕様について
バックポートして学ぶ新APIの仕組み
UIStackView逆引きレシピ
手で触れずにアプリを動かす技術
動画だけじゃない!iOS 15のピクチャ・イン・ピクチャを使って好きなUIを表示させよう!
20分でわかる!速習resultBuilder
サーバーと同期してリアルタイムに更新する画面を実装する
OSSのアプリケーションを開発「し続ける」ための哲学
シーンに応じた使いやすいQRコード読み取り機能を実装しよう
モバイルアプリのオブザーバビリティを向上させるプラクティス
LINE iOSのビルド環境の変遷
「家族アルバム みてね」を支えるiOSビルド環境の改善
Swift Concurrency時代のiOSアプリの作り方
The state of Swift for WebAssembly in 2022
モバイルアプリの行動ログの「仕込み」を快適にする
iOS15からのCommunication NotificationとSiri
キャッシュによる状態管理のアーキテクチャ
watchOSにおけるバックグラウンドタスクの限界
CarPlay向けのアプリって開発できるの?
Flutterアプリ開発にネイティブコードはどこまで求められるのか
VisionKitを使ってクレジットカードスキャナーを作る話
サポートiOSバージョンを定期的にあげる仕組みづくり
今更だけどUIKitで型パラメータのインジェクトを利用してViewのレイアウトをしてみよう
iPadOSDC Japan 2022 by Hiromu Tsuruta
また来年!(?)
iOSDC Japan 2022 - Track A (9/12 MON.) より
日本で行われる最大級の iOS 関連カンファレンス、iOSDC Japan 2022 は今年もはじめから終わりまで技術的にも交流としても楽しいことばかりで、普段の業務としての、また個人としての開発のモチベーションが圧倒的に高まりました!
iOSDC Japan には普通に聴講する… 以外にも参加方法がたくさんあります。ぜひ来年はスピーカー、スポンサー、当日スタッフとして……!みなさんにお会いできるのを楽しみにしています!!!
Discussion