Write Code Every Dayを実践してみてわかったこと

Webエンジニアの方なら一度くらいは聞いた(やったことがあるとはいわない)はあると思うWrite Code Every Dayを実践してみた。

ぼくが知る限りにおいてもっとも古い提唱者↓

John Resig - Write Code Every Day

実は過去にも挑戦したことがあるのだがそのときは確か1週間ほどで挫折した覚えがある。

連日のように残業していて(これは単にぼくの手が遅かったことが原因)、 「日付変わる時間に帰ってきて毎日コード書くとかやれるか!!!」となってあえなく撃沈した。

あと日々の疲れを癒やすためにアニメやゲームを優先したというのもある、意思が弱いのだ。

ところが最近割りと頑張って続けられている。 そろそろ1ヶ月ほどなのだが割りと良いぞ!と感じるようになったので実践する前と実践した後でどう感じ方が変わったかを書いておこうと思う。

memo.yuuk.io

もともとのきっかけはそうだ Go、京都。で「最近毎日コードを書いてます」という発表を聞いたのがきっかけ。 ちょうどそのとき無職から現職に転職した直後だったことや自身の技術力の低さを嘆いていた時期だった。 あと放課後プロジェクトという自分が作りたいものを作る、というプロジェクトを土日に行うようにしていたのだがうまく回っていなかったというのもある。

id:y_uuki さんとはいくつかの点で異なることがあるが「毎日コードを書くためのリズムが出来る」「脳内メモリに乗っているので次に書くときに困らない」というのを日々実感している。

良い点:

  • 毎日仕事でないコードを書くのは楽しいので精神的清涼剤になってる
  • 業務のメインがPHPだが他の言語を触る機会が増えて楽しい
    • 仕事ではなかなか触ったことがない言語を使う機会が少なくなりがち
  • 日々の進歩を実感できる
    • 牛歩だとしてもやってる感がでると「今日ダルいけどこれだけ書いて寝るかー」って思うようになる
  • コンテキストスイッチのコストが減る
    • 一週間に1度だとどうしてもコンテキストが大きくなってしまい「やらないといけないけど面倒」という気持ちが大きくなる、良くない
  • 草が生えるのが楽しくなってくる
    • アチーブメント的な楽しさがある。
    • ただし毎日草を生やすことが目的でないので体調の悪いときなどは無理せず寝てる、でも人間1週間続ければやめるのがもったいなく感じるようになる
  • 出来るだけ残業しないようになった
    • 家に帰ってご飯食べて風呂入って副業ちょっとして〜となると時間がマッハでなくなる、アニメみてる暇もない。なので逆算してこれこれをやるには残業している時間はない!って強い気持ちを持つようになった。
    • 過去に寝なさすぎて身体を壊したので睡眠時間と起床時間は固定している
    • 独身なのでなにがなんでもこの時間に終わらせなて子供を迎えにいかねば!みたいな強制力がないと「残業すればいいか」と心の片隅で考えてしまって結果ダラダラと残業するようになっていたと実感した。
  • 土日に無理して「n時間頑張る!」みたいなのがなくなったので逆に映画みたり技術書読んだりする時間が出来た、心の余裕大事

悪い点:

  • 時間に追われている感がある
  • 草を生やせないときにちょっとモチベーションが下がる
    • 体調が悪いときは別。
  • 短い時間しか確保できないのでどうしてもまとまった時間が欲しくなる
  • アウトプットやインプットの量が減った…ように感じる。
    • 実際にはコミットログが示す通りアウトプットは増えているはずだがブログのエントリや参加した勉強会やセミナーの内容をメモ書きが溜まりがちになってそのままお蔵入りしている、もったいない。

まとめ:

毎日コードを書くというのは一見大変なように感じるが土日にまとめてやるほうが結果的にはコストがデカい。

毎日コツコツやるのが勉強の王道だというのは単に「そのほうが合理的」というだけの話し。 毎日やるほうが試験前にだけ勉強するよりもコスパがいい、その時間は15分でもいいし5分でもいい。 毎日やり続ければ習慣化されるので時間はどうとでもなる(ならないときもあるがそのときはそのとき考えればいい)

習慣化のすごさが実感できたが理解するのが遅きに失する感じがある。

エンジニアに限らず優秀な人たちはこの理論?法則?をきちんと理解していたのだろうなと思うとなかなか今まで無駄にしてきた時間が惜しまれる。

以前なにかで「頑張らない勉強会」というものをみたがWrite Code Every Dayも頑張らないことが継続する上で一番重要なことかもしれない。

余談だがぼくは草を生やすことができなかった翌日に普段の倍コードを書くようにしている。

これはぼくの中で「草は生えていないが実質草を生やしたのと同じ!」という気持ちを維持するためのもので継続的にコードを書くモチベーションを保つためにやっている。これがベストアンサーだと思っていないが割りと自分にはこれくらい緩いほうがあっているように感じているので今後も緩く継続していくつもりだ。

…最近、スキルアップという面で考えると副業が足かせになってきつつあり、今後どうするかを検討する時期に差し掛かっているのかもしれないと考えている。