知識ネットワークのリファクタリングをどう捉えるか
プログラミングにおけるリファクタリングは、新しくコードを書き下ろすことに比べると楽しさは小さい。
ドーパミンの影響かもしれない。
しかし、それを行っておかないと、たとえば3ヶ月先にコードのメンテナンスがもうどうしようもなくなったりする。何がどう書いてあるのかわからなくなる。部品(関数や変数)の役割がまったく追えなくなる。
短いもの、小規模なものであればそこまで深刻ではない。
だからrashita.iconは、これまで小さいコードを書き散らしてきた。似たようなコードを何度も一から書き下ろしてきた。自分の楽しさを優先させると必然的にそうなる。
その状況の問題は、「何度も同じようなコードを書いている」ことではない。たしかにそのような効率性の問題もあるが、それ以上に「より大きなコード書き」に向けた準備が何も整っていなかった、という点にある。
より大きな、より複雑なコードであっても、ゼロから書き下ろすことになってしまう。
これは文章においてもいえる。ブログで一記事を書き下ろすのは毎回楽しいが、それらの記事から再利用可能な知識を抽出して取り出す作業を行っていなかったので、知識の下地がまったく整っておらず、より大きな知識ブロックを構成することができなかった。
そうすると、「これだけたくさん書いているのに、何か足りない気がする(それに見合うような達成感・実感が得られていない)」という感じになってくる。
別段大きな仕事、複雑な仕事の方がえらいわけではないにせよ、そういうのをもし求めるならリファクタリングの(あまり心躍るわけではない)作業を粛々と進めることが必要。
その意味で、プロジェクトノートからの委任状の切り出し、のような手つきは、実際はより巨大なプロジェクトノート作りに向けた準備に位置づけられるのだが、プロジェクトがそんなに巨大化していくことは個人の生活ではないので、その意義が実感される(ないしは活躍する)場面は少ないかもしれない。
ただし、抽象化して切り出すという知的作用は両者で共通している。