kb84tkhrのブログ

何を書こうか考え中です あ、あと組織とは関係ないってやつです 個人的なやつ

数学なんて勉強してなんの役に立つの、って話とか

三角関数虚数がどれほど世の中の役に立っているかとかいう話はしない
なんの役に立つの、って言ってる人自身はなんにもしなくたって
誰かが三角関数を役に立ててくれてるから気づかないし
真に受けて勉強してもその人が三角関数を役立てられる仕事をするとも限らない
実際一生三角関数なんか使わないかもしれないし

そういうのでなにをやっているのかっていうとね
数学や英語や理科や社会を勉強しながら
「わからないものをわかるようにする」技術を身につけるっていうことだよ

学校を出た後だって勉強はしなければいけなくて
それは教科書なんか用意されてなかったりするかもしれない
答えなんかないことの方が多い

いきなりそういう環境で勉強するのは大変だから
学校では先生とか教科書とかいろいろ環境を整えて
初心者向けに勉強のやり方を教えてくれているわけ

国語はちょっと別格なところがある
そもそも国語ができないと考えることすらできないから

でも実は数学だってそう
数学的な考え方っていうものがあるから
でもそれには必ずしも三角関数ができないといけないっていうわけでもない
そういう意味では論理が大事
三段論法とかそういうの
独立させれば論理学っていうことになるけど
こっそり国語とかに入れてしまってもいいと思う
あるいは哲学かもしれない

そういう話で言うと最近話題のプログラミングの教育も、
プログラミング的考え方を身につける、ってことが重視されているはず
別にプログラマーを大量に育成しようってわけじゃない
Scratchで勉強するかPythonを覚えるかなんてのは些細な話

プログラマーになるわけでもないのになんでプログラミングを学ぶのか?
プログラミングってのはコンピュータを動かすだけのものではないんだよね
レシピとか手順メモとかだって立派なプログラム
運動会の進め方を書いた紙も「プログラム」っていうよね
ものごとを確実に実行するための手順を作る、ってこと
もっとざっくり言えば段取り力をつけるってことだよ

そういう意味では、学校でやるプログラミングの勉強は
手続き型言語がいいと思うね
関数型になると考え方的には数学に寄っていくから

レシピはプログラムだ、って書いたけど
違って見えるものが実は同じだった、っていうのはすなわち
抽象化できることに気づいたってこと
抽象化っていうのは勉強で身につけられる能力のうちでも多分最強クラスの能力
数学とかプログラミングは抽象化に気づく能力を上げるのに最適な分野

算数はできないと困るレベルのことを身につけるっていう面もあってちょっと違う
それそのものが目的になってる面が強い
でもそれだって「訓練して何かを身につける」ということを学ぶと捉えることができる
身につけるには繰り返し練習するとか、失敗したところを集中して練習するとか
そういうのだってスキル
こっちは「できないものをできるようにする」スキルっていう言い方になるかな

理科や社会なら調べてわかるという要素が増えるし
調べるというのもまた「わからないものをわかるようにする」ために必要なスキル

わからないものをわかるようにしたり、できないことをできるようになったり
するための方法を身につけるところが学校なんだ、って思ったら
三角関数覚えてなんの役に立つの?」ってならないと思う

勉強する、じゃなくて勉強の目的を考えたり勉強のやり方を考えたりするように
一段上あるいはひとまわり外側からものを考えるっていうのはメタっていう
(ちょっと適当すぎるけど見逃して)
メタ化も最強クラスの能力
抽象化とメタ化、ふたつ揃えるとこうかはばつぐんだ!

ただメタ化はこれこれの科目を勉強すれば、って感じがあまりしない
ゲーデルでもやる?
正攻法はやっぱり哲学だろうか

教育するってだけじゃなくて、教育する人を育成するっていうのもメタかな
教育心理学の本はまだ読みかけだけど
放送大学でやってるってことは学校の先生も勉強してるはずなんだよな
Twitterとかで目につくのは掛け算の順序だとかばっかりだけど
きっと全体を見れば学校自体もよくなってきているはず
ファクトフルネスのひともきっとそう言うはずだ(読んでないけど
掛け算の順序を強制されるのは嫌だけど
掛け算の順序について子供たちが話し合う、とかだったらいいと思うよ
結論はださなくていいから

オチはないよ