プログラムを"Hello world"から学ぶなら最初のアウトプットも小さく

TLで技術的な裏付けもないのに全部を作ってから動かそうとしている人がやっぱり動かなくて聞きにきたときにどう答えるか、という問いがあったんですね。そのTLの主は自分たちが当たり前のようにやっていることは様々な積み重ねの上にあるのでどこから話したら良いのかと戸惑っていたのですが。

こういったシチュエーションは、新人エンジニアを育成するときとか、異動で業務ドメインが変わったエンジニアで起こりやすい事象だと思うのですけれど。と、言うことはいつ自分の身の回りで尋ねられるかもしれないと言うことなんですよ。

チームを作ってそのチームがメンバを入れ替えながらも業務を継続していると普段から当たり前のように、何も意識することなくできてしまうことが増えていくことになります。ドキュメントや手順などで可視化されるものもあれば、コンテキストの中に押し込まれて高いコミュニケーションコストの中で行われるのもあります。

技術的なものはツールを介するので共通の理解を得やすいんですけれど。ツールをチームではどう使うか、それはなぜか、的なことは可視化できないんですよ。そういうのが厄介なんです。

冒頭の質問はそう言った可視化できないもので出来上がっているのでそれをそうした背景を知らない人に伝えることはとても難度が高いです。

ぶっちゃけ伝えようなんてできません。

でも、新しくチームに参画したメンバにはそうしたチームの家風として古参メンバに染み付いてしまっている文化をインストールしなければ仕事でのコミュニケーションのオーバーヘッドだけが増えて、最悪はそのメンバいらない、となってしまいます。

それは避けたいので、何かしなければならないのですが。

結局、見えない文化をインストールするにしても体系だった形式知しかインストールすることはできません。だって受け手は見えるものしか認識できないんですから。

プログラム、言語を学ぶ最初は"Hello world"から始めることが多いですよね。プログラムの世界へようこそ、と。

チームの文化をインストールするのも"Hello world"から始めれば良いのではないか、と。いや、"Welcome to our team"かも。

どうやってチームが物作りをしているかを知りたいということはそのチームに入る必要性があるから、でしょうし。

だからこそ、小さくアウトプットをできるために小さくインストールをした方がいいのだと思うのです。小さくインストールすれば小さくしかアウトプットできませんが、それでも小さな貢献ができるのです。それで仲間としての存在意義を共有できると思うのですが。

 

 

さて、新年はそれをやらないといけない…。