【個人開発】遅刻を許容し、社会を浄化するアプリを作りました【クソアプリ】

# はじめに
こんにちは。皆さんは遅刻していますか？
遅刻したことがないって人、なかなかいませんよね。
今回はそんな遅刻に悩む方々に向けたアプリを作ってみました。


# サービス概要
### Late-Hack - 遅刻をハックする -
URL: https://www.late-hack.com/
![late_hack_topimage_md.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/c22f5f1b-239a-e565-b155-08387b663cf0.jpeg)

全ての遅刻してしまう人を救うためのアプリです。
以下の２つの機能で遅刻者を救います。
１.遅刻した理由を提示し、オリジナル遅延証明をする
2.待ち合わせ相手に怒られないためのテクニックを紹介する

# 使い方
トップページです。
![スクリーンショット 2021-01-31 19.35.36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/d7f8d43e-e27f-5f2b-bc65-217a28da3749.png)

### 今遅刻しそう・遅刻している人は
「今すぐ診断する」を選択してください。
そしてマップから出発地点と待ち合わせ場所を指定してください。
![スクリーンショット 2021-01-31 19.51.14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/45a5fc2b-40b8-74a1-74ba-4b112f2101aa.png)
すると診断結果が表示されます。
待ち合わせ場所に向かう途中で色んなハプニングがあったことを証明してくれます。
今回は2時間40分の遅刻が許可されました！ラッキー！
![スクリーンショット 2021-01-31 19.52.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/eac11278-380e-d821-e092-ec7a17f95253.png)
この内容をTweetして待ち合わせ相手に報告しましょう。
大抵の人はこれで「しょうがない」と遅刻を許容してくれるはずです。
![スクリーンショット 2021-01-31 20.03.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/bf76bf69-fc5c-583e-c3e9-5ac5dccc3d0b.png)
もしそれでも怒られそうな時は、、
大丈夫です！怒られそうな時の振る舞い方も教えてくれます！
言い訳のための鉄道遅延情報を表示してくれたり、
![スクリーンショット 2021-01-31 20.01.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/bc301b2f-697b-68cb-accd-dff14ad3e632.png)
話をそらすための最新ニュースを教えてくれたり、
![スクリーンショット 2021-01-31 20.01.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/6ad23e67-43f4-bda4-96d2-d5516b2df7ea.png)
謝罪用の近くの飲食店を教えてくれたり、
![スクリーンショット 2021-01-31 20.02.05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/3a556ed5-2803-e2aa-a1c8-a6a145227a77.png)
次は遅刻しないように、前泊するための近くのホテルを教えてくれます！
![スクリーンショット 2021-01-31 20.02.29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/e540e525-59bd-8065-655f-9b0476a0796c.png)
これで遅刻しても相手に怒られません！完璧ですね！

### ユーザー登録しておくと
あらかじめスケジュールを登録しておくことができます。
![スクリーンショット 2021-01-31 20.20.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/524d4f78-7506-96f4-17a3-5c8613e33e5f.png)
登録した予定時間にメールが来ます。
メールのリンクから上記で紹介したような遅刻に役立つ情報が得られます！
![スクリーンショット 2021-01-31 20.41.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/616295/f8bbed68-9c3c-69bf-b4aa-7e35cbd2f9fd.png)
これで遅刻魔も安心して遅刻することができますね！


# 使用技術について
・Ruby on Rails 6.0.3
・各種API
　Google maps JavaScript API
　　- Places API
　　- Geolocation API
　　- Direction API
　[鉄道遅延情報のjson](https://rti-giken.jp/fhc/api/train_tetsudo/)
　[News Api](https://newsapi.org/docs/v2-migration)
　[ぐるなびAPI](https://api.gnavi.co.jp/api/)　（※2021.6.30で無料APIサービスの提供を終了予定）
　[楽天トラベルAPI](https://webservice.rakuten.co.jp/api/simplehotelsearch/)

色んなAPIを使ってみました、というアプリです。
入力画面でマップから緯度経度を持って来て、各種APIに渡して、、というような仕組みです。

### （苦労した点）
Google map周辺の実装には苦労しました。
JavaScriptの知識が浅かったので、勉強になりました。
ただ、Google maps JavaScript APIは[公式のドキュメント](https://developers.google.com/maps/documentation/javascript/examples?hl=ja)で動くサンプルとコードがたくさんあるので実装しやすかったと思います。



# おわりに
クソアプリ制作は楽しいですが、作ってるうちに「これ滑ってるかな」と猛烈な不安に襲われました。
途中からは自分が面白いと思えればいいやという気持ちで作っていました。
自分が作りたいと思うものを作れるというのもwebサービス個人開発の醍醐味ですね。
その結果、少しでも楽しいと思ってくれる方がいればとても幸せです。