こんにちは。Androidエンジニアのあらんこと荒武です。2016年5月18日~20日、Googleが年に一度開催する開発者向けのカンファレンス、Google I/O に参加してきました。今回は僕が見てきたものをレポートとしてお届けします。ちなみに僕は今、グッドパッチのベルリンオフィスでこの記事を編集しています。
会場の様子について
場所はアメリカのマウンテンビュー。会場はShoreline Amphitheatreというところです。写真をみてもらうとわかると思うのですが、完全に野外フェス…。
この円形劇場以外にも、やや小さめの建物が10個くらいあります。小さめといっても数百人が収容出来る規模で様々なテーマのセッションが開催されて、気になったテーマのセッションに自由に参加できます。
もちろんほかにもブースが用意されています。Codelaboと呼ばれるブースでは、新しいAndroidStudioの機能を試しながら、Googleの人にわからないことを教えてもらったり、気軽にコミュニケーションをとることが出来ます。Google I/Oを通してエンジニアという言葉を使わず、ディベロッパーという言葉を使われていたのも印象的でした。
GoogleDesignのMaterialDesignチームの人が一人20分くらい使ってレビューをしてくれるという貴重な機会があったので、せっかくなのでレビューしてもらいました。(1時間待ちでした。)僕が開発に携わっている「Updraft」のレビューをしてもらい、概ね良い評価をいただきました。
今回のトピックス
GoogleはAI(Artificial Intelligence)ファーストに舵を切っているのだなという印象を受けました。アプリの中にAIが当たり前に組み込まれていく未来で、インターフェースのデザインはどう変わっていくんだろうと思いながら、講演を聞いていました。大きなトピックスについては箇条書きでこちらにまとめます。
・音声認識の向上
・GoogleHome(IOT)
・Allo / Duo (AI)
・DayDream (VR)
・Android N
・Android StudioのUpdate
・Android Wear 2.0
・Web
・Firebase
こちらにも詳しくまとまっているので参考にしてください。
興味深かったセッション
Material Design Improve
“I’m an Android Designer and Developer” という紹介で始まったセッション。Android 5.0以上だと、ここまできるよ、という事例を交えた内容でした。
AndroidにはTextViewというコンポーネントがあって、文字を表示させるための道具なのですが、それを再発明して自分たちの表現したいタイポグラフィを実現していました。
他にも緻密なパスアニメーションについて解説したり、それをどうやって設計して、設計のためにはどういう発想が必要で、そしてどのように実装に落とすのかということをコード付で詳細に語ってくれました。
このセッションを聞いて、新しいことをやるのだとしたら4系は切らなければいけないなと。あと、美しいインタラクションを表現する方法についてもっと学ばないとなと強く動機づけされました。
VR Design process
VRという新しいジャンルで、どのようにプロダクトをデザインしていくのかというセッション。
印象に残ったポイントは以下の4点です。
1. ロールにこだわるな、出来ることにフォーカスしろ。
2. 出来ることの幅は多いほうがいい、その上でコラボレーションするべき
3. 既存の枠組みはほぼ役に立たないので、自分の経験から学ぶことの方が多い
4. チームビルディングは重要である
登壇者は「今までの(デザインの)技術は役に立たない」と何度も口にしていました。
「私は●●のデザイナーだから」というそれだけという意識の専門職意識を捨てて、実際の自分は何ができるかを見つけてそれに向かってフォーカスしたほうが良い。自分ができる領域が増えるほど、自分の中でも相乗効果が生まれるし、チーム内でもさらにコラボレーションが生まれるのです。さらにものづくりの仕事には、一人で出来る規模の仕事は少なく、絶対にコラボレーションが発生します。要するにチームで仕事をしていく力が必要とされているということです。そのためにチームビルディングは重要視されているとのことでした。MVPを作る時でさえ、2人以上のデザイナーをアサインすべき、ということが述べられていましたので、今後ますますチームで仕事をしていくというスタイルが主流になりそうですね。
Communication between Designer and developer
全てのデザイナーがコードをかけるわけではないし、全てのデベロッパーがデザインをできるわけではない。そうなると、どうしても「一緒にものを作る」という事態が発生する。では、どうすれば上手く一緒にものを作ることができるのでしょうか。Googleのデザインチームが示した回答は、「共通言語を持つ」ということでした。
例えば、デザイナーがAndroid(またはiOS)の実装についてある程度理解することのような相互理解が重要とのこと。理解するということは、デザイナーがコーディングをしてアプリが作れるようになるということではなくて、Android独特の制約について知っておくべきということです。具体的にはスペーシングにはpx単位ではなくてdpを使えとか、レイアウトのスペーシングはガイドラインに依拠しようとか。After Effectでmp4作るだけではなく、きちんとデベロッパーがわかるようなドキュメントを作ろうといったレベルでの話です。
何のオブジェクトが、どのようなアニメーションをして、時間軸はどうなっているのか。今からでもすぐに意識できるようなTIPSで、非常に勉強になりました。
これらのセッションは動画でも観れるようになっているので、ぜひ見てみてください。
Google IO 2016 – Full Keynote (DAY 1) || Xtreme Tech
Google IO 2016 Keynote – Day 2 || Xtreme Tech
Material improvements – Google I/O 2016
VR Design Process – Google I/O 2016
Designer & developer communication – Google I/O 2016
おわりに
色々な学びや出会いもありましたが、一番印象に残っているのは空の青です。とても澄んでいて、濁りがない。吸い込まれそうなほど突き抜けています。
グッドパッチのカンパニーカラーの青は、サンフランシスコの空の色からとっているのですが、本当にいい色をしていました。