降りつぶし.net~同期するWebアプリ・スマホアプリの開発・運用~

第1回 降りつぶし管理のソリューション

この記事を読むのに必要な時間:およそ 2 分

要求仕様1.あいまい日付対応

たとえば幼い頃,田舎に行くときに初めて新幹線に乗りました,という体験は,いつまでも忘れない思い出です。しかし,その年月日,とくに日は,まず覚えていません。あるいは,地元の最寄り駅など,そもそも何歳のときに初めて降りたのかすら覚えていないでしょう。しかし,本人に利用の記憶があるのなら,それは「訪問済み」として扱えなければならないはずです。

この対応のためには,データベース側,入力方法,どちらにも工夫が必要となります。

要求仕様2.表計算ソフトとの連携

全国9,600駅を目指すマニアにとっては,このアプリを知った時点で,数百駅~数千駅に訪問済であることが充分考えられます。筆者自身,開発開始時点で既に6,000駅以上に訪問済みでした。その記録を,PCのWebブラウザやスマホから,すべて手作業で登録するのは不可能です。

先述のような原始的管理の筆者はともかく,ネット上の同好者の多くは,表計算ソフトで管理しているようでした。そのため,表計算ソフトとの連携は必須となります。

要求仕様3.地図・現在地との連携

一方,過去の記録を入力し終えた後は,実際に駅に降りた瞬間に記録を付けられる,これもまた必要と考えました。もちろんこれは,Webアプリケーションをスマホ対応させれば済む話です。

しかし,iOSにもAndroidにも,地図や現在地情報のAPIが用意されています。スマホを他の用途に使いつつ,駅に着いた,降りた,記録を付けよう,という流れで,アプリを起動するとその駅が画面中央に来ていれば,非常に使い勝手が良い,と容易に想像できました。

よって,両スマホOS用のネイティブアプリをそれぞれ開発し,地図・現在地との連携を1つの柱とすることにしました。

降りつぶしroid:現在地の駅が表示されている

降りつぶしroid:現在地の駅が表示されている

降りつぶしroid:乗下車日設定画面

降りつぶしroid:乗下車日設定画面

要求仕様4.同期機能

過去の記録は表計算ソフト,現在進行の記録はスマホで,という切り分けは良いのですが,一方で入力したデータが,他方に反映されなければ,なんの意味もありません。

そのため,Webアプリ側=サーバ上のデータと,スマホ側=スマホ内のデータとの同期機能が必須です。さらに,スマホからWebアプリへのスムーズなユーザ認証も必要となります。

次回は駅データベース編

以上,降りつぶし.netの誕生のきっかけと,要求仕様をご紹介しました。次回は,駅データベースをどのように設計し,整備し,メンテナンスしているか,をご紹介します。

ミニコラム・「降り鉄」とは?

今回は初回のため,本文に鉄道ネタがたくさん登場してしまいましたが,次回以降,鉄ネタは別コラムにまとめ,本文は技術話に特化する予定です。

降りつぶしを行う鉄道マニアを,⁠降り鉄」と称することがあります。鉄道に乗る「乗り鉄⁠⁠,鉄道を撮る「撮り鉄」などは一般にも聞こえてくる用語ですが,⁠降り鉄」はまだまだドマイナーもいいところです。なお筆者は,きっぷに押される改札印や途中下車印の印影を収集する「押し鉄」もやっています。

「降り鉄」の第一人者といえば,漫画「鉄子の旅」でお馴染み,横見浩彦氏でしょう。現在,横見氏をはじめ少なくとも4人の方が全国全駅達成をしており,さらに2人の方がまもなく達成の模様です。

筆者は2013年6月1日時点で残り284駅。遠方に未訪問駅が多いためペースはかなり落ちてきています。この連載と同時にゴールできるかどうか!?

著者プロフィール

よねざわいずみ

合資会社ダブルエスエフ代表社員。学習塾講師やら芸能ライターやら劇団主宰やらいろいろ経て現在はよろず請負プログラマ。最近の開発はPHP,JavaScript,Java,MTプラグインなど。お仕事随時募集中。

Twitter:@yonezawaizumi

鉄道旅行ブログ:http://feelfine.blog.izumichan.com/