2018年11月11日日曜日

「校舎の屋上からの景色を見せてあげるよ」

プログラマ向けの質問サイトで、回答する側に回ってみた。

私が、自分のために書くコードは当座の要求をとりあえず満たす目的のものばかりなので、まずは自分にできることを念頭に書くし、ユースケースも極端に狭い。他のプログラマが苦労して書いてくださったライブラリも必要を満たすだけの部分だけ使って済ませている。(実際的には、当然それで構わないのだが)
質問サイトでは、皆が思いも寄らぬことを目的に「それって意味があるの」と思えるような試みにチャレンジしているので、とても勉強になる。自分がちょっとだけ使っていたフレームワークの新しい使い方を知ったり、あるいは「そのような使い方はできない」ことが明らかになったり。

質問サイトに集まる、質問者の多くは初心者だ。初心者でない者も一定数いるが、そういう質問者の質問は要領がしっかりしており、すぐに回答がつき、「解決済」になっていく。結果、未解決のまま滞留する質問は「何を聞けばよいのか自分でもわからない」感じのものだ。

動かないというそのコードを見ても、「○○できるよ!」「○○やってみた」みたいな名前の記事を見て、切り貼りしながら1本にまとめたものの、実行したら「よくわからない」結果が出て途方に暮れている。そのような経緯を想像できる。青春だ。

やってみた系の記事に沿って、新しいことを試みるのは、例えるならば、美人女子高生の先輩に屋上まで連れていってもらうようなものだ。
ただ、階段の存在も知らないまま、エレベーターでいきなり最上階に昇ってしまい、そのまま立ち往生してしまう後輩クンも多い。

先輩に連れていってもらうのは冒険のきっかけを得ることであり、結果を先取りすることであり、それ自体は冒険ではない。冒険とは下記のようなものだ。

  • 階段を一歩一歩昇り、新しい階についたら現在位置を確かめる
  • 校舎の平面図を見てエスカレーターを探す
  • 屋上の鍵を借りる手続きを踏む


 「○○できるよ!」「○○やってみた」系の記事は、とても有用だ。私自身もありがたく利用させてもらっている。
だが、先輩が前もって行ってくれていたであろう、数々の準備に対する想像力がないと、自分の力で、もう一度その光景を見ることはできない。そして、それができないと先輩の姿を追うこともかなわない。