はじめに
本記事は株式会社Works Human Intelligenceのアドベントカレンダーの8日目の記事となります。
2020年12月2日から1年以上毎日GitHubに草を生やし続けた話について、以下の内容で書いていきます。
- 草を生やし始めたきっかけ
- 作っているもの
- 継続するための工夫
- 継続したことで得られたもの
- 改善点
- 人生が豊かになった話
自己紹介
2013年新卒入社の32歳。
入社以来開発部門でエンジニアとして働いていて、現在は2歳の息子の子育てをしながらフルリモートで勤務中です。
2020年当時、仕事での開発はできることの繰り返しになってしまっていて、エンジニアとして成長できている実感がないことに悩んでいました。
(今振り返ると、当時でもできることはたくさんあったのに、目を向けられてなかったです)
だからといって、子供も生まれたばかりでまとまった時間の確保が難しいことを言い訳にして、学習に時間を割いていませんでした。
草を生やし始めたきっかけ
そんな悶々とした日々を過ごしていると、2020年12月1日にt_wadaさんが弊社に対して講演をしてくださりました。
本日はこれから Works Human Intelligence 様にて、 IT エンジニアとしてレベルアップしていくための勉強法、工夫などに関する社内講演をいたします。よろしくお願いします。
— Takuto Wada (@t_wada) December 1, 2020
※ 引用した資料は過去に公開されているものです。
その講演は自分にとって勉強になることがとても多く、意識が変わった出来事となりました。
子供が生まれてまとまった時間が取れないから学習できないと思っていた自分にとって、毎日少しずつでもいいので、継続することが大切だと思えるようになりました。
そして、講演で紹介されていた**Write Code Every Day**が印象に残り、すぐに実践できそうだったので、翌日から始めました。
余談ですが、本年もt_wadaさんに講演していただきました。
今回もとても勉強になりました。
# 作っているもの 某ゲームのネット対戦の対戦結果の登録・分析サービスをVue.js + Firebaseで個人開発しています。本日は株式会社Works Human Intelligence様にお招きいただき、「質とスピード」の社内講演をいたしました。Slidoへ質問をたくさん頂きましたし、社内のSlackでの実況もたいへん盛り上がったとのことです。ご清聴くださいました皆様、誠にありがとうございました!https://t.co/FygMQiyFrX
— Takuto Wada (@t_wada) November 30, 2021
継続するための工夫
毎日継続すること自体が主目的ではないですが、モチベーションを高く保つために、毎日継続することを重視していました。
何か1つでも参考になれば嬉しいです。
自分が作りたいもの、作っていて楽しいものを作っている
自分が好きなゲームで強くなりたくて、対戦結果を記録したり分析したりできるサービスがないか探してみたところ、世の中に存在していなかったため、自分で開発することにしました。
自分が好きなものを題材にして、自分が本当に必要だと思っているもの(≒他のプレイヤーにも求められているもの)を開発できているため、モチベーションを高く保つことができています。
自分の生活にあったルールに変更
本家のWrite Code Every Dayには以下の4つのルールが定められていました。
- 毎日コードを書くこと。ブログ、ドキュメント、その他はコードを書いたらやってよい。
- 意味のあるコードを書くこと。インデントやフォーマットの修正、可能ならばリファクタリングもコード書きにはカウントしない
- 深夜24時前に終わらせること
- 書いたコードをGitHubで全てOSSにすること。
毎日継続できるように、自分の生活スタイルに合わないルールは適宜変更していきました。
2.に関しては、基本的に意味のあるコードを書いていますが、自分や家族の体調不良時は簡単な修正で済ますのはOKとしていました。
3.に関しては、子供の寝かしつけ中に一緒に寝てしまいそのまま24時を過ぎる恐れがあったので、基本的に24時過ぎてからpushしていました。
4.に関しては、サービスの個人開発ということで、privateリポジトリでの開発をしています。
コロナ禍 + 子育て中ということで飲み会や家での飲酒は1年間で0だったので、これらの要因によってリズムが崩れるようなことがなかったのは続けやすかったです。
(状況によっては「飲酒はコードを書いてから」というルールを追加していたでしょう。)
タスクを細かく分割して、毎日そこからやることを選んでいる
子育て中で自分の自由時間が限られているため、毎日長くても30分程度でコードを書くようにしていました。
毎日何をやろうかと考えていると、あっという間に時間が過ぎてしまうため、Trelloに30分程度で終わる粒度のタスクを事前に大量に作っておき、毎日そこから選んで開発することで、何をするか迷うことなくスムーズにコードを書くことができました。
また、タスクを減らすことで達成感が得られるのも良かったです。
草を生やし続けていることを周囲にアピールしている
草を生やし始めてから社内のslackのtimesチャンネルで毎日草を生やした報告をしていました。
毎日リアクションをもらえたことで、モチベーションを高く保つことができました。
また、周囲に公言することで、やめられない状況を作るという側面もありました。
(最初は毎日報告していましたが、習慣になってからはキリ番のタイミングのみ報告していました)
家族に理解してもらう
毎晩、仕事も家事育児も寝かしつけも終わり、子供が寝てから草を生やしています。
その時間も完全に自分の自由時間ということではなく、いわゆる夫婦の時間であって、その時間を削って草を生やしているため、家族の理解を得ることも大切だと思っています。
始めの頃は、夜に1人でPCいじっていることについていろいろ言われたりもしましたが、
草を生やしていることについての説明と、得られる効果について説明したところ、理解してもらうことができました。
今では
妻「今って草生やしてる?」
私「うん」
妻「じゃあ、生やし終わったらこっち来て」
のような会話が繰り広げられるようになりました。
小さな達成感をたくさん味わう
これは上記のことを実践していると勝手にできていることなのですが、考え方としては大切なので書きます。
- GitHubに草が生える
- 開発が進み、機能ができてくる
- Trelloに積んだタスクが減っていく
- slackにリアクションをもらえる
とにかく、ハードルは低めに設定して、自分を褒めてあげて達成感を味わうことによって、継続しやすくなると思います。
序盤は、簡単な修正で済ますことに対する謎の罪悪感みたいなものがあったのですが、何もやらないよりは良いのだということに気付いてからは気にならなくなりました。
継続したことで得られたこと
できることや知識が増えた
当時は仕事では扱ってこなかった言語やプラットフォームでの開発となったため、以下のようなものの知識や経験が増えました。
- Vue.js, Nuxt.js
- Firebase
- OAuth
- GAS
個人開発なので、自分が学びたい技術を導入できるのが良かったです。
開発・学習することが習慣になった
2ヶ月くらい続いてくると、完全に習慣化してきました。
日々の生活のルーティンに組み込まれるので、当たり前のように時間確保ができて、生活リズムも良くなりました。
後述するのですが、何かを毎日継続する習慣というのは他の物事にも適用できます。
自分なりの習慣化のメソッドを構築できたことがこの活動の一番のメリットだったと思えます。
仕事での時間の使い方も変わった
まとまった時間は取れなくても、毎日30分ずつくらいなら時間を作って草を生やせるということがわかると、仕事でも時間を取れるんじゃないかという気持ちになってきました。
そこで、毎朝30分、内部品質の向上のための活動をするようにしました。
(これはメイン業務が忙しかったり、他のサブタスクが入ってきた際の犠牲にしてしまうこともあり、成果が出てくるのは来年になると思いますが。。)
このような時間の使い方をしようと思えたことが自分にとっては大きな変化だったと思います。
アウトプットの機会
これまで特にアウトプットしてこなかったのですが、草を生やしていることがきっかけでアウトプットの機会が得られました。
社内LT登壇
草を生やしていることを社内で公言していると、周囲の人からも、そういう人だという認識を持たれます。
100日継続したタイミングで、弊社のTechBlogやLTの運営をしている方から、社内のLT登壇の機会をもらえたので、話しました。
Qiitaの記事(本記事)の執筆
ちょうど1年間続いたということで、ネタがあったので初めてQiitaの記事を書きました。
雑談等で何名かの社員から「記事書かないの?」と言ってもらえたのが後押しになったと思っています。
どちらも自分の考えを整理して伝える良い訓練になったと思っています。
改善点
規模が大きめのサービスの開発だったため、新しい技術や知識の学習という観点だと、最初の数ヶ月がピークだったように思います。
もっと規模が小さいものをいろんな言語で開発する方が、多くのことを学べるのではないかと思っています。
また、言語やプラットフォームを業務で利用しているものと合わせることで、仕事との相乗効果も増すと思います。
人生が豊かになった話
1年間草を生やし続けたことによって得られた一番の変化は、自分は何かを毎日継続することができると思えたことでした。
実際に継続することが得意になったのか、そう錯覚しているだけなのかはわかりませんが、継続できるようになりました。
そして、少しずつでも毎日継続することで、いつか大きな成果となるということに気付くこともできました。
これらの気付きを得たことで、私生活が変わってきました。
私は社会人になってから体重が20kg増加していました。
これまで、無理な食事制限によって瞬間的に痩せて瞬間的にリバウンドしたり、
ジムに入会して1度も通わず、半年間お金だけ払い続けていたりと、痩せることができていなかったです。
草を生やし始めてから半年経ったときに、何度目になるかわからないダイエットを始めようと思いました。
今なら運動を毎日継続できるかもしれないという自信があったため、近所のジムに入会しました。
その日から半年間、ほぼ毎日1時間ジムに通うことによって10kg以上のダイエットに成功しました。
(目標にはまだまだ到達できていないので、継続していきます。)
毎日草を生やし、毎日ジムにも通えていると、新たに何かにチャレンジしたい欲が出てきました。
そこで、昔からやりたいけどやれていなかった、ベースをやり始めることにしました。
楽器教室にも通い始め、毎日ベースの練習をしています。
今は毎日仕事や家事育児、寝かしつけの終了後、
ジムで運動 ⇒ ソースコード書いてGitHubに草を生やす ⇒ ベースの練習 ⇒ 遊びや資格の勉強
といった充実した日々を過ごせるようになりました。
30歳も超えて、子供も生まれた状況でも1年間でこれだけ新しいことを始めることができたことで、
人生、何かを始めるのに遅すぎるということはないという言葉はよく聞きますが、実感することができました。
おわりに
GitHubに草を1年間生やし続けるという活動を通して、以下のようなことを強く実感することができました。
⁻ 自分は何かを毎日継続することができる
- 少しずつでも毎日継続することで、いつか大きな成果となる
- 人生、何かを始めるのに遅すぎるということはない
大げさだと思われるかもしれませんが、GitHubに毎日草を生やすということがきっかけになって、自分の人生が豊かになりました。
この記事が誰かにとって、意識や行動を変えるきっかけになってくれればとても嬉しく思います。