来年のこと

を言うと鬼が笑うとよく言われるが、bashi さんのところから戻ってきたあと shuya-a さんが「来年の4月までに SICP が終わらなかったらどうするの?」と訊いてきたのでなにかと思ったら、来年の4月までに終わらなかったら、来年の4月には新入生が入ってくるから第1章から仕切り直しでやるか、それともそのまま続きをやるか、という選択肢を考えていたらしい。自分としては当然終わるまで(とりあえず年度内は無理っぽいので目標は開始から1年)やるつもりだったのだが、来年の人のことまで考えているとはさすが shuya-a さんはスーパーバイザーの鑑。

調べてみたところ毎回6時間その場で問題解く勉強会だと30回くらいで第5章まで終わるらしい。いまの SICP 勉強会のペースだと、全部終わるの40回くらいかなあ。

これまでプログラミングをやってこなかったので1回あたり予習(本文読みながら範囲の問題解く)には6時間-8時間くらいかかっているのだが、これくらい毎回時間かけてなにかやるのは大学受験のとき以来(中学受験のときは塾に行っただけで自分で問題解かなかったし)。

自分の感覚としては、授業なり勉強会なりというのは毎回予習もしくは復習に授業の時間と同じだけの時間使うくらいが分量的にも内容的にも最適の効果がある。つまり、1.5時間の授業なら1.5時間予習するか1.5時間復習するか、もしくは予習復習合わせて1.5時間くらい。予習していけば授業が予習したことの復習になるので、予習タイプの人(たとえば自分)はがんがん予習だけしてときどき暇なとき一息ついて復習するとよい。復習タイプの人は自分がそうでないのでよく分からない。復習タイプの人つかまえて勉強の仕方訊いてみたい。

そういうわけで、いま SICP 勉強会は予習のみしかしていないけど、勉強会の時間の2倍かかっているので、少し自分の理解度が足りない感じ。食らいついていけば段々必要な時間が減るのは経験的に分かっているので、ここが踏ん張りどころと思ってがんばらないとね。額に汗してやっているうちに知らぬ間にできるようになっているのが勉強のおもしろいところ。

ちなみに自分の場合予習復習に費やす時間が本番の2倍を超えるとレベル高すぎてついていけていないくらいかな。1倍未満の授業は基本的に知識の獲得以上の効果はない。むしろ自分で本読んだ方が速かったりする。とはいえ知らないこと、見落としていたことをときどき聞けることもあるので、基本的に全て出ている人が一番できるようになる気がする。.