こんにちは。新人プログラマーの岩本です。
タイトルの通りですが、今日から毎日GitHubにコミットしていきます。
今回はその宣言の記事です。もしチャレンジしてみたかったけど、なかなか踏み出せなかったという人は一緒にチャレンジしてみませんか?
なぜやろうと思ったのか?
まずなぜ毎日コミットをしようと思ったのか、そのきっかけを説明します。
その理由は大きく分けて3つあります。
- アウトプットの習慣がなくなってしまった
- 尊敬する先輩が毎日コミットしている
- スキルアップをしたい
各自説明していきます。
アウトプットの習慣がなくなってしまった
1つ目の理由は「アウトプットの習慣がなくなってしまった」ことです。
最近バイトを始めたり、引っ越しをして新生活になったりで、自由に使える時間が減ってしまいました。それに伴って仕事以外でコードを書く機会が減り、だんだんアウトプットの習慣がなくなっていってしまいました。
アウトプットをしないと必然的に知識の定着が遅くなり、結果的に成長が止まってしまいます。
なので毎日コミットをすることで、もう一度アウトプットの習慣を取り戻したいと思いました。
尊敬する先輩が毎日コミットしている
2つ目の理由は「仕事先の尊敬する先輩が毎日コミットしている」ことです。
その先輩は会社内で不可欠な人材です。が、その活躍の裏には相応の努力がありました。毎日欠かさずにコミットを続けていたのです。
いつかは自分も会社で「この人がいないとダメだ!」と思われるような人材になりたいと思っています。
しかし、現状能力で劣っている自分は努力量でも負けています。それでは追いつくどころかどんどん差が開いてしまいます。
そこで少しでもその先輩に追いつきたい、せめて同じ習慣を身に付けたいと思い、毎日コミットすることを決意しました。
スキルアップをしたい
3つ目の理由は「自己のスキルアップをしたい」ことです。
僕の同僚のエンジニアは、正直言って皆レベルが高いです。レベルが高いだけでなく、学習意欲もあります。少しでも気を抜いたら、すぐに差が広がってしまうのではないかと思うほどです。
そんな彼らに負けないためには、やはり自己の継続的なスキルアップは欠かせません。
そうした焦りを抱えた時に、jQueryの作者John Resig氏の記事に出会いました。
毎日コードを書き続けることの有益性を語るという内容です。
これを読んで、毎日コードを書く習慣を身に付け、スキルアップしたいと思うようになりました。
チャレンジルール
今回のチャレンジにあたり、3つのルールを設定しました。
- 毎日最低でも1コミットすること
- 最低でも100日間続けること
- 100日後に記事を書くこと
各自説明していきます。
毎日最低でも1コミットすること
このチャレンジの根幹をなすルールです。
このルールには3つのサブルールがあります。
コミット内容は新しい技術の学習だったり、自作アプリの開発とします。仕事のコミットを含めると、チャレンジが意味がなくなってしまうためです。
またあくまでコードを書くという行為にこだわるため、ドキュメントやコメントの更新はコミットにはカウントしません。
常に自分の出せる最善を尽くし、コードを書きます。これは限られた時間でも一定の生産性を保てるようにする訓練をしたいからです。
この3つのサブルールのいずれかに反したものは、コミットとしてカウントしません。
逆にこの3つのルールさえ守れば、どんなに小さなコミットでもOKとします。
最低でも100日間続けること
チャレンジ期間ですが最低でも100日間は続けます。
理由は主に2つあります。
ある行為を習慣にする時には、通常2ヶ月ほど必要だと言われています。
しかし自分の過去を振り返ると、2ヶ月続いた後に挫折してしまうことが度々ありました。2ヶ月続いたんだがらもう習慣になっているだろう、と気を抜いたことが原因です。
そこで今回は習慣が途切れてしまうことがないように、100日間という期限を設定しました。
しかし、あくまでも「最低」の話なので、習慣になっていないと思ったら期限を延長します。
習慣になったかの判断基準は、苦を感じずにできるかです。行動が習慣化されれば基本的には何の感情も伴いません。
コミットするのが苦と感じなければ習慣になったとします。
100日後に記事を書くこと
100日後に感想や変わったこと、成果物などをこのブログで記事にしてまとめます。
100日後に記事を書く、という目標があることで挫折しづらい状況を作るためです。
また記事を書くためには自分のアウトプットするものに注目する必要があります。そのため惰性でコードを書くのでは無く、意識的にコードを書けるようになるのではないかと思います。
途中で挫折してしまった場合も、その原因やその過程で得た知識を共有したと思います。
このチャレンジで期待すること
このチャレンジに期待することは2つあります。
- 仕事以外でコードを書く習慣を身につけること
- 限られた時間で良いコードをかけるようになること
各自説明します。
仕事以外でコードを書く習慣を身につけること
いいエンジニアになるためには常に勉強して、知識をアップデートしなければいけません。そのために勉強、コードを書くという行為を習慣にする必要があります。
今回のチャレンジではまさにその「習慣化」を目的にしています。
もちろん習慣にするだけで凄腕になれるわけではありません。
しかし凄腕の人はみな、これらの行為が当たり前になっているのではないかと思います。
まずはその習慣を身に付け、凄腕への成長するための土台にしたいです。
限られた時間で良いコードを書けるようになること
毎日コミットを続けるには、どんなに忙しい日もコミットするということです。
しかしサブルールの1つ「常に自分の中の最善のコードを書く」を守るためには、限られた時間の中でも頭を動かして、いいコードを模索する必要があります。
そうした習慣は仕事でも役に立つと思います。
バグを迅速に修正する必要に迫られた時も、時間に追われながらも一定の生産性を保てれば、僕の目指す「不可欠な人材」に一歩近づけます。
そうした意味でもこのチャレンジで、短い時間で高い生産性を発揮することを目指したいです。
終わりに
ダラダラと自分語りをしましたが、言いたいことは1つだけです。
今日から毎日コミットをするので、応援してください🙇♂️
他の人から見たらしょうもないチャレンジだと笑われるかもしれません。でも飽き性でいつも三日坊主で終わってしまう僕からすると、これは大きなチャレンジなのです。
もし一緒にチャレンジしたいという人がいれば、一緒に頑張りましょう。
最後に僕のGitHubのアカウントを載せておきます。
ここまでのご閲覧ありがとうございました。
100日後にいい報告ができるように頑張ります。
コメント