熊野寮でコードを書いて感謝された話

CAMPHOR- Advent Calendar 2017 の 2日目 の記事です。

CAMPHOR-運営メンバーの @genya0407 です。

熊野寮でコードを書いて感謝された話をします。

熊野寮

僕は京都大学の自治寮である熊野寮に住んでいます。

熊野寮の様子

ガサが来たり過激派が住んでたりしますが、基本的には自由で楽しいところです。

カーシェアリング

熊野寮にはカーシェアリングというサービスがあります*1。 これは、自動車を共有して安く利用しようというサービスです。会員登録をし、年会費を払い、乗った分だけ追加で料金を払います。

廉価に車を使えるので僕も利用しているのですが、割と昔からあるサービスということもあって理不尽な手作業を強いられることが多く辟易していました。

理不尽な手作業

理不尽な手作業とは何かというと、それは乗車の手続きのことです。

車に乗る時の手続きをまとめると、

  • 乗ろうとしている車が予約されていないか確認するために、メーリングリストを検索する
  • 今から車に乗る旨のメッセージをメーリングリストに流す
  • 乗車時の走行距離メーターの値をノートに書く
  • 降車時の走行距離メーターの値をノートに書く

のようになります。クッソ面倒ですね。最悪のユーザー体験です。

なんでこんなにめんどい手続きが必要なのか

なんでこういう煩雑な手続きが必要なのかというと、利用料金を計算するためです。「使った分だけお金を払う」を実現するためには、「どれだけ車に乗ったのか」ということを記録しなければなりません。

例えば、タイムズがやっているカーシェアリングサービスの場合は、車の鍵を開けてから締めるまでの時間が計測されており、それを元に料金を自動で算出します。 そのため、ユーザーは特別な作業をする必要はありません。車に乗って降りるだけで料金が自動で計算されます。

一方熊野寮の場合は、そんなオシャレなシステムを搭載するお金も技術も無いので、上記のような煩雑な手続きが発生していました。

Webアプリの導入

こうした煩雑な手続きをなくすために、Webアプリを作り、導入&移行しました。 ユーザーは、メーターの値と帰宅時刻を入力するだけで車に乗れます*2。 その上、予約中に乗ろうとすると警告されるので、予約をいちいち確認する必要もありません。

また、以前のやり方だと、使用料金を算出するために半年に一度ノートに書いてある走行距離を秘伝のExcelシートに手入力してマクロを走らせる必要がありました。この手入力という作業が本当にひどくて、一度やらされたときは6時間ぐらいかかって本当に発狂するかと思いました。

Webアプリに移行したことでこの手入力という地獄のタスクが無くなり、僕がバッチを回せば使用料金が算出されるようになりました。最高のユーザー体験です。

非ITコミュニティでプログラムを書くこと

このWebアプリはみんな大好きRuby on Railsで作成されています。 フロントエンドも普通にHTMLを吐き出しているだけで、今時のイケてるJSフレームワークなどは使っていません*3

こういう雑なWebアプリが作れるだけでも、熊野寮ではものすごく重宝されて褒められます。 このアプリを作ったときも、「めっちゃ便利!」という反応をいただきました。 レベルの高いエンジニアの中で切磋琢磨するのも楽しいですが、こういうIT力の低い組織でいろいろやるのも楽しいです。

みなさんも自分の所属する非IT系コミュニティなどで、自分のIT力を活かしていろいろやってみたら楽しいかもしれませんよ。おすすめです。

結論

  • ユーザーの体験は大幅に改善され、みんな快適にカーシェアリングできるようになりました。めでたい。
  • 承認欲求が満たされたいプログラマの人はぜひ熊野寮に入寮しましょう。

パーフェクト Ruby on Rails

パーフェクト Ruby on Rails

レッド(1) (KCデラックス イブニング)

レッド(1) (KCデラックス イブニング)

*1:自治会公式でやっているわけではなく個人がサービスを提供している

*2:理想的にはタイムズのシステムみたいに鍵開けたときと閉めたときのメーターの値を記録するようにしたいけど、現状鍵からユーザーを特定できる作りにはなってないので難しい。

*3:materialize.cssというcssフレームワークは使った