DroidKaigiで聞きたい話をざっと挙げてみる
DroidKaigi第2回が 2016/2/18(木)、2/19(金)に開催されます。前回のDroidKaigiも素晴らしかったので、次もすごく楽しみです。
11月末までCFPを募集しているんですが、どのくらい集まってるかな?とワクワクしながら見に行ってみたら10件しかありませんでした。(2015/11/12時点)
まぁ締め切りまでまだ2週間以上ありますし、内容を練ってる人もたくさんいそうですよね。ただ、中には 「話せる内容あるっちゃあるけど、こんなの聞きたい人いないよね…?」と足踏みしてる人もいるんじゃないかなぁと思うので、個人的に聞きたいことをつらつらと書いておこうと思います。
MVP適用成功事例
MVPでもMVVMでもいいんですが、いわゆるアーキテクチャを適用してすごくうまく行ったという事例を聞きたいです。自分も以前に調べてプライベートアプリに適用してみたんですが、なんだかすごい冗長な感じになってしまっていまいちメリットを感じられませんでした。ざっくり言うと「言わんとしてることはなんとなくわかるけど、Androidでそこまで仰々しいのいらなくない?」という感想です。これはたぶん本当の意味で問題に直面していないから理解できていないだけだと思うので、実際の事例を聞きたいなぁと思う次第です。
多言語対応Tips
RTL対応、単位の違い、文字の長さの違い、翻訳のフロー、ユーザーからのフィードバックフローなど、多言語対応のTipsを聞きたいです。本業で17ヶ国語対応していることもあって、他所ではどんな風にやってるんだろうかとすごく気になります。
レイアウトベストプラクティス
レイアウトはいろんな組み方ができる分、どう組むのが一番いいのか指針が固まっていない人も多いと思います。 具体的な事例を元に、どういう考えでどうレイアウトを書いていくのか、設計から実装までの思考の流れを説明してくれるとすごくいいなぁと思います。LinearLayoutでネストしまくったアイテムを持つListViewのレイアウトを、RelativeLayoutやカスタムビューを駆使していい感じに直していくライブコーディングスタイルでも面白そうです。
Java8 Androidプログラミング
RxAndroid、Retrolambdaなどを使うと、Java8っぽく書いていくことができます。自分も導入してはいるんですが、そこまで使いこなしているわけではないです。例えば、RxJavaでonActivityResultの煩わしさを解消するのようなアプローチもありますし、RetrofitとRxJavaを組み合わせてコールバックの煩わしさを軽減するような記事もよく目にします。このへんの知見を「普通に書いたらこんなめんどいことあるけど、Rx使ったらこうなるんだよ(ドヤァ)」みたいな流れで聞きたいです。
AndroidStudioライブコーディング
AndroidStudioは細かいところにも手が届く素晴らしいIDEですが、高機能な分知らない機能がたくさんあります。以前takahiromさんがandroid-postfix-pluginを使ってライブコーディングしていて、ショートカットも駆使していてすごく面白かったです。人がコードを書いているのを見ると本当に色んな発見があるので、カチャカチャターン!って感じで開発してるところを見てみたいです。
動画Tips
画像表示に比べて動画の対応はまだ知見が少ないように思います。基本的な実装方法から、ぬるぬる動かすやり方、通信量を減らすテクニックなどなど、実際の現場の話を聞いてみたいです。
他の言語から見たAndroid
最近、Android らしい Javaの話がすごく面白いです。たぶんAndroidの実装上の鬱陶しさというのは、JavaScriptをやってた人たちからすると「キサマ等のいる場所は既に我々が2000年前に通過した場所だッッッ」みたいな感覚なんじゃないかなぁと思うんですよね。Androidの開発というのは「知らなきゃいけないお作法を知れ。話はそれからだ」みたいな雰囲気があると思っていて、他の言語をばりばりやってる人から見て「そもそもおかしいだろ」という話を聞きたいなぁと思ったりします。
コード規約の運用
コード規約をどう決めてどう強制しているか聞きたいです。特に命名規則なんかはコードレビューで人間が指摘するのは本質的ではないし消耗しますよね。例えばActivityに対応したレイアウトはactivity_~.xmlにする、といったルールはLintで強制できたりするんですかね?このあたりはまだ工夫できてないのでとても気になります。
レガシーコード改善
テストのないレガシーなコードを、テストを書きながら改善していくアプローチをコードメインで見てみたいです。「テスト書きたいけどActivityにロジックがぐちゃっとなっててどうしていいかわからず困ってる」という人も多そうなので、メソッド分割してテスト書いてちょっとずつ債務を分けていく、みたいなのを見たいです。
kotlinプロダクション導入事例
kotlinを業務で実際にバリバリ使ってる事例を聞きたいです。「kotlinは言語的にはすごくよさそう、使いたい…!けどなんか起こったら嫌だしやっぱり事例が欲しい」という人はわりと多そうな気がします。例えば、プロダクション導入したら予想できない問題があったとか、メンバーの習熟度による書き方の違いをどう埋めていったかとか、そういう生々しい話があるとすごくよさそうだなぁと思います。で、「そういう大変さはあったけれどやっぱりkotlin最高だね」って感じで背中を押してほしいです。
アニメーションマスター
Androidの実装で一番時間がかかるのはアニメーションまわりだと思っていて、そのへんのノウハウを聞けたら幸せです。そもそもAndroidのアニメーションって色々ありすぎて何をどこでどう使うべきなのかよくわからないんですよね。また、Twitterのハートのアニメーションみたいなの気持ちいいなぁと思っても、Interpolatorをどう作るかイメージがつきません。頭の中にイメージしたアニメーションをどうコードに落とすか有識者に話を聞きたいです。
劣悪なネットワーク環境の対策
発展途上国など回線の細い状況に対して行っている施策に興味があります。画像の圧縮、キャッシュと同期といった実装上の工夫や、改善の結果をどう検証するかなども聞けると嬉しいですね。また、発展途上国では携帯料金がプリペイド支払いになることが多いので、プリロードやlazyロードで通信量が増えてしまうと逆に問題があるというジレンマもあります。そのへんのトレードオフをどう判断すべきかみたいな話も気になります。
Androidを始めて◯ヶ月経って感じること
初心者からどう工夫していったか、本人の目線で話すセッションがあるといいなぁと思います。こういう話はわりと熟練した人から「これだけは押さえとけ」という内容を伝える形式がよくあると思うんですが、どうしても情報過多になりがちな気がします。初心者向けの話は初心者に近い立場の人から話してもらう方が響くと思っているので、Androidを始めて何ヶ月かの工夫をありのままに話すのも面白いのではないでしょうか。
今日からできるトラッキング
GoogleAnalyticsなどトラッキングツールを入れてはいるけど、いまいちうまく活用しきれていないし無駄がかなり多いと感じているので、他社事例が聞きたいです。「うちは自社サーバーでログ送って分析して色々やってるぜ」みたいなすごい内容ではなくて、ここは押さえとこうよみたいな誰でもすぐできるところを重点的に聞けると嬉しいなぁと思います。
ざっと思いつくのはこんなところです。挙げてみると、コードメインの発表と業務で経験した生々しい話を求めているみたいです。
上記のどれかは自分もCFP出そうと思います。DroidKaigiすごく楽しみですね。皆さんのセッション、わたし、気になります!