採択
2022/09/11 16:20〜
Track A
LT(5分)

UIStackView逆引きレシピ

tokorom 所友太

UIStackViewとても可愛いですよね!SwiftUI時代になれば使わなくなると思いますが、現状はまだまだUIStackViewを活用する機会は多くあると思います。
このLTでは、私が愛してやまないUIStackViewについて、こんなケースではUIStackViewでどう解決する?というのを逆引きレシピ形式で紹介できればと思います。

  • ある条件ではこのボタン消えてスペースを詰めいないといけない!トルツメ制御めんどうすぎ!
  • 画面を回転させたときにレイアウトが大きく変わっちゃう!助けて!
  • デザイナーさんから「ここは10、でもここは15」と細かくマージン指定されてる!どうしたらいい?
LT(5分)

SharePlay 5分でWrap Up!

tokorom 所友太

SharePlayとはiOS 15で登場した、FaceTime通話中に離れた場所の友達とアプリのコンテンツを共有する機能です。
iOS 16ではこのSharePlayは付加機能というよりはiOSの基幹機能へと進化を遂げたという印象を持ちました。

このLTではSharePlay / Group Activitiesについて5分でまとめて紹介します。
もちろん、iOS 16でのアップデート内容をメインに添えて!

  • SharePlayは3種ある?
  • SharePlayでここまでできます!
  • iOS 16でのアップデート内容!
3
LT(5分)

GitHub Actionsでswift-formatを自動実行するための試行錯誤

tokorom 所友太

みなさんはswift-format使っていますか?

コードを書きながらリアルタイムでswift-formatでチェックするだけでなく、最後の砦としてGitHubにpushされたコードをswift-formatでチェック・整形してもらうのとても便利ですよね。

このLTでは、GitHub Actionsでswift-formatを自動実行するまでに行なった以下の試行錯誤を共有して、より良い方法などみなさまにも相談できればと思います。

  • GitHub Actionsでswift-formatを自動実行する設定
  • できるだけ速くswift-formatをスタートさせるには?
  • 自動で整形してpull requestを送る
  • 自動で整形できない場合はissueを立てる
  • より良い方法を探る
2
LT(5分)

「記号と再帰」に触れる ―プログラミング言語に見る記号論と再帰性―

CreatorQsF たふみ

記号論 (記号学) という言葉を聞いたことはあるでしょうか。近代言語学の父と言われるソシュールにより基礎が築かれたとされ、彼は記号モデルについて二元論を唱道しています。これは「りんご」という言葉を考えたときに、実世界の“りんご”に「りんご」というラベルをつけているものであり、記号というのはラベルが対象の事物を指し示すことと言えます。記号論 (記号学) ではこれを足がかりとしその恣意性など記号に関する学問領域を指すものです。
田中久美子氏の名著「記号と再帰」(2010)は、記号とプログラミング言語の対応を特に再帰について探求したものです。1例を挙げると、関数型プログラムの識別子とその内容は先の「りんご」と “りんご” にあたるというような具合です。
本発表では5分で不動点関数と記号の再帰的定義を例にあげ、「記号と再帰」という本について興味をもってもらい、手にとってもらうことが目的です。

4
LT(5分)

3歳児とiPadとわたし

monoqlo monoqlo

子育て4年目。

3年以上前、Apple純正ロンパースを着ていた小さな👶はすくすく育ち、
今ではiPadを自由自在に操れるようになり、幼児向けアプリに限らずいろんなアプリを楽しめるようになってきた。
一方で「なるほど、こういうUIだとわからなくなって泣いちゃうのか」という場面に遭遇することも。

そんな日々微笑ましく感じていたのも束の間、
ペアレンタルコントロールの重要性と偉大さに気づく日がやってきた。

子育ては十人十色。正解も失敗もないかもしれない。
でもだからこそ一例として伝えたい。

こうすればよかった、こうしてよかった。
2歳3歳が夢中になるコンテンツとは。
任天堂はすごい。
子ども向けアプリを開発するならこうして欲しい、こうすれば儲かりそう

直接開発には関係ないけれど、これから子育てが控えているエンジニアの参考になれば…
そんなエピソードをお届けします。

6
採択
2022/09/11 15:10〜
Track A
LT(5分)

神速iOSDC〜6年分〜

66nylon_y Roku

みなさんが初めて参加したiOSDCはいつでしょうか。
私が初めて参加したiOSDCは2018年のものでした。

初参加の2018年からiOS・Swift界隈のトレンドや新しい技術は目まぐるしく変化し、私が初めて参加した年からは想像もできないような進化を遂げています。

ところで、iOSDCにはYouTube公式チャンネルがあり、iOSDC2016からのセッション動画をなんと無料で視聴することができます。

このトークではiOSDCチャンネルにあげられている458本の動画を踏まえ、これまで6年分のiOSDCを5分に凝縮し、オフライン開催が戻ってきた今だからこそ、神速で振り返りを行っていきたいと思っています。
このトークを聞くことで、iOS・Swift界隈のトレンドを振り返るとともに、6年分のiOSDCの思い出を一気に蘇らせることを約束します。

LT(5分)

人はなぜ車輪の再発明をするのか

417_72ki 417.72KI

既にOSSで公開されているライブラリや、実装済みの機能を使わずに自前で実装することを車輪の再発明と言います。
それはしばしば時間の無駄と思われがちですが、どんなに使い込まれたライブラリでもメンテナンスされなくなったら終わりです。

本LTでは、2年ほどメンテナンスが放置されたライブラリを捨てる為に自前でライブラリを再実装した際の知見をお話します。

3
LT(5分)

String Interpolationを知ると世界が平和に

yutailang0119 Yutaro Muta

多くのプログラミング言語に備わる機能 "String Interpolation" は、一般的には変数をプレースホルダーに展開する機能です。
しかし、Swiftでは、ある秘密が隠されていたのです!
そう、Swift実装では開発者に拡張手段が提供されていて、高度で静的な文字列操作を可能にします。
さらに、SwuiftUI.Textの機能が充実したことで、近年では単純なStringとしての表現を超え、活躍の幅は広がっています。
このトークでは、文字列操作としての典型的な使用方法から説明し、SwiftUI.Textと組み合わせた便利な活用方法を紹介します!

3
LT(5分)

5分で分かるXcode File Template

0__1_tea TAKEDA Yuki

開発を進めているといつも決まったボイラープレートを書いていることがありませんか?
そこでXcode File Templateの出番です。
このLTではXcode File Templateを利用してコードを自動生成し開発効率をアップさせる方法について話します。

  • テンプレートの作り方
  • チームでのテンプレートのシェア
  • SwiftPMから利用するときのtips

このLTがみなさんの開発効率向上につながれば幸いです。

6
LT(5分)

Object CaptureのためにM1 Macbook Airを買った人🙋‍♂

ikkou HEAVEN chan / ikkou

WWDC21で発表されたObject Capture、皆さん触りましたか?
当時私はObject Captureのために家庭内稟議(YAuth)を通してM1チップ搭載MacBook Airを買いました!

本LTでは発表から1年が経つApple純正フォトグラメトリ機能であるObject Captureを今改めて振り返ります。
Object Captureの実例として、実際に出力した様々なUSDZファイルをご用意しました。
LT中にお手元のスマートフォンを使ってARでお試しいただきます!

4
採択
2022/09/11 16:15〜
Track A
LT(5分)

バックポートして学ぶ新APIの仕組み

yutailang0119 Yutaro Muta

Appleプラットフォームのアップデートは、一部を除き、最新OSのみに提供されます。
せっかく待望の新機能が登場しても、サポートOSポリシーによっては、使えるのは数年後...
ならば、自分で作って、来たる日に備えましょう。
実現する上での難易度は高いものかもしれませんが、多くは既存の仕組みを組み合わせることで、ソフトウェアとして解決できるはずです。
自分でバックポート実装を作ってみれば、新API、その周辺の仕組みについて熟知することができます。

このトークでは、2021年に登場したSwiftUI.AsyncImageを、すべてのSwiftUI環境にバックポートした経験を題材に、知見を話します。

  • 新APIの調べ方
  • バックポート実装のTips
  • メンテナンスする上での難点
採択
2022/09/12 16:15〜
Track A
LT(5分)

今更だけどUIKitで型パラメータのインジェクトを利用してViewのレイアウトをしてみよう

marty_suzuki marty-suzuki

似たようなレイアウトのViewがいくつかあった場合に、どのように実装しますか?
enumでtypeを定義してtypeごとにレイアウトを分岐したり、ベースクラスを作ってサブクラス側でレイアウトに必要な処理を行なったりなど、様々な実装方法があるかと思います。

本トークでは、実際にサービスで運用されているデザインを題材に、型パラメータのインジェクトを利用したViewのレイアウト方法についてお話します。
他のレイアウト方法とは、どういった違いがあるかなどもお話できればと思います。

LT(5分)

これから iOS アプリを開発する人のためのロードマップ

ykws__ 川島慶之

様々な developer 向けのロードマップを公開している roadmap.sh
ここにはなぜか iOS developer 向けのロードマップが存在しません。これとは別に 2018年に reddit に投稿されたロードマップが存在し、これがよくできているのですが、4年も前なので、 Objective-C, UIKit, DispatchQueue に関しては、 Swift, SwiftUI, Concurrency と置き換わるものが有力になってきていて、こういった変遷を反映したロードマップを提案したいです。

本トークでは、以下の観点からお話ししようと思っています。

  • これから iOS アプリを開発する人には、スキル習得のためのロードマップの紹介
  • 今まで iOS アプリ開発に携わってきた人には、これまでの知見をロードマップへ是非フィードバックして欲しいというお誘い
10
LT(5分)

シャンパンコールで覚えるXcode Project Settings

itaru_sugimoto 杉本 至

Xcode Project の Build Settings に潜む知っておきたいけどよく知らないそんなプロパティや Valueについてコールしまくります!
Kernel!Module!Bundle Loder!Build!Assets!Strip!Swift!Symbol!グイグイヨシコイ!🍾

4
LT(5分)

バックエンド未経験のiOSエンジニアが、主流のServer Side Swiftのフレームワークを一通り試してみた

lovee 星野恵瑠

みなさんご存知の通り、Swiftはオープンソースになってから、すでに汎用目的のプログラミング言語としてある程度の発展を遂げてきました。特にサーバサイドでの利用は意外と探せばメジャーなプロダクトでも採用例があったりします。

ところがServer Side Swiftを始めたい時、フレームワークを選ぶ必要がありますが、アップル謹製のいわゆるファーストパーティーライブラリーは存在しないため、複数あるサードパーティーライブラリーから選定する必要があります。

さて、一体どのフレームワークが一番私に適しているかな?一番熱いVapor?一番大きな会社がバックしてるsmoke-framework?それとも一番老舗であるPerfect?

このLTはこれらのフレームワークを一通り試してみた感想を伝えたいと思います!

6
LT(5分)

F**king SwiftUI

lovee 星野恵瑠

Storyboard辛い!Auto Layout難しい!でもSwiftUIのおかげでこれらとおさらばだ!!

そんな甘い思い、私にもありました…まさに若さゆえの過ち…

そう、SwiftUIがリリースして3年経った今でも、まだ我々はレイアウトのナイトメアから解放されていません…

このLTは、そのSwiftUIのあるあるな罠を紹介し、そしてそれらの回避策をお伝えしたいと思います!

4
採択
2022/09/12 15:35〜
Track A
LT(5分)

iPhoneでサッカースタジアムをスキャンしVPSを動作させるには

shmdevelop 服部 智

Visual Positioning Systemは周りの風景の情報を元に現実空間の中で自身の位置を特定する技術です。

私はサッカーJ2リーグの町田ゼルビアのホームスタジアム「町田GIONスタジアム」にて
iPhoneで数百枚画像撮影して点群作成し、VPS機能を用いてAR表現を実現しました。

  • Immersal での点群作成
  • 実際のスキャンの様子
  • 数回の実作業を経て得た生成物
  • VPSを用いて実現したAR表現

そもそもiPhoneでスタジアムに立ち向かえるのか!

スタジアムでの現地作業という貴重な経験から得た知見を共有し、そこでどんな表現が実現できたのか画像と映像と共に熱く解説します。

採択
2022/09/12 16:00〜
Track A
LT(5分)

サポートiOSバージョンを定期的にあげる仕組みづくり

FromAtom FromAtom

サポートOSバージョン、どんどんあげていきたいですよね?
しかし、サポートバージョンを減らすとユーザーも減るため、プロダクトオーナーに渋られることもよくあります。

加えて、開発の現場では「サポートOSバージョンあげたいけど、結構気合で解決できるし……」というエンジニアと、
「エンジニアから要望も来ないから、あげなくてもいいか」というプロダクトオーナーという、お見合い状態になることもあります。
実はサポートOSバージョンをあげてもよさそうなのに、キッカケがない……そんなことはありませんか?

このトークではこういった課題を解決するため、
・アクティブユーザーのOSバージョン割合で判断するのは悪手!?本当に見るべき指標
・定期的にサポートOSバージョンアップを検討できるキッカケの仕組み
について話します。

このトークが皆さんのアプリのサポートOSバージョンアップにつながると嬉しいです。

LT(5分)

swizzlingではじめるコードリーディングのすすめ

beowulf_tech k2moons

swizzlingと聞くと、「ああ、使い道のない変な機能」と思われるかもしれません。
実際swizzlingでぐぐると「共通の処理を実装する」とか「共通処理を差し込む」といった文脈で説明されることが多いです。

このLTでは、実装ではなく、コードリーディングに用いることで処理の流れを容易に掴むことができ、ソースコードの理解が効率化される事例を紹介したいと思います。

7
LT(5分)

Apple Platformエンジニアとして、そして父親として

itaru_sugimoto 杉本 至

iOSエンジニアとして、Apple プラットフォームエンジニアとしてそろそろ10年が経とうしてしています。
そして私は2人の娘と5歳の発達障害の息子を持つ父親でもあります。日々進化し続ける開発技術についていけず悩む日々でもあります。
コロナ禍においてリモートワークが導入され柔軟な働き方ができるようになり、家族とより近くなりありがたくも大変なこともあるようになりました。
私以外にも激動の日々を送る方がいらっしゃると思います。悩みつらみがありつつソフトウェアエンジニアとして壁を乗り越えることの難しさや、その中でSwiftや開発者コミュニティに提供できるものとは何なのかについてお話します。

5