iOSエンジニアのお祭り、iOSDC Japan 2018 およびその非公式関連イベントの登壇資料まとめです。
Twitterで捕捉次第掲載しますが、もし資料を見かけた方or資料を公開した登壇者の方がいらっしゃいましたら、コメント等でお声がけください。
なお、各日トラック別レギュラートーク→トラック別LT、の順に並んでいます。
全セッションタイトルが見出しで掲載されており、資料等が添付されている場合はタイトルの前に📎がついています。
📅 0日目(前夜祭)
2018/8/30 at Waseda University
🚪Track A
📎ARKitのための3D算数
https://speakerdeck.com/fujikawakei/arkitfalsetamefalse3dsuan-shu
https://github.com/kboy-silvergym/3DMath-For-ARKit
https://qiita.com/k-boy/items/775633fe3fd6da9c5fb6
📎Working in a multi-cultural environment with a global app
📎オープンソースMDMのmicromdmを用いて、個人でデバイス管理をやってみる
📎Code PushとReact Nativeで緊急OTAリリース!了解!
📎ツールとして利用するUIテスト
📎設計時空のリファクタリング〜複数アーキテクチャを抱えたアプリのリファクタリング事例〜
🚪Track B
📎標準アプリから学ぶ、HIGが教えてくれないiOSデザインのこと
📎キラリと光るテクニック、アプリをデモするときの心構え
📎iOSエンジニアの為のgrpc-swift入門
📎再利用可能なUI Componentsを利用したアプリ開発
📎Playground駆動開発のすすめ
https://speakerdeck.com/rockname/playground-driven-development-suggestion
https://github.com/rockname/PlaygroundDrivenDevelopment
📎アルゴリズムを通じてよりよいアプリを
📅 1日目
2018/8/31 at Waseda University
🚪Opening
iOSDC Japan 2018 Opening (YouTube)
iOSDC Japan 2018 スポンサー紹介 (YouTube)
iOSDC Japan 2018 会場 & 企画説明 (YouTube)
🚪Track A
📎~~ †††† 漆黒の魔法 Objecitve-C Runtime API †††† ~~
📎🥇MicroViewControllerで無限にスケールするiOS開発
📎安定したチャットを実現するためのアプリとAPI設計
📎iOSアプリ内で不正なSSL証明書を検知する
📎宣言的UICollectionView
https://speakerdeck.com/ishkawa/declarative-uicollectionview
https://github.com/ishkawa/DataSourceKit
📎Swiftコードから状態遷移図を自動で生成し、継続的にメンテナンスしやすくする
📎差分アルゴリズムの原理について
📎レガシーなアプリケーションの60fps化を目指す為にやっていること
🚪Track B
📎Markdownをリアルタイムに解析する
📎Swift 4.2 はどのような進化をしているのか
📎Swift Compilerの最適化入門 - AllocBoxToStack編
📎コンパイラから紐解くSwift method dispatch
📎肥大化しがちなアプリの起動経路を整理する
📎iOS WKWebViewの魔改造
📎iOSと(深層)強化学習
📎動画アプリをなめらかに動かす技術
📎差分計算アルゴリズムを用いた高速なUITableView描画
📎Swiftの生みの親によるasync/await for Swiftを徹底解説し、新しい非同期処理の手法を理解する
🚪Track C
📎複数のライブ映像を同期再生するのが大変だったので知見をお伝えします
📎リアルタイム革命
スマホアプリエンジニアだから知ってほしいブロックチェーンと分散型アプリケーション
📎grpc-swiftを使ってiOSアプリでも快適なgRPC通信を行う
https://speakerdeck.com/kyoheig3/iosdc-2018
https://github.com/cats-oss/grpc-swift-client
📎MusicアプリのTransitionを再現する
📎フォントと組版の30分入門
📎Swiftの型システムに入門する - lib/Semaの歩き方
📎GitHub API で体験する GraphQL
🚪Track D
📎macOSでもっとアプリを作ろう
📎海外展開を目指すアプリでセキュアで速い画像と動画の閲覧を実現した話
📎とある端末の触覚技術 -フィードバック-
📎フロントエンドエンジニアからみたiOS開発
📎iOSエンジニアが知るべきProgressive Web Apps開発のエッセンス
📎tvOSアプリUIの勘所
📎プロトコルでStoryboardともっと仲良くなる
📎iOS×React Nativeのハイブリッド開発現場から伝えたい事
📎Haptic Feedback による効果的なマイクロインタラクション
🚪Interactive Round Table
テスト相談会
📅 2日目 (レギュラー)
2018/9/1 at Waseda University
🚪Track A
📎iPhone が数秒おきにクラッシュするんだけど!
📎詳解Fastfile
📎🥉Depth in Depth
📎5000行のUITableViewを差分更新する
📎Swift Playgrounds Bookの作り方と配り方〜カメラからの画像をリアルタイムにいじるPlayPixels
📎State of the Union ~2018年のアプリ開発事情~
🚪Track B
📎In-App Purchase再考 ーサーバサイドエンジニアの運用経験と他決済手段との比較を添えてー
📎東急ハンズのP2Pレジ間通信2018
📎Auto-Renewable Subscriptionsを5年間運用した歴史から学ぶ注意点
📎ARKit Maniacs
📎「QRコード読み取り?楽勝ですよ😙」=>「AVFoundationを信じたおれがバカだった😇」
📎Synchronized iPhones!
📎UIViewとUITextInputで作る縦書きのTextView
📎気遣いの iOS programming
🚪Track C
iOSでSwitchの複数ディスプレイ配置調整を実装してみた
📎二癖くらいある画面収録からの生放送
📎Charles でネットワークデバッギング
📎Plasma - gRPC streamを利用したリアルタイムなユーザー体験
📎LIFULL HOME'S「かざして検索」リリースの裏側
📎iOS × GraphQLの嬉しみとつらみ
https://speakerdeck.com/mogaming/pros-and-cons-of-ios-and-graphql
https://drive.google.com/file/d/1sz7kW_S0j0zG3lY4LtsBOyTEEQBlLvZT/view
📎すべては「サクサク感」のために! QUICで早くなる?インターネットの世界と,周辺プロトコルの話
📎WebSocketをiOSに持ち込んで辛い思いをした経験がありますか!?
📎動作確認のための社内アプリ配信サービスを新たに作った話
🚪Track D
EDGE NEXT 関連セッション
EDGE NEXT × D-DATaの相乗的人材育成プログラムの威力
AIとデータセキュリティ〜 安全なデータ活用・流通のための仕組みとテクノロジー 〜
🚪Interactive Round Table
📎Storyboard/AutoLayout相談会
https://workflowy.com/s/Cucu.s18gQOkJN1 (議事録)
https://twitter.com/seijin4486/status/1035780063164125186 (ホワイトボードまとめ)
📅 2日目 (ルーキーズLT)
🚪Track A
📎Rx世界線とリーディングシュタイナー
📎サポートを求めてAppleに電話をするまでの道のり
派遣で事務職が開発未経験でもiOSDCで登壇したくて、アプリ作りました!
📎iOS技術本を出版した時の失敗談
📎イチから始めるアクセシビリティ ~まずはできるところから~
📎Androidエンジニアが1週間でiOSアプリ開発を学び、1ヶ月で大規模アプリ開発にJOINした話
📎NoSQLの歴史にみる、Cloud Firestoreとの正しい付き合い方
📎サーバーの状態に応じて画面遷移させるための設計
📎@cosmeアプリにおけるTextureの活用
📎機械学習の初心者がCreateMLでレトロゲームのカート認識
iOSDC2019を福岡に招致したい!
🚪Track B
AVAudioUnitEffect実演 〜もっと音を楽しもう♪〜
📎ARKit2.0でAppleが伝えたいアプリ体験を考える
https://speakerdeck.com/mcz9mm/arkit2-dot-0deapplegachuan-etaiapuriti-yan-wokao-eru
https://twitter.com/mcz9mm/status/1035803170536976384 (チートシート)
📎Firebase/RemoteConfigを用いたちょっと変わった運用
📎虚無から48時間でiOSアプリをリリースする😴
📎あなたの知らないMeasurementとUnitの世界
📎Visionフレームワークのリアルタイム顔検出を使えば、ウインクするときゃるん♪と音が鳴る二次元美少女になれる!
https://speakerdeck.com/minami1389/visionhuremuwakufalseriarutaimuyan-jian-chu-woshi-eba-uinkusurutokiyaruntoyin-gaming-ruer-ci-yuan-mei-shao-nu-ninareru
https://www.youtube.com/watch?v=8RxttCTOogE
📎OSSを育てながらiOSアプリで「パンくずリスト」を実現した
📎マスタリング CGAffineTransform
📎Apple製品のアニメーションはなぜ気持ちいいのか考える
UITableViewに動画広告を表示する
📅 3日目 (レギュラー)
2018/9/2 at Waseda University
🚪Track A
📎iOSマイクロインタラクション入門
📎Swiftのジェネリクスはどうやって動いているのかコンパイラのソースから探る
📎デバイス・OSバージョンの依存が少なく、メンテナンスしやすいビューを作る
https://speakerdeck.com/kishikawakatsumi/iosdc2018
https://www.icloud.com/keynote/04D-AD3CJxQh0U2IqjRmtxQBQ#iOSDC2018
📎🥈iOS アプリの開発速度を170%高速化したデバッグノウハウ
📎iOSでグラフを描くために必要な知識について
https://speakerdeck.com/masashi_sutou/iostekurahuwomiao-kutamenibi-yao-nazhi-shi
https://github.com/masashi-sutou/PieGraphSampler
http://keeping.hatenablog.jp/entry/2018/09/02/234617
🚪Track B
📎プッシュ通知はどのような進化をたどってきたか
📎ライブ配信アプリのアイテム再生をMetalで実装する事になった話
📎AutoLayoutエラー診断所 ~発狂しないためのデバッグ手法~
📎作ってわかるレンダリングパイプライン CPUで3D描画
📎LLDBを最大限活用してみる。
🚪Track C
📎TextKitから表現が広がる
📎プロトコルを使って複数サービスを跨いだmusic playerを実装する
📎iOSエンジニアのための、SwiftからPythonのライブラリを使って機械学習する方法
📎がっつりやるリアルタイムキャンペーン分析
📎圏論とSwiftへの応用
🚪Track D
📎田舎のWebベンチャー企業にアプリ事業を持ち込んだらこーなった
📎多言語対応のススメ
📎教育・企業におけるデバイス管理手法について
https://speakerdeck.com/kenchan0130/jiao-yu-qi-ye-niokerudebaisuguan-li-nituite
https://speakerdeck.com/kenchan0130/jiao-yu-qi-ye-niokerudebaisuguan-li-nituite-fa-biao-falsetofu-ki
📎UIViewPropertyAnimatorで実現するリッチなアニメーション表現
https://speakerdeck.com/hedjirog/uiviewpropertyanimatordeshi-xian-sururitutinaanimesiyonbiao-xian
https://github.com/hedjirog/CustomPresentation
📎あえてWebエンジニア以外の人に聞いてほしいWebRTCの話
📅 3日目 (LT)
🚪Track A
📎全部iOSにしゃべらせちゃえ!
📎🀄
https://speakerdeck.com/giginet/-15
https://github.com/giginet/Peafowl/
📎The latest info of Carthage
📎(続)カンファレンスアプリを改善した!!
📎weak vs unowned
https://speakerdeck.com/yutailang0119/weak-vs-unowned
https://github.com/yutailang0119/iOSDC2018Sample
📎不摂生で救急搬送されたiOSアプリ開発者がiPhoneとAppleWatchをフル活用して健康を取り戻した話
📎グラフィックス以外の分野でのMetalの可能性
https://speakerdeck.com/kotetuco/metal-for-data-parallel-computations
https://github.com/kotetuco/ComparisonOfMetalAndOpenCV
OK Google、Swiftでスマートスピーカーは実装できる?
📎DroidKaigi 2018 iOS appのApple審査が通るまで
📎インドのインターネット環境との戦い方
WebSocketによるビデオ通話
📎小さくはじめる端末管理
https://speakerdeck.com/nonchalant/iosdc-20180902-xiao-sakuhazimeruduan-mo-guan-li
https://github.com/Nonchalant/kikanbo
📎Create ML で マッチングアプリのサクラを判定しよう!
📎明日から使えるViewControllerのMemory Leak検出
App Reviewの不確実性に向き合う
📎Swiftで始めるRaspberry Pi
📎Swift で数学研究のススメ
🎈 俺コン1日目
2018/9/12 at DeNA Co., Ltd.
https://ore-con.firebaseapp.com/
🚪Track A
📎非同期UI描画による高速なアプリケーションの実装
📎エンジニア経験を活かしたスクラムマスターとして開発チームとプロダクトを成長させる
📎勇気を出して、Appleにバグレポートを出してみませんか?
ブラックボックスなコードに対して少しずつテストを書いていくためのテクニック
(加筆後に公開予定だそうです)
🚪Track B
📎ソースコードから読み解く - Quick はどのように実装されているのか?
📎Androidを考えたiOSアンチパターン
🚪Track C
📎Reduxで10本弱のアプリを作った弊社のナレッジ、時間の許す限り話すよ
📎iOSでmp4をデコードして自分だけの動画プレーヤーを作ろう!
📎シンボリケート/クラッシュログを人間が読めるようになるまで
🎈 俺コン2日目
2018/9/13 at DeNA Co., Ltd.
https://ore-con.firebaseapp.com/
🚪Track A
📎UIWindowが複数存在するとき、ステータスバーのスタイル設定が難しい件
📎業務と両立できる!開発環境の改善!
📎Textureは部分的に導入はできますか?
📎Swiftで聞いておぼえるテスト書き
🚪Track B
📎アトミックデザインの導入と実践プロセス
📎iPhoneでコスプレをする技術
📎実例から学ぶモバイルアプリにおけるモーダル/モードレスの考え方
📎iOSの理想的なUIを考える
🚪Track C
📎Adaptive UI - 解像度の異なるデバイスや画面の向きに対応する最適なレイアウトへ -
📎もっとFluidでRedirectableなモーダル表示アニメーション
📎ログの発火テストをXCUITestで自動化しようとしたがUnitテストで実装した話
https://speakerdeck.com/martysuzuki/rogufalsefa-huo-tesutowoxcuitestdezi-dong-hua-siyoutositagaunittesutodeshi-zhuang-sitahua
https://github.com/marty-suzuki/GitHubClientTestSample
📎SwiftNIO のアーキテクチャーとRxHttpClient
🎈 Reject Conference 1日目
2018/9/18 at DeNA Co., Ltd. / LINE Fukuoka Corporation (Satellite)
https://iosdc-reject-conference.connpass.com/event/93314/
🚪Track A
📎Swiftをより良くする
📎エンジニア経験を活かしたスクラムマスターとして開発チームとプロダクトを成長させる(2)
非同期UI描画による高速なアプリケーションの実装
📎Bitcoinの署名の仕組み、Bitcoinのscriptを書いてみよう
🚪Track B
📎Factoryの自動生成によりテストを書きやすくする
📎退屈なことはApp Store Connect APIにやらせよう
https://speakerdeck.com/giginet/fastest-trip-to-appstore-connect
https://github.com/giginet/Wormhole
📎RxSwfitを採用したプロジェクトにおけるテストパターン
📎Twitterのプロフィール画面の再実装を通して、ScrollViewを組み合わせたContainerVCの作り方を学ぶ
🎈 Reject Conference 2日目
2018/9/20 at DeNA Co., Ltd. / LINE Fukuoka Corporation (Satellite)
https://iosdc-reject-conference.connpass.com/event/93315/
🚪Track A
📎デザイナーと一緒にコラボして仕上げるアニメーション実装とショーケース紹介
📎UITesting with GraphQL
📎「開発初心者は何がわからないのか」わからないを言語化するヒント
📎iOSアプリのUniversal対応をやめようとした話
📎Flutter触りまくったからその知見を公開する
🚪Track B
Metalによる素材を活かしたUI作り
📎Manual DI with ReactorKit
📎Self-Documenting Code のススメ方
📎ジェネリクスを使ったプロフィール画面の構築
🚪Track C
📎Tests Live Coding
📎FlutterアプリをAppStore申請しても通らない、、、
📎UICollectionViewのデータ構造とViewの構造を統一する
📎DDD(ドメイン駆動設計)を知っていますか??