個人開発で食べていきたいKamaseinuです。
よく「重いタスクと軽いタスクで分けておこう」という話題を見かけます。
やる気がなかったり体力がないときにでも出来るタスクと、やる気があって頭も働きます〜というときに出来るタスクで分けて管理することで、作業していない時間をなくしていこうという考え方ですね。
これ自体はとても良いことだしやりたいとは思うのですが、実際にやるとなると…ケースバイケースですが、なかなか難しいなぁと感じます。
個人的に難しいと思うポイントを2つ挙げてみます(個人開発を想定)。
理由1.「いや、このクソでかいタスク終わらないと次に進めないんだけど・・・」現象が起きる
例えばですが、誰かに何かの作業をお願いするゲームの場合は「誰にどのぐらい、どの値段で何を依頼するか」をまず決定して、依頼しておかないといけません。なので、その見積もりが完成するまでは完全に一本道です。
また、ゲームの主要部分を先に作らないといけない、といった状況も考えられます。
まず主要部分が技術的に実装可能かどうかって結構設計段階だとグレーだったりしますし、実際難しくてイメージ通りにはいかず、それによって全体の構成も変えるなんてこともザラにあると思います。
その主要部分がガチっと決まらないと細部をどう作るかがイメージが湧かなかったりとか、何を作って良いのかがそもそも分からない状況に陥ります。
このように、ある大きなタスクが終わらないと次に進めないなぁというケースはとても多い気がします。
これらのような一本道の作業を進めているときは、やる気があろうがなかろうがそのタスクに向き合わないといけない時間が必ず生じます。

理由2.めっちゃ「やる気ない時用タスク」ばっかやっちゃう
僕はストイックな人間ではないので、軽い時のタスクを用意しておくとそのタスクばっかりやっちゃうんですよね。
で、普通に何日もそれ続けちゃったせいで重いタスクの方のプログラムの内容を忘れたりして、更に腰が重くなるという悪循環。
たちが悪いのが、なんとなく作業やってる感は出るせいで、緊張感が生まれなくて妙な達成感だけが残ったりすること。
しかもタスク分け自体もガバガバすぎて、仮にめちゃくちゃきっちり設計してみてもさっき言った軌道修正みたいなことが起きるので、そんな時にやる気ない時用タスクばっかり進めすぎていたらもう取り返しがつきません。

とまあ、こんな感じで、僕はなかなかやろうと思ってもあまり出来ていません。
なので、体調が悪かったりしても基本的には目の前の今一番やるべきタスクに向き合って、一本道のような感じで進めています。
どうしても無理なときに都度タスクを探して進めるぐらいのゆるい感じでやって、最悪ガッツリ寝ます。
・・・まとめると、タスク分けには賛成だけど軽いタスクに手を出す前に何段階かあって、それは全てその重いタスクをやるためにどうするか?のための手を打つということにつながっている、というのが僕の言いたかったことですね。
重い↔軽いという話ではなく、重いタスクあってこその軽いタスクであるという考え方かもしれません。
なのでこれからも、どちらかというとどうやったら重いタスクに向き合えるのか、処理できるかってことに多くエネルギーを割いていこうかなぁと思っています。
開発終盤になってやることが完全に明確になったタイミングで追い込むとか、そういう時にはタスクをより細分化しても良いかもしれないですね。
まあ自分に合ったやり方ならなんでも良いと思いますが、僕はこんな感じです。では〜