IT業界で気づいたことをこっそり書くブログ

くすぶってるアプリエンジニアが、日々気づいたことを適当に綴っていきます(受託→ベンチャー→フリー→大企業→ベンチャー→起業)

目的のための必要最小限の知識(効率的に学ぶためには)

anond.hatelabo.jp

 

例えばgitは、すべてを知らずとも業務で使えます。
世界中のgit利用者の中で、真に理解してる人は極わずかだと思います。

 

gitに限らず、様々な知識というのは、書籍などで体系的にまとめられていることが多いです。しかし実はそれらを利用するだけなら、もっと少ない知識で良いはずです。むしろ、きちんと体系立てられた知識の方が扱いづらくなります。

 

数学の教科書を読むより、問題集を解いていったほうが理解が進んだことはないでしょうか。問題集によって、具体的に必要な知識が絞られることで、取っ掛かりがつかめるわけです。

 

このような現象は日常でたくさん起きているのに、それに気づかないことって多いですよね。あるいは、気づいていてもどれが必要な知識かがわからないですよね。
なので、目的のために必要最小限の知識は何か、というのはもっと議論されていいと思っています。

 

例えば今、漫画を描きたいと思ったとします。眼の前には漫画を描くための道具がたくさんあります。それの使い方を一つ一つ勉強していっても、漫画を描き始めることが中々出来ません。体系的な知識と、手続き的な知識はかなり別物です。
それに、体系的な知識では失敗するかもしれません。
手続きを実行するために必要な知識セットが{A,C,F,α}だとして、今A~Zまで載った本を読んだとします。でももちろん、αの知識が足りないから描けません。
必要なのは、まず自分の目的に必要な知識セットが{A,C,F,α}だということです。そして次に、それらを学べる術を調べることです。

そもそも大事なのは道具より中身なはずですので、できれば手続きの学習に時間は割きたくありません。
こういう時に、必要最小限の知識は何かがわかれば手っ取り早いはずです。

 

ITベンチャーやITサービス開発ではこういった事が多々発生します。
膨大な事柄を覚えなければなりませんが、実際に使うのは極僅かです。
だから必要最小限の知識を探す必要が出てきます。

 

そして現にITエンジニアなどはそれをやっています。
必要な知識だけピンポイントで検索して、それを自分のプログラムに適用する作業を繰り返しています。それでいい、というかそれしかできません。(体系的に全部覚えられる秀才を除いて)

 

ですが、最も躓くのは初心者の頃です。
初心者だから、必要最小限の知識を見つける術すら持ちません。それで途方に暮れて体系的な知識を得ようとして、結果立ち止まってしまいます。

 

今以上に必要最小限の知識に対して、誰でもキャッチアップできる仕組みが必要だと思います。私たちにはすべてを覚えるだけの時間がないんです。