CORDEA blog

Android applications engineer

umeda.apk #3 に参加してきました

umeda.apk #3 に参加してきたので、その感想です。

shibuya-apk.connpass.com

Best Practices to Slim Down Your App Size

前々から少し話題になっていたので知ってはいましたが、
やはり Cancellation Rates vs. Download Size と、
Uninstall Rates vs. Installed Size のグラフは結構印象的でした。

自分自身もストレージに余裕なくなると使ってないものでサイズがでかいものから消すので
まぁそりゃそうだよねって話ではありますが...

あと APK Analyzer 便利ですね。

ユーザーが敏感な割に作ってる側が鈍感なことが多いので、
ここら辺は APK Analyzer とか使いつつエンジニアから提案した方が良さそうです。

Speeding up your Android Gradle builds

Multi-module project はあまりやったことが無かったものの、
api と implementation の違いはなるほど、という感じでした。

Slow builds are not normal というフレーズは、言われてみればまぁそうだよね...という感じ。
2 年前くらいに「ビルド遅くない?」って言ってたのを思い出しました。

ただ 10 分かかるビルドは見たことがない...

info はよく使うものの、profile と dry-run は見たことが無かったので
これは使っていきたいです。

Actions On Google

Google Assistant の設計の話が印象的でした。

本や映画の脚本を書くように、ユーザーとの会話を掘り下げていきながら設計するあたり、
今までの設計とは全く異なるものを要求されそうで面白いですね。
これはマネージャーやデザイナーも知っておくべきだと感じました。

Api.ai は一回プロジェクト作成して放置してしまっているので、
近々試してみようかなと思います。

あと、アプリ探してもらう / 探すのがちょっと難しそうだなという印象を受けました。

Kotlin in Google I/O 2017

今何かと話題の Kotlin の話。

CyberAgent さんの FRESH! で Kotlin が採用されていて、
Kotlin M11 の時期で本格的に開発が行われているというのはやっぱり驚きでした。

自分の GitLab の記録を見る限り、
一番初めに Kotlin のアプリが commit されているのが今から一年半くらい前、
なので自分がちゃんと書き始めたくらいにサービスロンチくらいの勢いでした。

Kotlin を採用するにしろ、Java の知識が必要というのはとても大事なことだと思います。
開発していても絶対に必要になるし、Kotlin から入るにしても Java の勉強は必要。
個人的には、「なんとなく Java が苦手 / 嫌いだから」で入るのは辛いと思っています。
そういう人少ないかもしれませんが。

Swift とは似て非なる言語で共通化できないというのも納得できる話でした。
「Swift を使っている iOS エンジニアが Android に入る際、Kotlin から入ると心理的に少しやりやすいかも」
くらいだと思っています。大分前にそんな感じの話を社内でしましたが、その時の他のエンジニアからの評価もそんなものだったかと。
いま Swift を使ってアプリ開発をしている iOS エンジニアが興味を持つきっかけにはなり得ると思います。

Kotlin の自由度が高いという話は実務で確かに問題になりそうな話でした。
ルールを決める際は是非 Kotlin っぽいものを選んでいきたいですね。

あと Kotlin 学習の例を見て、
社内で広めるならやっぱりこれくらいしないとなぁ...と感じました。
Rust でも Go でも Kotlin でも、「やってみたい」止まりな人は多いので、
そのあたりを巻き込んで盛り上げていけたらと思います。

LT

ここからは飲みながら話しながら聞いていたのでちょっとうろ覚えで書きます。

Cool Tips for Firebase

スピード感がよくてとても面白かったです。
Remote Config で Locale によってアプリの色変えるみたいな話がちょっとあって、
そういうのやりたいなーと思いました。

Layout ファイルのメンテナンスについて

Layout xml の行数をいかに削減するかという話。

前半はなるほどなーと思って聞いていたものの、
後半は、そこまでする...?という感じでかなり盛り上がっていました。

What's new Android Wear

Android Wear の動向の話。
Android Wear 2.0 の話とか...スタンドアロンアプリの話とかされていた記憶があります...

Android Wear つけてる人ー!みたいな質問で全然手をあげてなかったのは正直笑いました。
持ってなくてすみません...

actions on google

LT ではあるものの、前段の発表よりももう少し踏み込んだ話でした。
前段の話を聞いてからだったので、知らない人にも伝わりやすくなっていたように思います。

懇親会で少しお話させてもらったところ、
実際の Api.ai の画面を見せてもらいつつ説明していただけたので、
とても参考になりました。

懇親会 (歓談)

自分が話した人がたまたまそういう人ばかりだったのかもしれませんが、
Java / Kotlin で、普段業務でアプリ書いてますって人があまりいなくて、
サーバーサイドのエンジニアだったり、Unity のエンジニアだったりしたのが印象的でした。

懇親会でも Kotlin の話がよく出ていて、注目されているようで嬉しかったです。

あと、スコープ関数の使い所がいまいち掴めないんですよねみたいな話も聞いたりしました。
スコープ関数が使ってあるコードを見て始めたばかりの人が悩んだり、使い所に困ったりというのは、
Python の内包表記に似た感じを受けました。

これは割と色々な言語にあることだと思っていて、
しばらく書いていると「ここってなんかしっくりこないんだよなー」みたいなところが出てきて、
その時によりそれっぽい書き方を調べたりするので、
個人的にはスコープ関数はそんな感じでも遅くないんじゃないかなーと思っています。

最後に

最初から最後まで非常に楽しい勉強会でした。
最終的に結構遅い時間までお話しさせてもらいました。

ありがとうございました!