こんにちは!エウレカのPairs, GlobalチームのiOSエンジニア 島です。2019/03/21-23 に開催された「try! Swift Tokyo 2019」に参加してきたので、カンファレンスの感想を綴っていきたいと思います。
try! Swiftとは?
try! SwiftはSwift言語での開発における最新の応用事例について集まる国際コミュニティです。
このイベントは世界中から人々が集まり、Swiftのスキルを向上させるための、高度な知識やテクニックを共有し、協力しあうことを目的としています。
https://www.tryswift.co/events/2019/tokyo/jp/
今回の参加者は900人以上、参加国数は32カ国から参加者が集まっていたみたいです。年々規模が大きくなっていて、東京だけでなくインドやニューヨークなど世界各国で開催されています。僕は今回が初めての参加でした。
ちなみにエウレカでは、国内・海外問わずカンファレンスへの参加費は福利厚生として会社が負担してくれます。なので、新卒の僕でもお金のことは気にせずカンファレンスを楽しむことができました!
当日の様子
セッション
今回のセッションは
- ハードウェア制御
- サーバサイド
- 音声制御
- デザイン
- AR
- LSP
- etc
などSwiftの可能性を示すような発表が多いなと感じました。これはいいことですね。Swiftの今後が楽しみです。
try! Swift は他のカンファレンスとの違ってセッションが複数同時進行ではなく、一つの会場で全員が同時に聞くというものでした。なのでどっちに行こうか迷うみたいなことはなく落ち着いて見ることができました。また、同時翻訳をしていて、日本語がわならない人でも英語がわからない人でも発表の内容を理解できるように配慮されているのも魅力です。
印象に残ったセッション
僕が参加したセッションのなかでも、特に印象深かったものをピックアップしてご紹介したいと思います!
- KeyPath入門
こちらはKeyPathの活用についての話で、面白い発表でした。KeyPathはタイプセーフなショートカットくらいに思ってたんですけど、連結とか抽象化とかいろいろできるんだと知りました。
https://speakerdeck.com/terhechte/introduction-to-swift-keypaths
- Introducing SourceKit-LSP
nohanaのRyo Izumiさんの発表で、SourceKit-LSPの紹介とVimで利用する場合のDemoでした。LSPについてほとんど知らなかったのですが、Swift5からABIが安定化していくらしいのでXcode以外での開発が捗りそうです。個人的には、LSPが比較的新しいもの(2016年にMicrosoftが定義)であることと、テキストエディタとプログラミング言語の間の共通プロトコルというものがあることを知ることができただけでも学びになりました。
https://speakerdeck.com/rizumi/introducing-sourcekit-lsp
- 魔法の法則
Dave DeLongさんによる発表でした。タイトルからは内容が予測できませんが、とても勉強になる発表でした。ライブラリの提供者としてどうすべきかの参考になりました。
魔法の法則
1. 作者が魔法で満⾜のいくように葛藤を解決する能⼒は、読者がその魔法 をどれだけよく理解しているかに正⽐例します。
2. 制限は権力よりも重要です。
3. 新しいものを追加する前に、すでに持っているものを拡張してください。
ユーザが理解できるように説明するべき。制限することで新たな創造が生まれることもある。容易に新しいコードを追加せず既存のコードと向き合って深さを追求する。
今後コードを書いていく際には、上記のことを意識して書いていこうと思いました。
- Swift Type Metadata
Type Metadataについて何も知りませんでした。Swiftの型にはメタデータについて知ることができた発表でした。 `String(describing: )`くらいしか知らなかったのですが、それ以外にもいろいろ活用できるんだなと学べました。ただ、発表を聞くだけではどういうことかさっぱりわからなかったので、あとから勉強していきたいです。
https://speakerdeck.com/kateinoigakukun/swift-type-metadata
- All About Linking Libraries
アプリ開発をしていて、ライブラリのimportエラーはよく遭遇することです。そのときにライブラリがどういう仕組みでリンクされているのかを知ることは効率的にエラーを解決するための助けになるというものでした。普段よく遭遇する問題なので、今回の話を聞けて理解が深まりました。
https://speakerdeck.com/kishikawakatsumi/all-about-linking-libraries?slide=5
企業ブース
企業ブースでは、各企業が工夫して来場者が楽しめるようなブースを用意していました。ワードパズルだったり、ガチャガチャだったり、カンファレンスではおなじみのシールを貼るアンケートだったりがありました。
印象に残ったブース
- Bitrise
個人的には、Bitriseのブースがとてもかっこよかったです。頑張って英語で話してみましたが、紳士な対応をしてくれました。
- JapanTaxi
実際のサービスの仕組みを再現していたり、アプリのアーキテクチャの解説をしていて、多くの人が足をとめて話を聞いていました。
- ZOZO
ファッションチェック用のアプリがあって、服を撮影するとWEARでどれくらいいいねがつくかを判定してくれるものでした。イベント用に開発したアプリらしいです。
そのほかにも
- カフェ
- バリスタが常駐して淹れたてのラテを用意してくれました。
- すごく人気で並ばないとゲットできませんでした。
- フォトブース
- いろんなボードがあって、記念写真が撮影できるスポット。
- Ask The Speaker
- 登壇後に登壇者と直接質問ができるスペース。
- 庭園スペース
- 床に座ってお弁当を食べている人もたくさんいました。
- 畳スペース
参加して感じたこと
セッションに関して、低レイヤーの仕組みに関する話は普段あまり知る機会がなかったので、興味深い発表が多くとても勉強になったカンファレンスでした。また、Swiftを様々な分野で応用している発表も多く、Swiftの可能性を感じることができたカンファレンスでもありました。(この記事を書いている間にSwift 5が公式にリリースされました!https://swift.org/blog/swift-5-released/)
また、同時通訳やランチ時の混雑を防ぐために導線を用意したり、参加者間の交流を促す配慮をしてくれていました。細かい部分への気配りも素晴らしく運営の方々には感謝するばかりです。快適にカンファレンスを楽しむことができました。
Twitter上での情報発信やコミュニケーションが活発なので、僕も上手く活用できると良かったかなと思います。また、海外からの参加者も多く、日本にいながら海外にカンファレンスに参加しているのかと感じるほどグローバルな雰囲気のカンファレンスでした。終わってみて、英語力とTwitter力を上げるとより try! Swift を楽しめたのかなと思いました。
こういうイベントで社外のエンジニアの方と話をすることは、業界での自分の立ち位置や差分を知るきっかけになって、エンジニアとしてのキャリアを形成していく上でもとても重要なことだと感じました。
おわりに
try! Swift は初めて参加しましたが、多種多様な参加者と興味深い発表が多く、とても充実したカンファレンスでした。来年も何かしらの形で参加したいなと思いました。
そして、余談にはなりますが今年も運良くWWDCに当選しました!WWDCに参加する人はサンノゼで会いましょう!
===
最後までお読みいただきありがとうございます!今回は、Pairs, GlobalチームのiOSエンジニア 島によるイベントレポートをご紹介しました。
エウレカでは、サービスを利用されるユーザーはもちろん、エウレカメンバーも含め「すべての人が、人生の可能性を拓いていける世界をつくる。」ことを真剣に目指しています。
エウレカにご興味をお持ちいただけた方は、ぜひWantedlyよりエントリーください。
ご応募お待ちしております!
Instagramはじめました**