GitHubで毎日草生やし続ける運動を終了する
GitHubで毎日草生やし続ける運動とは
GitHubはコミットしたりプルリクするとプロフィールページのタイルっぽいやつが緑になります。 緑になるから「草を生やす」って比喩してるんですけど、それを毎日続けて緑で埋め尽くそうというものです。
進捗
7月最後の週ぐらいに草だらけになりました。
それからも毎日草生やしてたので400日ぐらいは継続できていると思います。
なぜやろうと思ったか
三十路になって「これからもコードを書いていられるのだろうか?(環境というよりは自分のモチベーション的な意味で)」と思うようになりました。 なので好きかどうか自分自身を試そうかなー、と。
やってみて得たもの
やる前に思ってたよりもずっと楽しんで続けられたので、やっぱり自分はコード書くの好きなんだな、と思えました。これは嬉しい。
あと、大したコードは書けてないですが、サンプルやらビルドスクリプトが溜まってきて何かと役立っています。
なぜやめようと思ったか
「継続」を目的としていたので、書きたいコードが思いつかない日はREADME.mdを修正するといったセコい草もたまには生やしていましたが、もうそうまでして草生やすのは面倒に思えてきました。
それに、読書のような草が生えない活動にももっと時間を使いたいなーと思い始めました。
当初の目標であった一年は継続できたので、やめるのにも未練は無いですし。 (でもなんか気持ちの整理的にやめることは記しておきたくてこのエントリを書いてる)
まとめ
- コード書くのが好きだと再確認できて個人的には意義がある試みでした
- 草生やし運動は人によって合う・合わないがあるので特別おすすめはしません
- 一年後、プロフィールページが不毛の地と化していたら嘲笑ってください
privateメソッドについての思いの変遷
UnitTestでのprivateメソッドとの向き合い方 - ジムには乗りたい を読んで、自分のprivateメソッドに対する思いを書き殴りたくなったので書いてみました。
変遷
新人の頃の☃「private?メソッド?というのがあるのか。ふむ。ふむ……?」
新人ではなくなったが若手の頃の☃「メソッドが大きくなってきたな。privateメソッドで分割だ!」
若手とは言えなくなった頃の☃「privateメソッドのテストコードってどう書いたら良いんだ?リフレクションか?」
2、3年前の☃「privateメソッドは共通処理を切り出すためのもの。呼び出し元のpublicメソッドのテストコードで担保される」
最近の☃「privateメソッド スベテ コロス!!!」
解説
新人の頃は割愛。
次の若手の頃の話は、これは大きいメソッドを単にぶつ切りにして満足しちゃってた感じ。 臭いものに蓋してるだけで何の解決にもなっていませんでしたね、今から思うと。
それからprivateメソッドのテストコードについて悩みました。 どうすれば良いんだ?と。 悩んだ挙句protectedにしちゃたりしてましたが、これも誤魔化しですね。
で、しばらくして、呼び出し元のテストで担保できるじゃろ、と思うようになりました。 この頃にprivateメソッドは複数のpublicメソッドに共通する処理を切り出すものだ、と考えるようになったのでした。 逆に言うと、publicメソッドの一部を共通化する以外の目的でのprivateメソッド導入はダメだと考えるようになりました。
そんでもって最近は、なるべくprivateメソッドは導入したくないと思っています。
個人的にはprivateメソッドを導入する時点で、これ他のクラスのpublicメソッドなのがあるべき姿かも?と考えるようにしてる。
— うらがみ⛄ (@backpaper0) 2016年9月4日
年々、小クラス主義になってるのかなー。 みたいな。
まとめ
冒頭で記載したエントリでは、
結局のところ、privateメソッドの詳細に踏み込んだテストが必要になった時は、設計に何か問題がある可能性が高いということなのだと思う。
と書かれていましたが、私はprivateメソッドを導入しようと思ったタイミングで設計に問題があるのでは?と疑ってみるようにしています。