採択
2024/08/24 16:40〜
Track A
LT(5分)

iOSDC Japan 2023のロゴの謎 〜そして辿り着いた真実〜

ta_ka_tsu ta_ka_tsu

皆さんは昨年のiOSDCのロゴは覚えていらっしゃるでしょうか?
同心円とその中心から放射状に伸びる線から構成され、色が塗られている箇所と塗られていない箇所に分かれたあのロゴマークです。
(参照:https://iosdc.jp/2023/)

このデザインを見たときに、ふと思った方もいるのではないでしょうか?
「このデザインには意味があるのではないか?」
「何か隠されたメッセージが潜んでいるのではないか」
と。

かくしてロゴに秘められているであろうメッセージを解読しようと試行錯誤する日々が続いたのです。
仕事の合間に。そしてレギュラートークの準備の合間に。

そしてiOSDC Japan 2023の最終日、ついに私は真実に辿り着くことができました。
本LTではそこに辿り着くまでの試行錯誤と、このLTのために丸一年秘密にしていたロゴに関する真実をお話します。

5
採択
2024/08/24 16:45〜
Track A
LT(5分)

初めてのiOS関連GitHub ActionsをMarketplaceに公開するまでの実録

konifar konifar

私はiOSアプリの多言語化対応において、LinterをRubyで自作して書きました。
本セッションでは、そのLinterを汎用化したGitHub Actionsに進化させ、Marketplaceに公開して使えるようにするまでをお話します。
といってもまだ公開しておらず、もしこのセッションが採択されたら公開に向けて動きます。そうです、登壇駆動開発です。その時間経過も含めてLTらしく話します。
真面目な話をすると、意外と自作で色々スクリプトを作っているiOSプロジェクトは多いんじゃないかと考えており、それらOSSのタネが開花するきっかけになるとよいなと考えています。

8
採択
2024/08/24 16:50〜
Track A
LT(5分)

ライブ配信サービスのための自動字幕起こし機能の実装と課題解決

chuymaster チュイ

SFSpeechRecognizerは音声認識を利用して音声をテキストに変換することができます。
この技術を活用して、視聴者のデバイス上で完結する自動字幕起こし機能を実装しました。
本セッションでは、その過程で直面した課題とその解決方法について共有したいと思います。

紹介トピック

  • 自動字幕起こし機能の概要
  • SFSpeechRecognizerの実装方法とその制限
  • デバイス上で処理できる言語の条件
2
採択
2024/08/24 16:55〜
Track A
LT(5分)

iTunes・おぼえていますか 〜ScriptingBridge今昔物語〜

417_72ki 417.72KI

手塩にかけて育てたミュージックライブラリがぶっ壊れた経験はありますか?私はあります。

5年前、OSX Catalinaの登場時にiTunesが廃止され機能ごとにアプリが分かれました。
その後、新しいミュージックアプリでは様々な問題が起こりました。

  • アルバムアートワークが消えた
  • 読み仮名のコピーができない
  • ジャンルが勝手に書き換わる

(※全部筆者が経験したことです)

万単位にのぼる楽曲を1個1個精査して正しい状態に復旧するのは当然ながら非現実的です。
更にミュージックアプリの使い勝手の悪さも相まって泣き寝入りを余儀なくされました。

ですが、そこに救世主が現れました。そう、 ScriptingBridge です。
しかし ScriptingBridge はObjective-CがベースなのでSwiftで扱うには一工夫が必要です。

本セッションでは、macで他アプリケーションと連携するための仕組みである ScriptingBridge を使ってミュージックライブラリから楽曲情報を取得・編集する方法と、それによって壊れた楽曲情報を半自動で復旧した話をします。

1
採択
2024/08/24 17:00〜
Track A
LT(5分)

暴走のウホーレン 〜想いってのはvimrcにしないと伝わらないんだぜ〜

the_uhooi uhooi

「Vimは設定している時が一番楽しいんだよ(ウホーレン)」


有名なテキストエディタのひとつに「Vim(ヴィム)」があります。
私はVimが好きです。もっというとVimから派生した「Neovim(ネオヴィム)」が大好きです。

私はNeovimを使ってiOSアプリ開発できないか、日々模索しています。
Microsoftが公開している「LSP(Language Server Protocol)」や「DAP(Debug Adapter Protocol)」などのプロトコルを使い、かなりいい感じにコーディングできるようになってきました。

NeovimにはLSPやDAPのクライアントプラグインが存在します。
それを使うことで、Appleが公開している言語サーバー(SourceKit-LSP)や、サードパーティ製のLLDB拡張(CodeLLDB)をNeovimから呼び出して使えます。
つまり、Neovimで補完やシンタックスハイライト、ブレークポイントを貼ったデバッグなどが可能になります。

本LTでは、まず私のNeovimによるSwiftのライブコーディングをお見せし、次にそれを実現するための技術をキーワードベースで紹介します。


「必要なものはvimrcだけだったのです。必死に積み上げてきたvimrcは決して裏切りません(ウェルン)」

8
採択
2024/08/24 17:05〜
Track A
LT(5分)

全力の跳躍を捉える計測アプリを作る

juginon Ogijun

Apple Vision Proの発表と同時に紹介された空間ビデオ機能。 iPhone 15 Proで撮影した動画を3Dで確認できるものですが、この仕組みはiPhoneに搭載された2つのカメラの距離差を利用して物体の距離感を計算し実現しています。

実は、この技術は陸上競技においても使われています。走幅跳などの長さの競技では、高精度なステレオカメラを用いて跳躍後に離れた場所から正確に距離を計測できるようになっています。
そして、昨年までのiOSDCでは走りがメインでしたが、僕は跳躍種目の方が得意です。

2眼のiPhoneを使えば、このシステムを模倣できるのではないか?実際にメジャーで計測するのと比べてどれくらい差が出るものなのか?
陸上競技歴17年の私が実際に体を張って検証した結果を動画で紹介しながら、全力疾走のスピード感はそのままに全力の跳躍と同じ迫力で紹介します。

3