どやログ(仮) 開発記録
Contents
この記事を読むのに必要な時間は約7分です。
こんにちは!へびぺんです。今回は「どやログ(仮) 開発記録」というテーマで、現在開発中のアプリ紹介を紹介する記事を書いていきたいと思います。
記事の構成は、前半部分がアプリのコンセプトや概要のお話、後半部分が技術的なお話となっています。
※ どやログ(仮)は開発中のため、本記事に記載された仕様等が変更される可能性があります。
アプリのコンセプトと概要
自分を褒めにくい国、日本
私達が住む日本には謙譲の美徳という言葉があります。すなわち、人を先に立てて自分は控えめに振る舞うという考え方です。
なるほど、確かに人を立てるということは時に大事です。しかし、それが行き過ぎて自分を卑下してしまうのは問題です。
卑下というのは少し極端だったかもしれませんが、少なくとも今の日本には「積極的に自分を褒めていこう」とする風潮はあまりないように思えます。
デキる自分を認めて、自己効力感を高めよう
そういったわけで、今の日本では「自分を褒める」ということをもっと普通にやってもよいと思うのです。自分を褒めることによって、自己効力感※1 を高め、より自信をもって生きていけるようになれば素晴らしいことだと思います。
このような背景から、今回は「自分を褒めることを通じて、自己効力感を高める」ことをコンセプトとしたアプリを開発することとしました。
※1 自己効力感とは何か、であったり、自己効力感を高めるとどんないいことがあるのか、といった点は先週の記事「自己効力感を高めよう」 に書きました。本アプリは、「言語的説得」の手法を応用したものとなります。
毎日、達成したことをお手軽に記録
アプリの内容ですが、とてもシンプルです。具体的には、1. 毎日決まった時間に、今日自分が達成したことをLINEから記録し、2. 気が向いた時に、自分が記録した達成したことリストを確認するというものになります。毎日決まった時間に、自分が達成したことを記録
今回のアプリは、LINEを使ったアプリです。そのため、まず下の「どやログ」君とお友達になってみます。
そうすると、どやログ君が毎日決まった時間に「今日出来たことを入力してね」と通知をしてきます。

早速、今日出来たことを入力してみましょう

気が向いた時に、自分が記録した達成したことリストを確認する
さて、さきほどどやログ君が「達成したことを記録しました」と返事をしてきました。そうです、これこそが本アプリの肝となる部分なのです。
どやログではGoogle スプレッドシートを使い、あなたが達成したことを記録していきます。

このようにあなた専用のシートに、あなたが成し遂げたことがどんどん記録されていくのです!
ちょっと落ち込んだときとかにこのシートを見て、ぜひ出来る自分を思い出してほしいなと思います。
アプリの構成と技術要素
アプリの構成
さて、ここからちょっと技術のお話になります。
今回のアプリの全体像ですが、以下の図のようになっています。

今回作成した機能を大きく分けると1. 通知機能と2. 保存機能の二つになります。 以下では、説明の理解しやすさの点から、2. 保存機能の方から先に説明を書いていきます。

保存機能
さて、まず保存機能で実現していることの説明をします。保存機能では、初めて本アプリを使うユーザーがメッセージを送ってくれたときには、まずそのユーザー専用のスプレッドシートを作成します。 スプレッドシートの作成後、ユーザーが送ってくれたメッセージをスプレッドシートに書き込みます。
この際、二回目以降「どのユーザーがどのスプレッドシートを持ってるんだっけ?」ということが分からなくならないように、ユーザーの情報をデータベースに記録※2しておきます。
また、一度本アプリを使ってくれたことのあるユーザーがメッセージを送ってくれたときには、データベースの情報を参照して、作成済みのスプレッドシートにメッセージを追記しに行きます。
その他に、ユーザーがスプレッドシートを直接確認するために、スプレッドシートのurl を返信する機能を実装しています。
※2 記録しているのはLINE_IDだけですので安心して使っていただいて大丈夫です。また、データベースは外部からは一切見えない場所で管理をしています。
通知機能
次に、通知機能についてご説明します。通知機能は、その名の通り毎日決まった時間に「今日達成したこと」の入力を促す機能になります。
ただし、「通知は嫌」という人がいるかもしれないので(私も基本的に嫌いです)、通知のON/OFF の切り替えができる機能を実装したいと思っています。
技術要素
今回は、完全にgoogle様(とLINE様)の基盤に則ってアプリを実装する予定です。
スクリプトは、google apps script(通称GAS)で作成しました。(筆者はほとんどjavascriptを書いたことがなかったので、苦戦しました。)
特にスプレッドシートの処理周りの実装にあたっては、 こちらの記事を大いに参考にさせていただきました。ここでお礼させていただきます。
コードの管理は、bitbucket のプライベートリポジトリで行っていました。本コードには、LINE側のアクセストークンなど、安易に流出させてはならない部分があったため、githubのような公開リポジトリでの開発は止めておきました(コミットするたびに該当箇所を消すのがめんどくさすぎる)。
ただし、開発が一段落したら機密項目を削除した上で、参考資料としてgithubにコードをアップしようかなと考えています(実装の改善案があればぜひコメントください)。
終わりに
実は本アプリは、このブログでも度々名前が出てきているターバン氏のアイデアに基づきます。 実装をすることを快く許可してくれたことに、この場を借りてお礼申し上げます。また、本アプリですが、ひとまず来週の日曜日(2019/2/10)にはリリースしたいなと思っています。世間ではインフルエンザが流行っていますが、健康を保ち頑張ってなんとか完成させたいと思います!
それでは、本記事を読んでくださりありがとうございました!
“どやログ(仮) 開発記録” に対して1件のコメントがあります。