ImoZ-Blog

何でも書いてるブログです。アウトプット、思考整理、趣味など諸々の痕跡を残していきます。

📹 過集中&注意散漫さんのためのToDoアプリを作りました

タスク「消化」のためのアプリ・サービスが無い→なら作ろう

↓ Windows11での動作を確認しています。Macについては現在調整中です

タスクそのものを「管理」するアプリやサービスは世に溢れているけど、「管理」するだけで「消化」を助けてはくれないよなあ、という気持ちがありまして。

一般的な感覚で難なくタスクと向き合えている方には何の関係も無い話かもしれないのですが、、

タスクを並べては目移りして、目移りしている間に他のことを思いついてしまい、気付いたらそっちばかりに手を付けている、なんてことが往々にしてあります。今もそうです。

何とかタスクを書き出して「管理(というか一覧化?)」まではできる。けど実際に消化していくとなると、これはこれで違うパワーが要る。

大げさな表現では決してなく、タスク消化には「覚悟」が必要だと考えています。

というわけで、どうにかこうにかタスク消化をするきっかけになる何かを作れないかと思い、最終的に完成したのが以下です。

image block
image block
image block

Danger Todoのコンセプト
単一タスクしか表示しない

目移り防止が主な目的です。今何をやるべきか?がシンプルに表示されていないと、私は困ってしまいます。「完了」をクリックすることで、次のタスクが表示されます。

単一タスク表示には副次的な効果があって、それなりの量のタスクをDanger Todoに打ち込んで実行していると、途中から「あれ?次に何を入れたんだっけ?」と分からなくなってきます。

逆にこれが私にとっては非常に良くて「それなりの重要度のタスクではあった気がする、、けど何だったかな、とにかく今のタスクを片付けて確認しなければ!」と現行のタスクを消化するための着火剤になってくれるんですね。

やらなかったタスクは「消える」

Dangerとは直訳で「危険な」という意味ですが、途中で投げ出すようなことがあると予め入力していたタスクは「全て」消去されます。

先ほど申し上げたように、私のような人間がタスクを消化していくためには「覚悟」が必要です。

暗闇の荒野に進むべき道を切り開く、まではいかないにしても、です。

これにも副次的な効果があります。

与えられた時間の中で、現実的に消化し切れそうなタスク量を事前に検討することができます。

Danger Todoの上手な使い方

もしコンセプトに賛同していただいて、まあ試しで使ってやってもいいという方のために。

ToDoアプリと銘打って自分で作っておきながら、タスク「管理」の全てをDanger Todoに任せることは推奨していません。

前述したように、Danger Todoはタスク「消化」のサポートを目的としているからです。

私自身が実践している方法をご参考までに紹介します。

まずタスク自体の書き出しはNotionで行い、優先順位を付けておきます。

タスク「管理」サービスはたくさんあるので、普段ご利用いただいているものなどご自由に。

そして「消化したいタスク」をDangerTodoに転記します。

ここで検討するのは以下の通りです。

  • しっかりと「やり切れる量」になっているか?
  • 優先順位に大きなズレはないか?

コンセプト項では触れませんでしたが、DangerTodoでも簡易的に入力したタスクの順番を入れ替えることができます。

準備が整ったらNotion(私の場合は)側で転記されたタスクを勇気を持って消去します。

DangerTodo側で「行動に移す」をクリックしたら、あとは画面に表示される単一のタスクを消化していくだけです。

後戻りできない状況を作ることが大事です。

他のことを思い付いて手を出したくなったら

私の場合ですが可能な限りNotionには戻らず、紙のノートなどに書くようにしています。これだけでだいぶ違います。

ちゃんとメモったぞという安心感があることで、消化中のタスクに集中できるようになりました。これがNotionに戻って綺麗に整理しようとすると、結局目移りします。

そこまで時間の掛からない割り込みであれば厳密にルールを守ろうとせずやってしまっても良いのかなと思います。結局DangerTodo側で完了を繰り返さないと残ったタスクは消えるので。

備考:技術や機能の検討など

ユーザー寄りのお話から先にするのですが、現行ではexeを実行した階層にdbファイルが生成されるため、アプリ内の「緊急離脱」ボタンではなくアプリそのものを終了させると、タスク消化の途中でも「やりなおし」が可能です。

これについては修正するか否かかなり検討したのですが、意図せずアプリが終了してしまった場合を考慮すると、タスク消化ツールとして依存する瞬間が発生する以上リスクが高くなりすぎるのではないかと判断したので、そのままにしています。

あとあんまりデザインがイケてないですよね。

当初認証まわりを楽に導入しながらスピード開発したかったので、親和性の高そうなPythonを選定しそのまま進めてしまったのですが、よくよく考えたら別に認証いらなくない?という結論になってしまい、でもスタック選定からやり直すのもダルいし、、と思っていたところ、Pythonでもそれなりにデザインを頑張ってくれるライブラリが見つかったという流れです。

デザイン周りの実装方法が大変なのと、その保守性がめちゃくちゃ悪いのでJavascript系で書き直したいです。でも保守するほど機能は無いしコア機能自体の実装は出来てるし、何なら毎日自分でも使って不便を感じていないので、優先度は低いです。

ゲームとかでも「自分が望む役割を果たせるアイテム/キャラなら可愛いカッコいいとかマジでどうでも良い」と思っているタイプの人間です。

タスクの実行中にポモドーロタイマーを導入しようか検討しましたが、目移り防止をしたいという目的に対してちょっと視覚的にズレがあるかなと思い見送っています。

ちなみにこのアプリ開発自体も「目移り」からスタートしました。その他のタスクを完全に無視して実装にのめり込んでしまいました。完成して安堵と期待はありましたが「またやってしまった」という後悔と懺悔の気持ちの方が大きかったです。

追記:アップデートを行いました

🕯️ 過集中&注意散漫さんのためのToDoアプリをアップデートしました

exeファイルの更新は少々お待ちください