初心者向け勉強会を主催して思ったことを書く。
今回の記事は、「小規模な初心者向けオンライン勉強会ではもしかしたら主催者は「無能」を装ったほうが良いのでは」という話である。今回のは初心者向けで当てはまることで、なれた人向けの勉強会では当てはまらない。
ここで注意するべきは、「無能」を装う必要があるのは主催者のみで、参加者はそうでもない。参加者は無理して無能を装う必要はない。理由は参加者は主催者ほど注目が集まらないからだ。参加者にそこまで強制できないしする必要もない。
あと主催者は持ってる権限が結構強い。それで技術力が高いと「最強」になって誰も近づかなくなる。なので、技術力が低い人が主催して技術力高い人を呼び寄せて「対等」にする。これはなれた人向けの勉強会になる。
何度も小規模なオンライン勉強会を開いて思ったのが、勉強会は技術的なものになればなるほど、「力比べ」的な要素がやっぱり出てしまう。いくらそういう競争的な要素を排除しようとしても難しい。いくら点数やランクをつけていなくても、「自分ではコードを走らせられなかったが、相手のアドバイスで走らせられた」というので優劣が出てしまう。
マウンティング発言をしようがしまいが関係ない。
もしも、勉強会の「力比べ」的な要素を排除できないとするなら、例えてみれば、普通の技術者は一日のほとんどの時間を「技術作業」に費やしている。つまり、技術能力では一日中トレーニングしているアスリートみたいなものだ。
逆に初心者は子供に近い。いずれは成長するが、現時点では力はあんまりない。
普通、子供と力比べをするアスリートは普通は「手加減」をする。それは当たり前すぎる話であって、今さら言うこともない。自分の子供だろうが、他人の子供だろうが普通は手加減をする。
しかし、オンライン勉強会で「手加減」をする主催者はあんまりいない。
例えば、Q&Aサイトみたいに「正解そのものが必要」となると、「手加減」は特に必要なくて、正解そのものを言えばいい。
普通の技術者は、やはりかなりキャリアが長いので、「プログラミングに対するカン」みたいなものが醸成されていたりする。説明するまでもなく、「こうやればコードは動く」みたいなものだ。
問題は、勉強会において「初心者がいろいろ動かせない」時に、正解そのものを言うと、確かにコードは動く。だが、「プログラミングに対するカン」みたいなもの(メンタルモデルとも言う)を初心者の中で育てるためには、実はちょっとそれだとまずいのではと思ったりする。問題は「キャリアのある技術者のカン」が正しすぎるということだ。
つまり、そこで主催者がするべきは「無能を装う」ことなのではと思う。つまり、わかることでも「よくわからない」と言う。あえてどういうロジックで結論に至るかを考えて、時間をかける。直感で分かることでも、勉強会で読んだ本の中に「答え」を見つけようとする。あえて難しく考える。回り道をする。あんまり喋らない。
相手の該当分野の技術能力やキャリアがどれぐらいかがだいたい分かったら、それに合わせる。
こういう「無能を装う」という戦略は講義やお金を取った家庭教師では恐らくダメだと思うが、勉強会では意外と有効な戦略なのではと思う。
もちろん相手がそれなりに技術力も自信もある人なら手加減は必要ないと思う。むしろぼやっとしてると負けるので、ちょっと自分にプレッシャーがかかっていいかも。
この戦略のもう一つの利点は、無能を装うと宣言して無能を装うと、本当に無能なのがバレないということだ。
必要なことは、プログラミングに対する「自信」のようなものをつけさせることだ。
追記
もちろんセキュリティ的にまずいことになりそうな場合は正解をすぐ言ったほうがいいかもしれない。
追記
初心者向き勉強会を開いても金銭的にはまったく得をしないし、その他の付随的な利益もないです。僕は無能なので得しないのはいいが、他にやる人がなかなかいないというのも問題かなと。特に初心者向き。