はじめに
クックパッド主催の「開発コンテスト24」応募用に1つ作ってみました.
まだまだプロトタイプですが.
概要
次の2点のみです.
- 「トイレ」「食事」「コンビニ」いずれかの「タグ」と,位置情報・時刻とのペアを記録する
- 記録した情報を,タグ,時刻,位置情報,それぞれの切り口から取り出して表示する
前者の機能については,現状ではiPhone上のSafariのみの対応です.(仕組み上Firefox 3.6でもOKではあります.)
後者の機能については大抵のブラウザで問題ないかと思います.
スクリーンショット
位置情報を登録する
「トイレ」「食事」「コンビニ」のいずれかを選択し,「記録する!」を押すことで,選択した「タグ」とその際の時刻・位置情報が登録されます.
「こんでる?」を確認する
特定の「タグ」にひもづけられた時刻・位置情報を,何らか意味のある形へ加工して表示します.
この先考えていること
開発期間の都合で,特定の「タグ」にひもづけられた時刻・位置情報をすべて拾っているのが現状です.ので,時間の範囲を指定したり,現在位置の「周辺」に絞ったり,といったことくらいはしておきたいところです.
実験できるような機種を持っていないためアレですが,他の携帯端末でも使えるようにはしてみたいですね.API的にデータを投げてやれば登録できる,とかにも対応させてみたいところです.それだけを行うためのハードとかできたらおもしろいかな.
あとは,拾った情報から「ヒートマップ」的な何かを生成する仕組みとかも加えてみたい,というのもあります.
着想
サービスの説明はこれくらいにして,今度は,それまでの経緯なんかを以下.
アイディア出しの中で「便利」という語の意を辞書で引いてみたところ,次のとおりでした.
べん‐り【便利】
〘名•形動〙
1.目的を果たすのに都合のよいこと。あることをするのに重宝で、役に立つこと。また、そのさま。「生活するのに—な所」「—な調理器具」「地下鉄ができて—になった」
2.あることをする都合やぐあい。「買い物の—が悪い」
3.大小便。通じ。「大小の—の不浄を出して」〈今昔•一•四〉便利 – 国語辞典 – 辞書.app
べん-り 【便利】
1.都合のよいこと。うまく役立つこと。「これはーな道具だ」
2.転じて、あることをする都合。たより。「ーの悪い土地」
3.大小便の通じ。徒然草「一日のうちに、飲食・ー・睡眠・言語・行歩、止む事を得ずして多くの時を失ふ」便利 – 広辞苑 第六版
ということで,なんだかトイレネタで何かできないかな,という流れが始まりました><
で,「トイレなう」な状態を時刻や位置情報とともに共有すれば,どの時間のどの位置にトイレに人がいるか,というような情報を可視化できるかな,あ,せっかくなら「トイレ」だけでなく,任意のキーワードで関連づけられればいいかな,と考えるに至りました.
まぁ「朝」関係なくなっちゃいましたけど.
スケジュール
開発の流れはざっと以下のような感じです.
課題の確認
23日の20時くらいにスタバなうしてそこで課題発表を待っていようかな,などと考えていたら,友人から「呑みましょう」と誘いを受けたので予定変更.23時くらいまで呑んでました.帰りに引きこもり用の食糧を買い込んで帰宅,課題を確認できたのが24時くらいでした.
0:00 〜 1:45
アイディア出し.
そのときに書いたマインドマップもどきでも載せておきます.字が汚くてスミマセン><
1:45 〜 2:50
コンセプトの明確化.
開発環境の準備.gitリポジトリを立てたり,http://24c.local:5000/ でアクセスできるようにサーバを設定したり.
2:00 〜 3:50
フレームワークのセットアップ.
iPhoneでの位置情報取得に関する調査と実験.
3:50 〜 6:30
データベースの設計.MySQL Workbenchを使って.
コンセプトをロジックに落として実装.
6:30 〜 9:30
エラーの原因を探していたら意識消失.
9:30 〜 11:15
エラーの解決.
11:15 〜 12:30
公開用サーバでの設定.Apacheの設定とかPlack環境のセットアップとか.Plackについては事前にやっておけばよかったなぁ.
12:30 〜 13:05
iPhone向けサイトの作り方について調査.
13:05 〜 13:30
シャワー.
13:30 〜 16:00
ビュー的な部分を準備.HTMLとかCSSとかJavaScriptとか.
16:00 〜 18:00
Google Chart APIについて調査.パラメータの設定がわかりにくくてかなり時間がかかった.
応募
19時から大学研究室の同窓会が控えていたので,この辺で終わることに.
応募したりぶろぐにURLとスクリーンショットを貼ったり.(本エントリですね.)
勉強になったこと
24時間(実際にはそれ以下ですが)の開発を通じて体験できたことを以下.
iPhone向けサイトの作り方を少し
<meta name=”viewport” … />
document.body.onorientationchange = function () {…};
iPhone Safariでの位置情報の取得方法
gitの使い方++
Google Chart APIの使い方
おわりに
惜しくも(ウソ)入賞はできませんでしたが,
生中3+500ml 1本でビール終了.ドリンクをコーヒーに切り替えて次のステップ. #24contest
Twitter / IWATA, Susumu : 生中3+500ml 1本でビール終了.ドリンクをコー …
これだけお酒を入れても眠くならないくらい集中した&楽しい時間でした.2回目があれば,また挑戦してみたいですね.
関連リンク
- エンジニア向け「開発コンテスト 24」開催 | クックパッド株式会社
- 「開発コンテスト24」受賞作品発表 | クックパッド株式会社
- Twitter / Search – #24contest
- 開発コンテスト「24」 (24contest) on Twitter
おまけ
呑みは名古屋は今池のTokuzoにて.2006年 4月にChoro Clubを聴きに行って以来でした.
ライヴスケジュールとかあまり見ずに定期的に行って,知らない音楽を聴くのも新鮮かもです.



