下町柚子黄昏記 by @yuzutas0

したまち発・ゆずたそ作・個人開発の瓦礫の記録

ゴミ出し通知サービスを作ったけど供養します

概要

「明日はゴミ出しの日だよ」を教えてくれる「AsGomy」(アスゴミー)なるサービスを作ったのですが供養します。 かなり昔の話です。

f:id:yuzutas0:20170330004630p:plain

もくじ

  1. どんなサービスか
  2. 行動設計
  3. なぜ作ったのか
  4. どうやって作ったのか
  5. なぜ供養するのか
  6. 思ったこと

1. どんなサービスか

市区町村と帰宅時間を入力すると、ゴミ出し前日にリマインドメールを送るサービスです。 ユーザーのフィードバックを受けて配信時間を微妙に学習します。

名前の由来はそのままで、AsGomy=明日ゴミです。 HileSearchと同じ語感決めとなります。

yuzutas0.hatenablog.com

2. 行動設計

前日にゴミをまとめて、当日の朝は出すだけの状況を想定しています。

  • 当日の朝にゴミをまとめようとしても急いでいて間に合わない!
  • 玄関にゴミ袋が置いてあれば、あとはそれを持って集積所に行くだけ!何とかなる!

なので、当日ではなく前日に準備することがポイントとなります。 また、帰宅直前を狙って配信するように設計しています。

  • 帰宅より大幅に前だと忘れてしまうから
  • 帰宅して一息ついてしまうとゴミをまとめる気力がないから

帰路→メールで通知→思い出す「明日はゴミ出しの日だ!」→帰宅→すぐにゴミをまとめる→玄関に置く→ほっと一息、という行動設計です。

3. なぜ作ったのか

自分の中で盛り上がっていた人工無脳・電脳秘書の企画のためです。

  • 日常生活の特定課題を解決するエキスパートシステムまがいのものを作ろうとした
  • その時に困っていたことが生ゴミの捨て忘れだったので試しに作ってみた

yuzutas0.hatenablog.com

また、当時はシステム開発の勉強を始めたばかりだったので、学習目的も兼ねていました。

  • 課題設定を絞り込んだ上で、ユーザーの行動に影響を与える設計にした
  • 単純なCRUD処理だけでなく、クローリング、簡易な学習機能、メール配信を試した

4. どうやって作ったのか

システム構成

以下の通りです。記憶が正しければ。

開発工程

理解できていなかったので、心のままに作っていました。

  • 概念検証
    • インタビュー:問題意識の共感者がどれくらいいるのか、共感者にはどのような特徴があるのかを確認(→顧客・課題の検証)
    • プロトタイプ:Googleカレンダーでゴミ出し前日の夜にリマインドするよう設定して効果を測定(→解決策の検証)
  • 要件定義
    • 概念検証の結果をもとに、カスタマーの行動設計を詰めて、最終的にはジャーニーマップに沿う形でデザイン
  • 設計
    • まともにやっていなかった
  • 実装
    • クローラー:大量にエラーを吐きまくる傍らでバグシューティングして、首都圏のゴミ日程データ(6,000地域・20万件)を引っ張ってきた
    • アプリ:ユーザー情報のCRUDをお手軽実装
    • ジョブ:メール配信・学習のジョブをお手軽実装
  • テスト
    • 軽く正常系を通した
    • そのあとは友人・知人を強制召喚して利用&バグ報告してもらった

上流工程に比べて下流工程が貧弱すぎますね。 この反省を受けてEnokilogでは少し真面目に意識するようになります。

yuzutas0.hatenablog.com

5. なぜ供養するのか

良くも悪くも初学用サイトにしかならなかったからです。 色々と学ぶべきことはありましたが、役目は果たしたのかなと思っています。

ただ、アイデア自体は別に悪くないのではないかと今でも思っています。 今の実力なら丸3日集中すれば作れるはずなので、ハッカソンか何かで機会があればぜひ作り直したいです。

6. 思ったこと

イデアは悪くないのにシステムがダメなせいで崩れる企画は、今回に限らず山ほどあるのかなと思います。 二度とそういった残念な目に合わないように、知識を付けようと思った瞬間でもありました。

yuzutas0.hatenablog.com

当時と比べると、知識はそこそこ付いてきたと思うので、もっと色々な企画を実現したいなぁと改めて思います。 大きなこと・多くのことを実現するために、技術スキル以上に巻き込み力を発揮していかねばと思いつつあります。

長くなってしまいましたが最後まで読んでいただき本当にありがとうございます。 (※手元にjarファイルが残っているだけなので今回はGithubリポジトリなしです)