グリー×クックパッド合同勉強会~それぞれのスマートフォン開発~ - クックパッド開発者ブログ に参加してきました。主催のグリー・クックパッド両社の皆様、ありがとうございました。例によってつらつらと感想を。
「GREE Android SDKの実装について」
Android SDK の上に乗っける独自の SDK 作っててその層が頑張ることでそれより上の層でアプリを作りやすくしてますよ、という話。 Android のネイティブアプリ開発をする際にはまりがちなところの苦労談を聞いてて「(やったことないけど)大変そうだなー」と思った。スクリーンショットが撮れないのでほげほげとか、「戻る」ボタンを押したときの画面遷移を思い通りにするために内臓ブラウザをほぼ完コピ(どころかそれにさらにプラスアルファ)で実装し直してるとか。
「古い端末はどこまでカバーする?例えば 1.6 -> 2.1 へアップグレードした端末、みたいなケースも全部用意しておくのか?」という質問をしたところ、「出来るだけ端末をそろえておいて対応したい、だが例えば iOS 3.x とか、さすがにもうないよねーという環境まではサポートしない」という回答をいただいた。まぁそのくらいが妥当なんでしょうね。しかし端末を用意しておくのも専任チームをもうけるのも組織の体力が必要なので、出来るところは限られてくるんだろうなぁ。
あとスマートフォンとまったく関係ないけど懇親会で Scala はどの本読みましたか、とか聞いてみたかったのだけど聞きそびれてしまった。
「Trying out Android 3.0」
Android 3.0 のかなり実装寄りの話で、やってないおれにはさっぱりわからなかった。「タブレット端末用ですよね? 2.x とどのへんが違うか知りたい」という質問があったが、おれも「3.0 はタブレッド用だよなー国内でまだ普及してないだろうに今からもうやるの?単にこの人の趣味?」とか考えながら聞いてたけど、クックパッドは主婦がメインターゲットなので今後 PC に疎い主婦層へ家庭用タブレット端末が爆発的に普及していくことを見越して今から先駆けて対応していく、ということなのかなーと思った。いやまぁたぶん趣味というか興味があってやってみたって話なんだろうけど・・・(あえて深読みしてみたくなったというか)
あとこれもスマートフォンとまったく関係ないけど発表中テーブルの上にリラックマのマグカップが置いてあってすごく気になってて懇親会で Do you like Rirakkuma? とか聞いてみたかったのだけどこれも聞きそびれてしまった。
「クックパッドでのスマートフォン開発」
スマートフォンに最適化したページを一部で用意したよ、という話と iPhone アプリ開発の話。これが一番自分に身近な話題だった。
<宣伝>30days Album も昨日スマートフォン最適化ページをリニューアルしたばかりで、 iPhone のみ対応だったアルバムのスマートフォン版を Android にも対応して、なおかつ iPhone 4 の Retina ディスプレイにも対応したので、 iPhone 4 からアルバムを閲覧するとサムネイル画像も綺麗に見えるようになったのだけど</宣伝>、スマートフォン版のビューへの切り替えの仕組みとか、スマートフォン版ページの開発にどんなものを利用しているのかとか、サービス全体のうちどこをスマートフォン対応するのか(アプリとの住み分け、アプリを補うために最適化ページを用意する)など、いろいろ参考になる話だった。 :device => .device とかはかっこいいなと思った。ちなみにうちでは app/views/albums/iphone/*.rhtml みたいに別ディレクトリ掘ってテンプレートファイル名は同じにしてます。
ここでも「古い端末のブラウザだと HTML5 の section タグが使えないとかいろいろ問題が出てきて IE6 の悪夢再びという状況になると嫌だなーと思うけどそのへんどこまで対応しようと思ってる?」という質問をしたところ、「あんまり気にしてない、 jQuery Mobile とかじゃんじゃん利用してアジャイルに低コスト短時間で開発するのをモットーにしているので面倒な部分はフレームワークにお任せ」という回答をいただいた。なんとなく、幅広く対応せざるをえない覚悟の大企業グリー vs 出来る範囲でちゃっちゃとやろうぜお気楽ベンチャークックパッド、という組織カラーの差が出たのかなと納得した(あくまで個人の感想です)
iPhone アプリ開発のほうの話題は自分がやってないので聞いてもあんまりよくわからなかったのと、同僚の iPhone アプリプログラマも参加してたので彼がフィードバックしてくれるだろう、と思って、質問する内容を考えたり、ノートを見直してあとでブログに書く準備のために脳内で軽くまとめたりしていた。あとは Retina 対応してる? -> 考えてない、とか、デザイナとプログラマの関わり方は? -> デザインがあとになることもあるよ、とか、質問も多かった。
懇親会
この勉強会じたいとはまったく関係ないけど、個人的には今回参加した最大の目的はある人と会うことだった。以前からインターネット上では交流があり、一度機会があったら会って話をしたいと思っていた人で、勉強会の存在を知ったのもその人が応募していたからだし、応募したのもその人と会えるかもしれないと思ったからだった。そしてついに会えた。なんというか、この機会を作ってくれただけでもグリー・クックパッド両社の皆さんにお礼を言いたいくらいです。
それ以外にもけっこういろんな方とお話させていただいた。 CI ちゃんとやってて偉いなーすごいなーとか、スマートフォンのネイティブアプリはリモート側の仕様変更に追随するのが厳しいので HTML5/JavaScript などを使ってハイブリッドに作っていくのがベターなんじゃないか(そうせざるを得ない)とか、そういう意味で Titanium はいけるんじゃないかとか、あとはウェブ系企業とひとくちにいっても社風ってずいぶん違うもんですよねーとか。たくさん話ができて、とても楽しかった。キッチンとフリースペースが一体になっているような明るい空間のおかげで、開放的な気分になって積極的になれたのかもしれない。白金台というロケーションも、周囲は閑静そうだったし、オフィスもオシャレなインテリアで、素敵なところでした。
そして蛇足だけど、名刺を渡しながら「刺身☆ブーメランというハンドルネームで...」と自己紹介すると、ほぼ「あー、あの人でしたか!ブログ読んだことありますよ!」という反応をいただけてその後すごくスムーズに話に入っていけるので、ブログ書くのってすごく大事だし、変なハンドルネームを名乗るとこういうときに認識されやすくて得だなーと思った。必ずしも変である必要はなくて、ハンドルネームとしては珍しいもの、他人とかぶりづらいもののほうが覚えてもらいやすいので楽だなーという。