読者です 読者をやめる 読者になる 読者になる

5.1さらうどん

@giginetの技術ブログ。ゲーム開発、iOS開発、その他いろいろ

クックパッド主催の『開発コンテスト24』に参加しました

昨年に引き続き、クックパッド社が主催する24時間でアプリやサービスを開発する開発コンテスト24に参加しました。

f:id:gigi-net:20130617165132p:plain
エンジニア向け「第4回 開発コンテスト24」開催 | クックパッド株式会社


今年は、昨年の出品作品「PandoraAlarm」の開発メンバー4名に加え、昨年の反省点である「デザインの専門家がいなかった」、「PVにまで手が回らなかった」という問題をカバーすべく、
世にも少ないQRコードデザイナーの@さんと、DTMから映像からモデリングまでなんでもやってしまうスーパークリエイターの@さんを迎えたメンバーで挑みました。これで勝つる!

テーマ

今年のテーマは

年をとった自分が使うサービス」でした

作ったモノ

f:id:gigi-net:20130617163401p:plain


偶然の出会いを必然に『デシつく』



熟練者「センセイ」と「デシ」の技術者マッチングアプリ、『デシつく』。iPadで動作します

企画

企画方針

まず今年のテーマに着目すると、「年をとった」というキーワード以上に「自分」という点にフォーカスすべきだなと考えました。過去3回のテーマはいずれも主体については特に言及されていなかったのですが、今年はあえて主体を明言しているのがポイント。

そのため、一般的なお年寄りのイメージである「健康」、「機械に疎い」、「余暇をもてあましている」というステレオタイプな着想から発想するのは危険であると判断しました。

おそらく、このテーマにおいては、今現在語られているお年寄り像より、現在の若者、生まれたときからインターネットがあり、サブカルチャーで育ち、ソーシャルという概念ができあがっている世代が30~40年後、どのようなモノを欲するか、未来の社会背景を含めて想像(創造)するべきだなあと。昨年までの卑近な問題に帰着しやすいテーマとは一転、非常に考えにくいテーマでした。

ブレーンストーミングとコンセプト

「年をとる」というキーワードからブレーンストーミングをしてみると、「病気」、「体力の衰え」、「視力、記憶力の低下」、「老害」、「遺産」、「死別」、「前髪の後退」、「年金」というネガティブなキーワードばかり。

若い人にとっては今が一番楽しいし、誰だって歳は取りたくないモノ。老いたくて老いているわけではないので、自分の老いを自覚させてしまうようなテーマ設定はNG。

そこで、老いとは知識と経験の蓄積であり、人としての成熟、レベルアップというポジティブな面を押し出していくというコンセプトに設定しました。

f:id:gigi-net:20130617164901p:plain
▲今までの人生の経験を「伝える」

『デシつく』の誕生

僕らが歳をとったとき、おそらく今と変わらずにゲームをしたり、ネットをしたりしてgdgdと過ごしていると思うのだけど、今と大きく変わるのは人とのつながりが今以上に希薄になっていくだろうなあと考えました。

お年寄りはヒマだし、寂しいので若い人とコミュニケーションを取りたいと考えるだろうけど、若い人の立場に立つと、自分の話しかしなかったり、同じ話を繰り返したりするお年寄りと話すより、同世代と話した方が数倍楽しい。

そこで、若い人から能動的にお年寄りに話を聞きに行けるようなプラットフォームがあれば、お年寄りも若い人も幸せになるようなサービスになると確信しました。

参加メンバーは皆何かしらの技術を持った人だったので、お年寄りは蓄積された技術を若い人に伝えたいと考えるだろうし、若い人は何か為になる話を聞きたいという欲求がある。でも、現状上手く噛み合っていない。そこで、離れた世代間が技術で繋がれるコミュニティがあれば、全く新しいモノだと思うし、新たな人のつながりが生まれそう。これは行ける。

f:id:gigi-net:20130617164834p:plain
▲良き師に出会えた若者が感謝を贈る。世代間交流が活発に

デザインと世界観

ここまで考えて着想したのが、日本古来の弟子と師匠の関係性。
全体的な世界観は、外人の想像する間違った日本の師弟関係。おいおい、これおかしいだろ、みたいな世界観を面白おかしく表現したかった。話題に上がっていたのは『ニンジャスレイヤー』のPV


そこでお年寄りは「センセイ」になって、自分の知恵で若い人(デシ)を集めて技術交流を行えるようにした。

おじいちゃん、おばあちゃんは自分が若い人に人気が出ると嬉しいと思うので、ゲーミフィケーションのように、「自分の知識で如何に若い人を集められるか」という要素を入れ、お年寄りのコミュニティの中で、競い合えるとさらによいなあと。称号の発想はここから生まれた。

f:id:gigi-net:20130617164803p:plain

開発段階

クライアントサイドは僕が全て実装、サーバーサイドは@PHPでゴリゴリと、サイトの作成とRedmineによるタスク管理は@という昨年同様の構成に加え、

ほとんど全てのUIをmeycoさん、PVとBGM作成をTetu_fsさんが担当しました。素材を使わずにわざわざPVの為に曲を書き下ろしたチームはなかなかないのではないでしょうか。


全員、ものすごく作業が早くて、昨年同様にいい感じで作業分担ができてました。
@があとから参加した時にはめぼしい仕事がほぼ片付いていたところ。

実装量が多かっただけで特に困った部分もなく普通に完成したので、特筆すべきはあんまりありません。

24時間でiOSアプリを開発すると言うこと

iOSの開発環境は既にかなり成熟してきていて、各機能はたいていの場合、(経験さえあれば)何も考えずともスピーディーに実装できる。

画面はStoryboardですぐに作れるし、カッコイイUIはCocoaControlsにいくらでも転がっているし、ライブラリはCocoaPodsで一瞬で導入可能、通信周りはAFNetworkingが最強過ぎて何もハマることはない。(でもちょっとハマった)

今回は簡易的なSNSをネイティブで実装するという、24時間で行うにはそぐわない感じだったので、ViewControllerが肥大化してひたすら面倒だった。以下のStoryboardの規模がそれを物語っている。

f:id:gigi-net:20130617164627p:plain

また、「センセイ」と「デシ」というユーザーの非対称性に悩まされることになる。ユーザー登録画面から登録後の画面まで、ほとんどが別々。作業量は実質倍に。

その上、お年寄りが使うことを意識して、「1画面に1つ以上の入力項目は設定しない」というコンセプトで各画面を作っていった。DSの初期設定画面なんかが好例。
そのため、タダでさえ規模の大きな画面遷移が輪をかけて肥大化していった。


20時間ぶっ通しでコーディングして、意外と仕様通り全部載った。クックパッド社の実行環境がiOS5環境しかないことに実装後に気付き、6前提に開発していたのでキモを冷やしたけど、大きな問題もバグもなく完成した。実装面においてはほぼ完璧な仕事をしたと思う。

まとめと来年に向けての反省点

企画と開発について

コンセプトと実装については良い線を付いていたと思うのだが、サービス全体の着地点としては少々疑問符。

コンセプトが決まって、メンバー全員が「当然こうなるよね」というイメージが共有できていたのは強みだったのだけど、反面「よし、さっさと作ろうぜ!」とすぐに仕様について打ち合わせを始めてしまって、それに疑問を挟み込む作業が足りなかったなぁと。

結局、よく練らずに全員が思い描いていた普通のSNSを作ろうとしてしまったので、ありがちなのに時間がなくて低機能なよくわからないもので終わってしまった感じがある。


今から考えると、例えば「年寄りが自分の魅力で若者をコレクションする」という部分に特化して、もっとゲーム化してしまった方が良かったなあと。年寄りが若者を集めて「ワカモンマスター」を目指すとかね。


それと、iPad専用にしたのもよく考えるべきだった。当初、iPadに手形を押してデシを承認するという面白インターフェースを考案していたのだけど、結局それも載らなかった(仕様的にボツになった)し、それがやりたかっただけな感じがあった。開発体制としても、iOSプログラマが僕しかいなかったので、仕事の負担の差が大きく開いた。

今年の受賞作品を見て

受賞作を見ていると、優勝したポチ袋は、企画・実装力共に王者の品格を放っていたが、その他の賞についてはアイディア勝負で、開発力や規模だけ見ると十分入賞可能な範囲だと思う。

第4回「開発コンテスト24」受賞作品発表 | クックパッド株式会社

しかし、総合的な完成度まで考えると、コンセプトが明確に打ち出せていたり、使いやすいUIが提供されていたりと、負けたなぁ、と思わせてくれる作品ばかり。

昨年もそうだったのだけど、入賞作品はちゃんと納得の出来るものが選出されているので良いですね。

参加してみて

結果は悔しい感じでしたが、間違いなく開発力も上がったし、非常に良いコンテストでした。

運営の方、参加者の方、お疲れ様でした!来年こそは入賞したい!

Thanks to WPZOOM about nice icon sets.