42Tokyoは「知識の錯覚」に立ち向かう勇気を与えてくれた

.1. はじめに いつも聞いているポッドキャスト「ゆる言語学ラジオ」の中で、学びについてとても興味深いお話があったので、感想をまとめる。 .2. 知識の錯覚 まずはポッドキャストからの引用。 人間には「知識の錯覚」があるらしい。 「自分は賢いと思う錯覚」のことを知識の錯覚という。 知識の錯覚ほど、あらゆる人間が抱くものはそうない。 つまり、人はみんな「自分は賢い」と錯覚しているのだ。 知識の錯覚のやっかいな特徴は破壊すると怒られることだ。 誰かに「あなたはこれを知らないですよね」と指摘されることはものすごく不快だということとのこと。 その上で、こう続く。 知識の錯覚には、因果の説明(因果的説明)をさせるといい。 因果的説明を求められると、知識の錯覚は崩壊する。ところがみんな怒る。 これは人間にとって、トップクラスに不快なこと。 だから人はlsコマンドの中身を読みたくない。 中身を読んで、カーネルコールの仕様がどうなっているかを、あらためて考えたくない。 だから避けているのだけど、知を積んでいくと不快感へ踏み出す勇気が生まれる。 初学者で学ぶlsコマンド。 このコマンドについて、理解しているはずだ。 しかし、「コマンドの中身(メカニズム)」を読んでみるとカーネル呼び出しなどが多く、理解できないことがわかる。 この経験をするのは不快だ、ということである。 しかし、学習を進めていくとこの不快感へと立ち向かう勇気が出てくるのである。 .3. 感想 42Tokyoは「知識の錯覚」に立ち向かう勇気を与えてくれると感じた。 .3.1. レビューでの因果的説明 まず因果的説明を常に求められる。 レビューでは相手がどのような人であろうと納得するまで説明を尽くさねばならない。 自分は「わかったつもりでいた内容」でも、説明していく中で理解していないことを気付かされる。 この経験は、恐怖であり不快感を覚える。 レビューの予約を入れるときには常に、「自分の無知を指摘されるような恐怖」に苛まれるのである。 しかし、レビュー後に残るのは、新しい知識に出会えた喜びが残る。 自分でいくら考えても見つからなかった学びが、レビューという短時間の間に獲得できるのだ。 この経験は不快感を乗り越えさせる原動力になる。 ラジオの発言を借りると、「知の錯覚」に立ち向かっているのだ。 立ち向かう経験を積み、楽しさを知ることで、勇気を身につけることができるのだ。 .3.2. lsコマンドの中身を読むこと 42Tokyoでは、(lsコマンドではないが、)libcやprintfの再実装を行う課題がある。 この課題を進めるにあたって、嫌でも実装の中身を読む(理解する)必要がある。 自分で実装していく中で、バグにぶつかる経験をとおして、既存の実装の素晴らしさを学ぶのである。 この経験は、42Tokyoの課題として向き合わなければ、逃げることができる経験だ。 つまり、多くのエンジニアにとって、printfの実装は見なくてもいいし、意識しなくてもいい。 再実装中のバグで困る必要もなければ、自らの実装力の無力さを感じることもない。 42Tokyoではこのようなチャンスを自然に与えてくれるのだ。 まさに、「知の錯覚」に立ち向かう機会と仲間を与えてくれている。 .4. さいごに 私自身も、「CSをかじっていたから」と自らの知識を"錯覚"することがある。 しかしながら、レビューを通して、課題を通して、錯覚の崩壊を日々経験している。 引き続き"錯覚"を壊して、本当の知識へと近づいていきたい。そういう勇気を持ち続けていきたい。 ポッドキャストで言っていた内容のごく一部の感想をまとめた。 ぜひ1時間フルで聞いていただきたい。

January 2, 2022 · 1 min · Katataku

野球部とシステム開発

仕事選びに悩むあなたに向けて 野球部 部活動で野球部に入部したとする。 求められるものはたくさんある。 選手として練習をしないといけない。 監督は戦術を考え、マネージャーは練習試合の日程調整も必要だ。 選手について詳しく見てみよう。 ピッチャーとして投球の練習をしないといけない。 バッターとして素振りも必要だ。 また、アスリートとして筋トレやランニングも必要だ。 筋トレといっても、ベンチプレスも必要だし、スクワットもやらないとね。 システム開発 開発会社に就職したとする。 求められるものはたくさんある。 エンジニアとして開発しないといけない。 リーダーはリソースを管理し、マネージャーはプロジェクトのスケジュール調整も必要だ。 エンジニアについて詳しく見てみよう。 フロントエンドのモダンなフレームワークを学ばなければならない。 バックエンドのクラウドサービスの知識も必要だ。 また、エンジニアとしてコンピュータサイエンスの知識やヒューマンスキルも必要だ。 コンピュータサイエンスといっても、データ構造も必要だし、アルゴリズムも必要だ。 共通点 野球部の目標は大会で勝つこと。 同じ野球部員でも役職やポジションによって求められる能力も違えば、練習時間の使い方も違う。 システム開発の目標は利益を出すこと。 システム開発でも役職やポジションによって求められる能力も違えば、業務時間の使い方も違う。 エンジニアの学習について SIerでマネジメントスキルを磨くこと、これは野球部では監督の仕事をしていることとと同じ。 競技プログラミングの勉強をすること、これはベンチプレスで胸の筋肉を鍛えることと同じ。 大学でコンピュータサイエンスを学ぶこと、これはランニングで体力をつけることと同じ。 勉強会に参加して知識を得ること、これはテレビで野球観戦することと同じ。 仕事選びについて あなたは、選手としてピッチャーをやりたいのですか。 マネージャーとして練習試合のスケジュール調整をしたいのですか。 今の時間の使い方で、選手として活躍できますか。まずはボールに、触りませんか。

July 5, 2021 · 1 min · Katataku