子供に「どうして勉強しなきゃいけないの?」ときかれたら、何と答えるか?(2)

さて勉強をより具体的に,数学に置き換えてみましょう.
いくら子供でも,足し算引き算の大切さは分かるでしょう.だからそのレベルだったらこんな質問は来ないでしょう.掛け算割り算,図形(面積を求める公式とか),小数と分数,比例・反比例,100分率,速度などなど,小学生のレベルはどれも生活に密接に関わってそうです.だから質問されたら,素直に生活に困るからという答えで十分そうです.
中学になると負の数が出てきますね.それと2次方程式があって,因数分解や解の公式が出てきます.この時期には子供に高校入試のプレッシャーがのしかかってきてますね.高校入試の数学の問題はかなり難しくて,もはや親が教えてあげられるレベルでなくなりつつあります.そんなときに,「こんなことやってなんの役に立つの?」って聞かれてなんて答えましょうか?「日常生活に困るから」と自信をもっては言えなくなってきますね.
さて,これが高校になって三角関数,数列,指数・対数,ベクトル,行列,そして微分積分となったときには,仮に出来なくてもすくなくとも日常生活に困ることはほとんど無いと思います(職業によりますが).そして,このレベルになってなお,役に立つとか勉強は楽しいと強弁するのもウソ臭いかもしれません(自分は楽しいけど).さて,どうしましょう?


数学の場合でいうと,実は単純に役に立つ・立たないという以上に,論理的に考える力だとか,過去の知識や経験をもとに応用する力とか,難問を3日かけて考える根気強さとか,そういった直接的な知識以上に大切なことがたくさん身につくんじゃないかな?と思っています.そういった能力って,まさに今の自分の職業,プログラマには絶対に必要なことですよね.だからなにが言いたいかというと,勉強には「楽しい」という側面以外に「訓練」という側面もある,ということなんです.そしてこの「訓練」によって習得したものは,あとでじわじわと効いてくるんだよと.たぶん自分は子供に,そう伝えると思います.


さて,最近はJavaScriptの勉強をしています.

JavaScript

JavaScript

第Ⅰ部 コアJavaScriptを一通り読んで,理解が浅いところを読み返しているところ.なにぶん古い本なので,JavaScript 1.2とかNetscape Navigator 4とか出てくるのはちょっと勘弁して!って思いますが,それを除けば良い本ですね.オブジェクト指向言語としてのJavaScriptっていうのは,昔は難しくて理解できなかったのだけど,昨年HaskellとかC# 2.0/3.0とかNemerle(!)とかをかじったせいか,今はかなり分かるようになってきました.やっぱり分かり始めると楽しいですね.とはいえ,完全に頭の中で整理できているわけではなくて,大量の刺激的な情報が頭の中を駆け巡っている感じです.ここが一段落したら次はクライアントJavaScriptではなくて,prototype.jsJSONを攻めていくつもり.周回遅れ(何周だろう?)っぽい気がするけど気にしない.自分のペースで勉強を続けます.