プログラミングで世界を変える

ゲームプログラミングと技術のこと

「学び続ける姿勢」について考えたこと、これから実践すること

内容要約

  • 「学び続ける姿勢」のインプットをした
  • 自分でやってみたことの振り返りをした
  • 今後の実践計画を立てた

はじめに

ドワンゴで行われた@t_wadaさんの講演についてのエントリを読みました yuelab82.hatenablog.com

学び続ける姿勢についてまとめられており、納得感のあるためになる内容が書いてありました。 その中の項目で アウトプットをするのが大事 とあったので、この機会に自分にとっての「学び続ける姿勢」を整理してみました。

『Write Code Every Day』をやってみて

実は3月下旬頃から『Write Code Every Day』を実践していました。

f:id:splas_boomerang:20170518025558p:plain

約1.5ヶ月間ですが、ほぼ毎日contributonsを生み出すことが出来ました。

github.com

始めたきっかけは、Battle Conference U30というイベントで「最良の砂場を目指して-プライベート開発を支える技術-」 というセッションを聴講したことでした。

持続性がという部分の話で紹介されていた『Write Code Every Day』に興味を持ち、実践してみることにしました。

自分なりの『Write Code Every Day』のルール

  • 目的は「毎日コードを書く習慣をつけること」
  • 目標は「毎日草を生やすこと」
    • githubのContribusionsの意味
    • 00:00-から23:59までに最低1contribution
    • 生活環境に依存せず継続する
  • “なるべく"意味のあるコミットを作る
    • 無意味なコミット < 毎日欠かさずコミット
  • オープンソースであることは問わない
    • github上での設定でプライベートリポジトリも表示させる

すぎゃーんさんの記事を参考に、かなり緩めのルールを設定しました。 memo.sugyan.com

書いていて気がついたのです、すぎゃーんさんは@t_wadaさんがきっかけで始められたみたいですね。

良かったこと

ほぼ毎日取り組めた

4月から新卒入社したので現在(2017/05/18)に到るまでずっと研修が続いているのですが、生活環境が変化しても継続出来たことは、習慣づけるためにとても良いことであったと思います。飲み会がある日は前日の寝る前にあらかじめ終わらせるなど、計画的に考えることが必要でした。

毎日開発に向き合う時間がある

ひどい時は空行を削除して「Remove empty line」というようなコミットもしていましたが、それでも意味はあったと思っています。というのも、個人開発は誰かに迷惑がかかるわけでもないので、自分のモチベーション次第では何ヶ月も放置してしまう可能性があります。空行を削除するだけでもプロジェクトに向き合う時間を作ることで、開発から意識が遠のくリスクはかなり軽減されたと思います。

悪かったこと

アウトプット量が少ない

毎日コミットすることだけを目的にしていたため、目的なく頭に浮かんだタスクを消化するという方法を取っていましたが、振り返って見ても大した進捗がほとんど出ませんでした。1回あたりの着手時間が少ない個人開発では、目的と締め切り意識をもち、短期間で集中してコードを書く必要があると感じました。

業務のContributionと混合させた

研修では個人のgithubアカウントが利用可能だったので、業務でコミットした日には個人開発に着手しない日がありました。業務に依存せずに毎日コードを書く習慣を身に付けることが大切だと思うので、後から混合すべきでなかったと感じました。

実践計画

すごい人達のベストプラクティスや『Write Code Every Day』の反省を活かし、個人開発や学習の計画を立てました。これまでの1.5ヶ月で習慣づけることは実践したので、これからは質が伴った習慣づけを行なっていきたいと考えています。

具体的にはスプレットシートにやりたいことのシートと作業計画のシートを作成し、1週間単位でゴールを設定できるようにしました。公開してあります。

docs.google.com

大きく分けて『開発』と『技術書』の2種類があり、それぞれを並行に進めていきたいと考えています。

開発では『Write Code Every Day』を今までのルールのまま継続し、ゴールを設定することで質を高めていきたいです。

技術書の項目では、今まで読みたいと思って積んでいる本がいくつかあるので、それを少しずつ消化していきます。インターネットで気になる記事を読むことも大切ですが、技術書を読んで体系だったまとまりでの知識を獲得する習慣を身に付けていきたいです。

最後に

やはり業務との違いは時間をしっかりと確保することの難しさだと思います。まずは確実にこの計画をこなし、少しずつ「学び続ける姿勢」の精度をあげていきたいです。