2018年8月30日(木)より4日間に渡って開催される「iOSDC JAPAN 2018」

公募されたプロポーザルの中から、サイバーエージェントのメンバーのトークが14個採択されました!こちらのブログでは、トーク概要や本人たちに聞いた当日の見どころをご紹介します。

 

 grpc-swiftを使ってiOSアプリでも快適なgRPC通信を行う

8月31日(金)14時20分~(TRACK C)

伊藤 恭平(@KyoheiG3

Swiftで記述されたiOSアプリでも、grpc-swiftを利用してgRPC通信をある程度手軽に利用可能になります。gRPCを利用すると、通常の通信を行うよりも通信速度は速く通信量も少なく済み、更には双方向での通信を行うことができます。今回は、gRPCの概要、grpc-swiftの導入方法、実際にプロジェクトで利用する際の応用的なことや、grpc-swiftにコントリビュートしたときの経験談などをお話させていただきます。

<本人コメント>

「じーあーるぴーしー、よくわからない」という方でも、「知ってるー、使ったことあるわ」という方でも楽しめるような話になるようにがんばります。

 

とある端末の触覚技術 -フィードバック-

8月31日(金)14時40分~(TRACK D)

辰己 佳祐(@TK_u_nya

iPhoneの画面上で3DTouchを行うと、ブルッと端末が震えるフィードバックを返してくれます。フィードバックが返ってくると、なんとなく気持ち良いですよね笑 その気持ち良いフィードバックは、iPhoneに搭載されている「Taptic Engine」によって実現されています。このトークでは「Taptic Engine」とはどういった技術で、どのような場面で使用すれば良いのかという話をします。

<本人コメント>

あまりスポットライトの当たらない「Taptic Engine」によるフィードバックをサービスに導入してみたいと思ってもらえるように頑張ります!

 

差分アルゴリズムの原理について

8月31日(金)16時50分~(TRACK  A)

堀田 有哉

TableView, CollectionViewの部分更新の為に、RxDataSources, IGListKitなど、多くのライブラリが開発されて来ました。それらの内部では、効率的な差分検出のために差分アルゴリズムが使われています。作る側はもちろん、使う側もその原理について理解しておくことは重要です。今回、Myers, Heckelの2種類の差分アルゴリズムについて解説させて頂きます。

<本人コメント>

分かりやすい解説が出来ればと言うお気持ちです。

 

動画アプリをなめらかに動かす技術

8月31日(金)16時50分~(TRACK  B)

波戸 勇二(@dekatotoro

近年、動画サービスが盛り上がりを見せています。単に動画を再生するだけなら簡単ですが、なめらかなUI/UXの実現や複数動画再生の制御、エラーハンドリングなど実際のサービスでは考慮すべきことが多々あります。iOSでAVPlayerを使った動画再生の知見についてお話したいと思います。

<本人コメント>

動画アプリを開発している方、これから開発しようとしてる方にお役に立てるように頑張ります。

 

Graph on Swift

8月31日(金)17時40分~(TRACK  C)

仁多見 遼(@bird_tummy

apollo-ios や GraphQLSwift/GraphQL といったライブラリを使うと、GraphQL を使ったクライアントアプリや GraqhQL サーバを実装することができます。このトークでは、クライアントとサーバの両面から GraphQL について触れつつ、ライブラリを利用した実装方法や実際にプロジェクトで利用した際の注意点などをお話できればと思います。

<本人コメント>

Swift で GraphQLを使う方法をクライアントとサーバの両面からお話します!登壇はもちろんですが、スタッフとしてもイベントに貢献できるようにがんばります。

 

二癖くらいある画面収録からの生放送

9月1日(土)11時20分~(TRACK C)

松岡 秀樹(@matsuokah_

iOS11から可能になった画面収録で生放送機能を実装し、サービスインするまでの実装

– 生放送のするまでの全体フロー

– RPBroadcastSampleHandlerおよび、画面収録のExtensionのライフサイクルについて

– 画面のサンプリングタイミングと生放送の特性について

– SampleBufferの差し替えによる、生放送中の動画の動的な編集

– 動画データの検証ポイント

<本人コメント>

動画周辺はほとんど公式ドキュメントに載っておらず、トライアンドエラーによる実装も多々ありました。そのノウハウやナレッジをお伝えできればと思います。

 

Plasma – gRPC streamを利用したリアルタイムなユーザー体験

9月1日(土)13時50分~(TRACK C)

青山 遼(@ra1028fe5

時は2018年未だに定期ポーリングを使った画面更新でリソースを無駄遣いしていませんか?FRESHではgRPC streamを利用し、サーバープッシュ方式でイベントを受け取る事ができるミドルウェアPlasmaを開発し、リアルタイムで快適なユーザー体験を提供しています。このトークでは、Plasmaについて実際の利用例を紹介しながらお話します。

<本人コメント>

ポーリングに嫌気が差し、もうデータを取り直すタイミングをサーバーから教えてよ、という怠惰な気持ちを満たす取り組みの一つを紹介します。お昼ご飯を食べて丁度眠くなる時間になりますので、くつろいだ気持ちでお聞きください。

 

ARKit Maniacs

9月1日(土)14時20分~(TRACK  B)

服部 智(@satoshi0212

私はこの半年、ARの使用事例を集めると共にその拡張した使い方を検討してきました。その中で得たTipsを共有するとともにAREnvironmentProbeAnchor、ARWorldMapなどの効果的な使い方、空間共有の実例などをデモを交え熱く深く語りたいと思います。

<本人コメント>

Appleも非常に力を入れているARKitについての知見と事例を共有し、皆の好奇心を刺激したいと思います。

 

マスタリング CGAffineTransform

9月1日(土)17時45分~(TRACK  B)

行木 千春(@Ridwy

撮影した映像の向きがおかしい?VIEWの位置計算で困ってる?とても良い機会です。5分でCGAffineTransformをマスターしましょう!CGAffineTransformはちっぽけなstructですが、使いこなせば非常に強力なAPIです。基本知識から組み合わせて掛けるときの考え方のコツなどを具体例と共にお話しします。もう座標計算に悩んで時間を使うことはありません!
<本人コメント>

動画結合のコードレビューで「もっと早く知りたかったよ~!」と言われたのがきっかけでこの話をしようと思いました。実務に役立つ内容になるよう頑張ります。

 

圏論とSwiftへの応用

9月2日(日)15時10分~ (TRACK C)

稲見 泰宏 (@inamiy 

圏論(カテゴリー理論)は、「対象」と対象間の「射」(関係性、構造)の集まりからなる「圏」を抽象的に扱う数学理論です。関数型プログラミングで度々登場する「モノイド」「関手」「自然変換」「モナド」の由来であり、さらには「米田の補題」「随伴」「極限」「F代数」「カン拡張」など、より高度な概念が登場します。この発表では、圏論から得られる様々な帰結について、Swiftの文法と型で分かりやすく解説していきます。

<本人コメント>

最終セッションで、皆様の疲れ切った頭に、右随伴からの忘却関手を適用する予定です。

 

(続)カンファレンスアプリを改善した!!

9月2日(日)16時20分~ (TRACK  A)

竹澤 俊季 (@to4iki 

昨年度のLTで話したカンファレンスアプリをアップデートしました。本LTでは下記の内容を話します。

– 数々のカンファレンスアプリをパ○り、いや参考にし必要な機能、不要な物を洗い出し機能を研ぎ澄ました

– 顧客が求めているカンファレンスアプリとは一体何だろうか

– POとの色々(認識のずれ、譲れないお互いの意見)

<本人コメント>

実アプリを題材にした生々しい話は勿論、少しでも役に立つ内容になるよう頑張ります!

WebSocketによるビデオ通話

9月2日(日)17時10分~(TRACK  A)

竹田 光佑 (@daketake

ビデオ通話を実装するにあたり、一般的なWebRTCを用いる代わりに、WebScoketを用いて実装した例をアーキテクチャを示します。WebSocketを用いることで手軽に複数人のビデオ通話が実現できます。また、ビデオ通話をWebRTCとWebSocketで実装した時の利点と欠点を比較します。

<本人コメント>

WEBSOCKETを使ってビデオ通話を行うのはメジャーではありませんが、通話自体は可能です。あまりパフォーマンスはよくありませんが、既存のWEBSOCKETのアーキテクチャがあれば簡単に作れるので実装の参考になれば幸いです。

 

Create ML で マッチングアプリのサクラを判定しよう!

9月2日(日)17時40分~ (TRACK  A)

海川 和弥 (@sun54907

WWDC 2018 で発表されたものの一つに、 Create MLがありました。 Core ML で使うモデルを簡単に作れるフレームワークです。画像をある程度用意すれば簡単に作れます。弊社マッチングアプリ「タップル誕生」では日々ユーザーの体験向上のために、24時間監視体制でサクラを撲滅しています。しかし、何かしら行動を起こしてからじゃないと判定するのは難しいのが現状です。そこで、顔写真をあげた段階で見つけ出そう、という試みです。

<本人コメント>

マッチングアプリの内部事情を交えつつ、 Create ML の説明ができればと思っています。どのくらいサクラを判別できたのか、お楽しみに!

 

明日から使えるViewControllerのMemory Leak検出

9月2日(日)17時45分~ (TRACK  A)

高橋優介(@corin8823

クロージャやRxSwiftを利用していると循環参照によるMemory Leakが発生してしまうことがあります。実装時やレビュー等で気をつけるのはもちろんのことですが、それでも起きてしまう事があると思います。その対策としてすぐに検出するための実装についてお話できればと思います。

<本人コメント>

LT枠なのでTIPS的な内容ですが、聞いてよかったなと思えるように頑張りますლ(´ڡ`ლ)

 

チケット購入はこちら!ご興味ある方は是非チェックしてみてください。

サイバーエージェントはiOSDC JAPAN2018に協賛しており、当日はブースも出します。ぜひ遊びに来て下さい~!