LINE Engineering
Blog

Try! Swift NYC へ参加してきました!

Haga Masaki 2017.11.02

こんにちは。LINEマンガのiOSクライアントを担当している芳賀です。
LINEには「エンジニアは業務に関係のある海外カンファレンスへの参加費用すべてを一年に一回は会社に負担してもらえる」という制度があります。iOSエンジニアの場合WWDCがとても人気ですが、私は今回その制度を利用して9月4日から6日までNYCで開催された「Try! Swift NYC」に参加してきました。 写真は今年8月にオープンしたばかりの弊社キャラクターグッズが買えるLINE Friends Store ニューヨークタイムズスクエアストアです。
カンファレンス会場から徒歩5分ほどのところにありました。

会場

今年のTry! Swift NYCはTimes Squareの北西にあたるHell's Kitchenというエリアで行われました。ブロードウェイに近いこともあり、会場近くには有名なBroadwayの劇場があったり、会場自体がもともと舞台用なのか、ミュージカルのセットがあってその上にスクリーンを設置しているというとてもユニークな感じのものでした。 会場外側のホールウェイの様子です。カンファレンス参加者には朝食と昼食、おやつが振る舞われました。

おすすめの発表

どれもとてもおもしろい発表だったのですが、私が特に気に入った発表5つをピックアップしました。

Map and FlatMap Magic

Swiftを学び始めたときやFunctional Programmingについて勉強し始めると、「MapとFlatMapってなにが違うんだろう」と悩む人は少なくないのではないでしょうか。正しく理解できないままなんとなくMapを使うべきところでFlatMapを使ってしまっていたりと、2つの関数が適所で使われているかどうかはたまに話題に登ると思います。この発表では、SwiftのMap、FlatMapがポップな手書きの”カップケーキの配列”を用いてグラフィカルにわかりやすく、また最終的にコードにまで落とし込まれていてとても理解しやすいものとなっていました。

Improving Swift Tools with libSyntax

Swiftコンパイラに搭載されているlibSyntaxというC++のライブラリをSwift側から呼び出せるようにするAPIのコミッターによる発表です。Swiftコンパイラの概要、libSyntaxがどのようにコードを構造化してデータを保持しているのかと、libSyntaxのSwiftAPIのデザイン方針を知ることができます。また、実際にlibSyntaxを利用してSwiftコードのFormatterのデモが行われました。

Swift Chatbots for Fun! and Profit?

弊社台湾支社のiOSエンジニアであるRayがSwiftのサーバーサイドフレームワークVaporを用いてチャットボットを実装した話です。実際にチャットボットを実装した経験から、開発の導入部分からよいチャットボットのポイントなど、かいつまんで説明されています。これからSwiftでチャットボットを開発してみたいというひとにおすすめです。

The Role of being Technical in Technical Leadership と Machine Ethics and Emerging Technologies

この2つのプレゼンはSwiftとは直接関係ありませんが、前者がリーダーシップについて、二つ目のプレゼンは、テクノロジーにともなって新たに必要となってくる倫理観についてのプレゼンでした。 The role of being Technical in Technical Leadershipでは、偉大なシニアエンジニアやエンジニアマネージャーがもつ特徴を「デバッグ」、「共感」、「判断」の3つに分けて説明しています。エンジニアがキャリアを積むにつれて、チームのために何をすべきなのかが簡潔にまとめられています。

Machine Ethics and Emerging Technologiesは、急速な技術の発展によって社会にもたらされる変化と、それにともなって新しく必要となってくる倫理観についてのプレゼンです。例えば、完全自動運転の車が子どもとの接触事故を起こしそうになった場合、運転手の安全を犠牲にしてでも子どもを回避すべきか、それとも運転手の安全を最優先にすべきか。子どもが5人ではどうか。という問いかけから始まり、自動運転自動車やドローンが社会にもたらすであろうインパクトとそれに対してどのような倫理観や制度、社会インフラが必要になるのかを様々な視点から考察していきます。

どちらの発表も、思わずトークに引き込まれてしまうほど力強く、知的好奇心を刺激してインスピレーションを与えてくれるとてもおもしろいプレゼンでした。コードは一切出てこないですがエンジニアとしての視野が広がるとても良い発表だと思います。。

Building a framework with Viper

アーキテクチャの一つであるViperパターンについて噛み砕いて説明されています。Viperパターンの各モジュールの役割の説明、各モジュールの関係性と、Viperパターンの利点、どのようなプロジェクトが採用すべきかなどViperパターンの概要がわかり易く説明されています。Viperパターンは、癖のあるArchitectureで、その利点を享受できるプロジェクトの数が限られていますしなかなか勉強しづらいものだと思っていましたが、この発表はスライドだけではなく、観客を舞台に招いてのとてもインタラクティブなプレゼンとなっていたので面白く、Viper ArchitectureのIntroductionとしてはとても優れた発表だとおもいました。

最後に

発表の合間に手品のような小ネタを挟んできたり、さすがアメリカといった感じのスピーカーの圧倒的なトーク力に関心したりと、日本のカンファレンスではまたひと味違ったエンターテインメント性にとんでいましたし、おすすめの発表の他にもRxSwiftのZaher氏による新しいRxのフレームワーク「RxFeedback」のプレゼンや現地のエンジニアとの交流などとても刺激的なカンファレンスでした。

この人が発表の合間合間にボーリングをしたり手品をしたりしてました

iOS Try! Swift NYC

Haga Masaki 2017.11.02

Add this entry to Hatena bookmark

リストへ戻る