概要
ゲームプログラマー志望の大学生を弟子に取ったnoteがバズっていた↓これである
ざっくり、概要を書くと「ゲームプログラマーの人が大学生を弟子にとって、育成プログラムを課すものの学生側のモチベーションが落ちて、師弟関係が終わった話」である
開始時点でプログラミングスキルはほぼ0である初心者が今回の弟子
育成プログラムは大きく2つ
・プログラムの課題を出して、週1で進捗を確認
・技術書を月一冊読んで、説明する
noteに記載されていた育成プログラムは以下である(そのまま引用)
・C言語の初心者向けの技術書を読んでほしい。
・C言語でCUI上でうごくじゃんけんゲームを作って
・C言語でCUI上でうごくトランプのブラックジャックを作って
・C言語でCUI上でうごくトランプのポーカーを作って
・作ったポーカーを改造して、存在しない7枚版ポーカーを作ってほしい。オリジナルの役を考えて実装してほしい。
と書かれていた
それらの内容について自分なりに取り込めるところがあると思ったので書いていく
プログラムの課題を出して、週1で進捗を確認
技術的なものを成長させる成長プログラムで、内容の是非はネット上でいろいろ書かれている。ゲーム作りから遠すぎるとかとはいえ、週一で振り返りがあるプログラム作成を行うことを習慣にすると良いと思った
師弟関係とかなしに個人的にやるのであれば、目的や進捗を週ごとのスプリントで振り返りを行っていくみたいな
現状自分はAtcoderをやっているものの、週に一回のコンテストに出るだけ
それとは別に成果物を積み上げて作るみたいなことを習慣として持つのが良いだろう
毎週本を読んで説明する
読書する習慣が学生時代以降あんまりなくなっていたことを、ふと思い出した
強いエンジニアと言われる人は月に一冊以上は本を読んでいることは想像に難くない
自分も月に一冊読む習慣をつけていこうと思った
誰かに本の内容を説明するみたいなことは、Qiitaに書いたりしてアウトプットすることで自分なりにこの師弟関係の機能を再現できると考えた
文章をアウトプットする練習にもなるのでぜひ取り入れていきたい
Udemyなどのネットの教材じゃなく本であるというのは、体系的に学べるのと情報の質を担保する意味があるのだろう
モチベーション管理について
定例的に学習を振り返って、進捗や学習の目的、目の前の目標を明確するようなことが必要だと思った
マインドセット的なところは、この師弟関係では何もされていないようで、それが原因で師弟関係がダメになってしまっている
これは個人でやるときも同様で、厳しいことをする習慣をするほど、モチベーション管理をしっかりとしていく必要があると思った
それを自分が一人でやる際にはモチベーション管理をしていかないといけないが、モチベーション管理するモチベーションみたいなことが非常にめんどくさい事例が発生する
モチベーションとする源泉は人それぞれであるが、自分は少し前の自分より成長していると感じられるとモチベーションが上がる
週一で振り返りを行うとともに、書いたコード量や取り組んだ時間など定量化しやすい指標を使って自分のモチベーションを維持できればと思う
また、noteのように師弟関係があると、〆切感がでて必死になるとは思うが、義務感がでてきそうであんまりやりたくないなとは思った
凄まじいモチベーションがあれば、師弟関係やそういうコミュニティに入ることで、環境による強制力はかなり強くかかるが、自分でやるとき続くか分からない
最初は緩いコミュニティとかに入ると良いかもと思った
まとめ
noteの内容はネットでいろいろな批判を受けていたものの、成長するためのプログラムとしては良いと思ったプログラムの内容や本の説明、モチベーション管理などは一人用にチューニングする必要はあるが、上手く習慣にできれば成長できるだろう
一気に習慣化しようとすると失敗するので、簡単な本を読むというところから習慣化していきたい
ちょうど店頭に、「技術書」の読書術という書籍があったので購入してきた
参考