2014年10月13日月曜日

南砺バスガイド~あと5分~ 奮闘録


2014年9月13日から3日間、富山県南砺市で行われた「公共交通ハッカソン@世界遺産五箇山」。こちらで開発した作品で、「日本最大級のWeb App コンテスト Mashup Awards」 Civic Tech賞 ファイナリストプレゼンに参加してきました。
残念ながら、賞を頂くことはできませんでしたが、とても有意義な一カ月でした。・・・ん!?

一カ月しか経って無いの??

結構ながく感じたんだけど、たったの一カ月だったんだ。
今後、そうそうない経験だと思うので、重い腰を上げて、ブログを書いてみることにしました。

はじまりはアプリケーションエラー

9月13日 五箇山で結成されたチーム「Just wait 5 minutes」。赤字が続く南砺市営バス「なんバス」を便利にし、利用者を増やすことを考えた、南砺市職員、学生、社会人混成の5人チームでした。


利用者を増やすため、もっと便利にする。予約が出来て、乗るまで待ってもらえる。ハッカソンでは、そんな提案をすることになりました(こちらがプレゼン資料です)。


開発そのものは、順調だったのです。しかしながら、本番でやっちゃいました。
まあ、完全に私のミスだった訳ですがね。。。



うん、やっちまっただよ。私のミスで台無しにしちゃいましたよ。
こりゃー、このままでは終われねぇ・・・。

意地でもMashup Awardsへ出す!

こんな経緯でMashup Awardsへ向かうことになりました。
ハッカソンで、バス停表示やバス経路の解析処理は、メンバーによって実装されていたので、
以下の2機能を追加することになりました。

  1. 地図上にバス路線を表示する
  2. バス停から時刻表を表示する
そして無事、Mashup Awardsへ応募することが出来ました。


応募したのは、Civic Tech賞。応募のページには、「プレゼン該当者には 10/3(金)までに連絡予定」と記載がありました。

が・・・むなしく、10/4(土) 0:00を迎えることに

日付: 2014年10月4日 3:42
件名: 【MA10】CivicTech賞プレゼンテーション審査のご案内

みなさま、遅くまでお疲れ様でございます。


何はともあれ、無事、ファイナリストプレゼンに進むことが出来ました。
チームのみんなに連絡しましたが、まあ、みんな予定が合わない。つーか、発表からプレゼンまでの期間が少し短いのかな・・・と思います。
まあ、私がプレゼンすることになりました。
もちろん、資料の作成には、チームメンバーに加え、Code for Nantoの方々やハッカソンのライバルチームに所属したかたからもお力添えを頂きました。



プレゼンテーション当日、夜行バスで東京へ降り立った私。
そのまま、資料のブラッシュアップ&練習をしていましたが、歳のせいでセリフを覚えきれないし、所要時間もマチマチ。プレゼン能力も無いので、あきらめて、パワーポイントの「発表者ツール」を使うことにしました。

そして、15時。発表2時間前!機器接続確認のお時間です。パソコンを持ち込んでプロジェクタに繋げます・・・

2画面に出来ない!?

このままでは、命綱とも言うべき「発表者ツール」が使えないじゃないか。
そんなこともあり、チームメンバーである斎藤くんに、アシスタントして付き合ってもらうことにしました。
パソコンを2台持ち込んで、パワーポイント表示用と、原稿表示用に分け、原稿も見ながら喋れる環境を作ってもらいました。そして、合いの手も打ってもらうことにし、1時間程練習し、本番を迎えました。



さて結果です
Cvic Tech賞は・・・

台風リアルタイム・ウオッチャーです

「南砺バスガイド」じゃあありませんよー。
情報アーキテクトの第一人者、首都大学東京の渡邉先生の作品です。
台風が来たときは、ここをみて確認しましょう。

はい、ノミネートメンバーを見たときから、結果はわかってましたよ。
見て頂ければ分かります。

ちなみに、ご一緒できる喜びから、著書を持参し、サインも頂いてきましたー。


Google Earthの本も持っていたのですが、重たいのでやめておきました。


戦い終えて

○出来なかったこと
まず、プログラムの出来。やり残したことは、沢山あります。
バスを選択したら、そのバスが何時にどこに着くかは見れるようにしたいです。

つぎにプレゼンの内容。5分しかないので、色々な取捨選択をしないといけない。
完全に漏れていたのは、「地域課題」。ここをしっかりと定義していないので、「便利ツール」としか訴求できていなかったのは猛省材料。
日本の中山間地域での公共交通は、税金を投入しないとまわらない。でも、医療政策上は、「最後は自宅」と言っている。一番いいのは、公共交通の利用者を増やすことだけど、便利に使えないと利用者も増えない。それなりに大問題なんだけどね。

○出来たこと
良かった点は、とりあえず、5分間、飽きずに聞いてもらえたんじゃないかと言う点。
南砺市の位置の説明あたりから、「つかみ」は取れたし、ペースはつかめた。
プレゼンでは、まずは見てもらうことが大切な訳で、そこは出来たと思う。
これは、プレゼン資料を作ってくれた皆様のおかげです!

あと、若い人と一緒にプレゼンの舞台に立てたこと。
もう少し、時間があって、住んでるところが近ければ、もっと、重要な役回りをしてもらえたんだけど、ちょっともったいなかったですね。

今後

とりあえず、MA10は終わりました。
南砺バスガイドには、まだまだ改善が必要ですし、オープンデータの内容についても、課題はあります。やっぱり、Civic Techなので、みんなが絡んで育てていける環境を作っていきたいですね。
できることなら、自分の住んでいる富山市でも進めていきたいと思います。

2014年7月5日土曜日

Code for Namieのハッカソン福島ハッカソンに行ったよ ~チーム Please Call Me なのに通話機能はないのです ~

 6月21日(土), 22(日) 福島県二本松市で行われたCode for Namieのハッカソンに参加してきました。

 ハッカソンに先駆けて行われた6回におよぶアイディアソンで出されたアイディアから、プロトタイプの開発を5チームで競い合いました。浪江町の方々が、「使いたい」と思ったアプリに得点を付ける方式で審査。

その結果、最も得票が高かった・・・

浪江町賞


…を頂きました!


写真は、表彰状&副賞のなみえ焼きそばです。

せっかく良い賞を頂いたので、少しレポートを書いておきたいと思います。


このハッカソンは、福島第一原発事故で全町避難が続く福島県浪江町で、町からの情報発信や町の方々どうしの繋がりを維持するため、タブレットを配布する事業の一環として行われたものです。


ハッカソンとは、Hack(開発) + Marathon(マラソン)を組み合わせた造語。短期集中型で、プログラムを開発するイベントです。
今回の場合、6/21(土) 10時から始めて、6/22(日) 13時過ぎには開発終了。ようするに…

27時間でアプリケーションのプロトタイプを造る


…ということです。

ハッカソン向けのアイディアは、ハッカソンに先立ち6回ものアイディア出し(アイディアソン)が行われており、運営されている方がまとめておられました。


壁に張り出されたアイディアから、自分が作りたい!と思うものを選びます。
同じアイディアを選んだ人たちが、即席チームとなります。



こちらが、われらがチーム。目指すのは、タブレットを使った「健康アプリ」です。
まずは最初のミーティング。コンセプトは二つ。

  • タブレットは操作をしない or 極力操作がないようにする
  • 震災後途絶えがちな人とのつながりを復活させ 健康をとりもどせるようにする


初日、昼過ぎ。何を作るかを発表しました。
コンセプトは決まったものの、具体策に欠ける我がチーム。
とりあえず設定したゴールは、「写真を使って、シンプルなつながりを実現する新しいSNS」。


発表を終えて、具体的なイメージがないから(?)、不安がるメンターの方や主催者の方々・・・。
その後、主催の方が心配され、浪江町役場の方や色々なメンターの方を引き合わせてくださりました。色々と情報をインプットするものの、却って、完成型が見えなくってきました…。



「原点に帰ろう」

…とのアドバイスもあり、アイディアの元を見直しました。
こちらが、アイディアの原点。Code for Japanの方や浪江町の方が作られたアイディア・スケッチです。こちらに、当初考えたコンセプト・・・「タブレットは操作しない」、「人のつながりを重視」を組み合わせ、それまで、議論してきたことを合わせることに。
ここから、停滞したチームは、一気に動き出すことになりました。


・ウェアラブル端末で血圧、脈拍を管理
⇒人が気にしているのは「血圧」。まずは「血圧」だけ考えよう。
「高血圧が気になる方に…」みたいなCMはよく見かけるが、「脈が速い方に・・・」のようなCMはない。やっぱり人が気にしてるのは「血圧」かなということで。

・気づかないうちに見守られている/専門家からのアドバイス
⇒医師とつなげるとか、自動判定で警告を出すとかでなく、ご家族、お知り合い、巡回員の人とつなげた方が、人間味があってよいかということに。
医者に「運動しよう」と言われるよりも、知人から「散歩しよう」と言われる方が素敵かな。

・「元気ですか?」には「元気」と応えてしまう。
⇒ボタンを押すようなコミュニケーションではなく、「話をしたい」とか、「電話がしたい」とか思えるようにした方がいいだろうということに。

ここに、タブレットをフォトビジョンのように置いてもらうという考え方を結びつけた仕組みでプロトタイプを作ることになりました。

作るものが決まれば、あとは簡単。プレゼン担当、タブレットアプリ担当、(疑似)血圧計担当、サーバサイド担当に分かれ、作業を開始。


作るものが決まれば、あとは簡単。プレゼン担当、UI担当、血圧計担当、サーバサイド担当に分かれ、作業を開始。
作業は、宿に戻ってからも続き・・・。



翌日は、会場で最終調整。


そして、チーム名は…

プリーズコールミー

となりました…が

通話機能はございません(笑)


こうして、無事、チーム:プリーズコール・ミー!によるタブレットアプリケーション「血縁」が完成。
こちらが、プレゼンテーションです。


血縁 For upload from Takashi Moriyama


プレゼンテーション終了後には、浪江町の方々にタブレットを触っていただき、ご意見を頂戴しました。


そして、見事に浪江町賞を頂きました。


今回のハッカソン、チームメンバーの能力も素晴らしかったですが、ハッカソンの運営も素晴らしかったと思います。事前のアイディアソンと結果をまとめ方。浪江町役場の方から直接地域の状況・課題を聞ける体制。メンターの方の適切なフォロー。これらが総てそろったからこそ、浪江町の方から、評価頂けるプロトタイプが出来たものと思います。

みなさまのおかげで頂いた副賞「なみえ焼きそば」。おいしく、頂きました。
二本松で食べた時は気が付かなかったのですが、もやしと豚肉しか具が入っていないんですね。



昔から、パソコン配ったり、タブレットを配ったりとかいう事業が行われることがあります。
しかし、今までの事例を考えてみると、あんまりうまくいった事例はないような気がします。
今回、浪江町のタブレット配布では、Code for Japanを中心にシビックテックという市民参画型の手法が取り入れられます。果たして、シビックテックがこの難しい事業を成功に導けるのか?これからも注目していきたいと思います。

2014年2月12日水曜日

MysqlのデータをCSVファイルに出力する

MYSQLのデータをCSVファイルに出力しようとしたとき、オーソドックスなやり方はというと。

mysqlに接続したあとに、以下のコマンドでOKです。

SELECT col1, col2, FROM tbl INTO OUTFILE 'hoge.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"';

こうすると、hoge.csvは、mysqlのワーキングディレクトリ(?)に出力されます。


/var/lib/mysql/・・・
 …みたいなところ。

自分が神である環境であれば、これでいいのですが、常に/var/libあたりのファイルが扱えるとも限らない。
そんなときは、コマンドラインで…

mysql aa127w0a9d -e "SELECT col1, col2, FROM tbl " | sed -e 's/\t/,/g'  >  hoge.csv

・・・とすれば、切り抜けれそうです。

SELECT ふにゃらら INTO OUTFILE という文そのものが、システム管理者向けということですかね。


2014年2月7日金曜日

やってもうた(1) Mysqlで間違ったカラムに入れてしまったデータを入れ替える。

データベースからデータベースへのデータ移行で、カラムを間違ってデータを入れてしまった。
 テーブルには、companyとpersonがあるのだが・・・。

company:山田太郎
person:山田商事株式会社

…という具合に、間違えてしまった。大量のデータがあり、最初からやり直すことが出来ない状態・・・。

色々と調べてやってみたのが、下のSQLです。

単純に…

UPDATE tbl1 SET company = person, person = company;

…とやってみました。結果は…

company:山田商事株式会社
person:山田商事株式会社

なるほどねー。さらにやっちゃいました。。。
まあ、そりゃそーかという結果ではあります。

こういうときは、こうやるといいみたいです。

SET @swp = '';
UPDATE tbl1 SET company = CONCAT(LEFT((@swp := company),0) , person) ,person = @swp;

値が更新されるときに、一旦変数に蓄えて、その文字列を切り詰めた上で、交換する文字列を設定するということですかね。



2013年12月19日木曜日

先進的ICT利活用教育推進事業なるものの所感


 ちょっと気になる記事があったので、所感を書いてみます。

県立高新入生の学習用端末、負担5万円 高額、強制的と批判も [佐賀県]

佐賀県の高校生がWindowsのタブレットPCを買わされるというお話です。

教材としては、5万円はかなり高いのは、間違いないです。そのことから「高い」という批判的な記事を多く見かけます。記事を読むと…まあ、入札業者が1社とか、「まあ田舎ですから」的に見慣れた感じもあり、批判はごもっともだと思います。

しかし、事の本質はそうではなく…

高校生がタブレットを使うことの価値がどれだけあるか?

…だと思います。

まず、PCの仕様を見てましょう。

平成26年度に県立高校全校で新入生が使用する学習用パソコンを決定しました

 うーん。。。搭載ソフトは、Officeと辞書だけかい・・・。

 そもそも…

タブレットを使うことで、どんだけ素晴らしい人材を育てれるか?

…が伝わってこないよ。


まあ、色々と調べてみると、どういうことに使いたいかは、なんとなく見えてきた気がします。

タブレットだけではない、佐賀県学校IT化の要「教育クラウド」とは

なるほど。SEI-Netとというシステム用の端末として、全生徒が利用するというとらしい。

これは、いい取組だと思う。そして、このシステムを利用するための端末を全生徒がもつことは、大変に意義のあることだし、是非成功してもらたい。


取り組み自体は、非常に素晴らしいのだが、そうなると冒頭の問題点は大いに気になる。
問題だと思うところを挙げてみる。

1.生徒(保護者)が5万円で指定のタブレットを買うというのはいかがなものか?
  しかも、業者は1社で、地元の教材屋(!?)と。
  安く仕入れるなら、メーカーから仕入れたほうが良くないか?

2.金銭感覚がおかしい。
  「市価17万のパソコンが5万で買えます。」とかが必要なワケではない。それよりは、
  「市価7万円のパソコンを支給します」であるべきではないか。
  ノートPCなら十分だし、タブレットである必要性は、公募時の話題性・インパクトくらいしか
  ないじゃないか。


3. 選択の自由がない。
  自腹で5万払うなら、ほかの選択肢があるように思える。
  Officeはマクロが不要だとすれば、Windows RTでも問題ないだろうし、辞書が「いくらする 」
  とか言い訳がましく書いてあるが、SEI-Net自体がネットワーク接続を前提としているのだから、
  無料のオンライン辞書で良くないかい?



全体的に、やろうとしていることは、間違っていないと思う。けどね・・・。

子供をダシに金儲けしてないかい!?

まあ、高校時代から、こういう大人を間近で見ると、「大人の世界」の耐性が強い子が育つかもしれませんね。



2013年12月5日木曜日

Windows RTの世間的な評価は妥当なのか?


Surface RTなどのWindows RTが発売されてから約1年。
Windows RTは最早終焉のときを迎えているかのような発言が多く見受けられる。どうやら、世間での評価は、極めて低いようだ。

 そもそも、「Windows」 = 「Windowsのタブレット版」…というような間違った認識が蔓延しているように見受けれるので、WindowsRTには罪はないような気がしている。

世間の評価は、金額に反映され、ついに2万円台でWindowsRT機が買えるようになったので、この価格なら「買い!?」と思い、購入を決意。予算的には、1世代前がお買い頃…ということで、色々な選択肢(!?)から考え、ASUS VivoTab RT TF600T(キーボードドック付)を選択した。

【選んだポイント】  
  • キーボードつけると1kgあるけど気にしない(今使っているmini9もそのくらいだが不自由したことがない) 
  • (Surfaceを作っている)サムスンはなんとなく嫌い
  • NFCがついている 
  • 電池が16時間ももつらしい
…で早速使ってみました。

はっきり言って・・・

良い出来です!


私のイメージでは、「WindowsCEのタブレット版」だったのですが、完璧に「Windowsのタブレット版」と言っても良いでしょう。そして、アプリの表現力は、他のタブレットを凌駕しているような気がします。メールソフトなんかは、Outlookが動いていますよ(WindowsRT8.1になっていますが)。これは、iPadやらAndroidやらではちょっと出来ない芸当でしょう。

#まあ、Outlookが良いかといえば微妙というかアレですが…。

そしてIEがちゃんと動きます!

#まあ、これも微妙…。私的には、ChromeかFirefoxが使いたい…。

これだけ出来きが良いからこそ、「Windowsのソフトが動かないものなんて要らない!」と非難されるんだろうな。ほんとに見た目変わらない。

Windowsのソフトを使いたい方は、黙ってRTのつかない「Winodws」を使いましょう。
WindowsRTのことをネガティブに言わないでください。。。

2013年9月29日日曜日

Amazon Web Serviceのお祭り JAWS Festa Kansaiに行ってきた

9月28(土) 京セラドーム@大阪で行われたJAWS Festaへ行ってきました。
ブログを書くまでがJAWS Festaです
…って、説明会の資料に書いてあったので、ブログ書いときます(笑)

会場は、京セラドームの「通路」でした。なんの間仕切もなく、通路にスクリーンと椅子がならんで降りました。
会場の様子はこんな感じでした

タイムテーブルですが、非常に盛りだくさん。どれをチョイスするのか最後の最後まで悩みましたよ。
こちらがタイムテーブル

…で、チョイスしたのが、以下の3つです。

  • CDP道場「入門編」
  • CDP道場「中級編」
  • スペシャルパネルディスカッション AWS、cloudpack、Microsoftt、SAP。各社の最強エバンジェAリスト集結!異論!激論!エバンジェリストからみたIT・クラウドの実態と歴史、そして未来へ
1.CDP道場入門編 & CDP道場中級編
CDPは、Cloud Design Patternの略です。色々なサービスを構築するときの定石をまとめたものみたいです。
CDPの説明はこちらで。

今回は、道場ということで、あらかじめ準備されたストーリに合わせて、CDPを適用して、サイトを構築していくハンズオンをしました。
AWSのサービスを眺めていても、未経験な人にはわかりづらいので、ハンズオンというのはすごく良かったです。AWSの勉強をしたい方は、こういったハンズオンのイベントを探して行くってのは、かなりいい体験だと思います。そんなに都合良く開催されるものなのかは分かりませんが。

ちなみに入門編では、S3をWebサイトにして、Cloud Frontで高速にコンテンツを配信するやり方をやりました。使ったパターンは、以下の2つです。

  • Direct Hostingパターン
  • Cache Distributionパターン
中級編では、WordPressサイトを最小構成で立ち上げ→サーバをスケールアップ→サーバを増設→データーベースを複製するという流れ。使ったパターンは、以下の3つです。
  • Scale  Upパターン
  • Clone  Serverパターン
  • Read  Replicaパターン

実際には、Read  Replicaパターンには辿り着きませんでしたけどね。

3.スペシャルパネルディスカッション
パネルディスカッションは、Amazon, Microsoft, SAP, 電通国際情報サービス, Cloudpackからエバンジェリストが参戦して行われました。今までクラウドを育てて来られた方々のトークは、聴き応えがありました。印象に残ったのは、Microsoftの西脇さんの洗練された話ぶりですかね。あと、SAPの常盤木さんのモデレータも良かったです。あれだけのメンバーをキレイにまとめて、時間ぴったりで終えるとか…素晴らしいです。

録画はこちら