仕事と違って誰かに頼まれて作業するわけでもないですし、具体的に作りたいものがあるわけでもない。
プライベートの時間を使ってプログラムを書く場合には、モチベーションを維持するのが難しい部分もあるかと思いますが、どうやったら長続きしそうか?秘訣というほどではないですが、実際にやってみて効果が感じられた手法をご紹介します。
GitHubに、登録する
なにはともあれGitHubにソースコードを登録するところから始めるのはおすすめです。どんな小さなプログラムでも構わないのでひとまず登録してみましょう。そうすると次のような副作用が得られました。
変更量は少なくても、細かくコミットすることで、自分の作業が可視化される。
GitHubにコミットしていくことで、自分が書いたソースコードの変更点、追加点を履歴として残すことができます。なので、コミットするときのメッセージは具体的に書いておくとあとで振り返りやすいです。さらにPushしておけば、GitHub上にその履歴が可視化されます。こんな感じです。
コミットした日が緑色になっていきます。不思議なものでこれをみていると、緑に埋めていきたい欲が高まってきます。なので少ない変更量でもこまめにコミットするということ自体がひとつの楽しみに変わっていきます。なんならプログラムの修正ではなくてもよくてソースコードにコメントを追加したり、ドキュメントに追記したりでもよいと思います。
完成させない。だけど、完了させる。
GitHubに共通する点もすこしあるのですが、プログラミングを続けていくとあれもやりたい、これもやってみたい、と色々とやりたいことが溜まっていきます。と同時に色々作りたくていつもよりも多くの作業時間を割いてしまうことがあります。
人それぞれ時間配分があるので、没頭して作業するというのも楽しいところではあるのですが、他の趣味も満遍なく楽しみたいという欲が強いため、やりたいことを残しつつも、今日はここまで!という風な区切りをつけることが多いです。そのきっかけとなるのがGitHubへのコミットです。
完成系はおぼろげながらイメージしつつも、今日はここで完了させる。ということを意識していくと気持ちもリラックスしながら、楽しく続けていけているように思います。
ひとつ注意点としてあるのは、コミットする場合は、必ず動作する状態でコミットすることにしています。例外として動作結果としてのエラーが出る場合がありますが、解消が難しい場合などは一旦コミットするのもありかもしれません。ただ変数名が違っているから先に進まないとかそういうエラーは取り除いておいてコミットしておくのがここでいう完了の定義としています。
ブログに書く。
ブログに残しておくのも効果高いです。これをやった次はこれやりたい。みたいなものでもいいし、自分の書いたコードを振り返ってみるのでもよいです。
ブログに書いていく効能として、書きながら自分の理解が足りてないところや、新しいアイデアが出てきたりするところです。
書き方のコツとしては以下のようなポイントを踏まえて書くようにしています。
たくさん書きすぎない。細かく説明し過ぎない。
プログラムの解説って意外に時間がかかります。細かく追っていくとキリがなくなって文章書くのも疲れてしまうので、適度に要点だけ踏まえて書くようにしています。
無理して書こうとしない。
ブログに書くことを意識しすぎると、疲れてストレスが溜まってしまいます。GitHubにも登録されているので記録としては残りますから、いまいち気分が乗らない時は書かない時は割り切って書かないとか、内容を簡潔にするとか、できる範囲でやっていくのがなにより大事に思います。
総じて大きく進めるよりも、とにかく小さく、小さく進めていくようなイメージでやっていくと、あまり疲れを感じずに楽しく続けていけています。
本質的には、長い時間、膨大な学習量のなか、自分が作りたい意欲、を小さく分割する。その分割した単位を完了させていく。というところでしょうか。