未来のいつか/hyoshiokの日記

hyoshiokの日々思うことをあれやこれや

学び方を学ぶ

釣りの仕方を教えてもらうという機会は人生においてそうそうあるものではない。老子曰く「授人以魚 不如授人以漁」。魚を与えるのではなく、釣りの仕方を教える。ということらしい。*1

新卒は、研修でいろいろな釣りの仕方を教わっている最中かと思う。新人ゆえの特権だ。中途入社の人間は基本的には放置というのが世の常だろう。釣り方は既に身につけているという前提で雇用されているのだからしょうがない。

よく考えてみると例えばDebugの方法とか誰かに教わったかというと多くの人は見よう見まねでどうにか自分のスタイルを確立していったのではないだろうか。いまでこそ、テストの方法とか、ソースコードの読み方のような書籍があるけど、そのようなものは例外的な存在のような気がする。

IT業界のような変化の激しい業界では、2年前には影も形もなかった技術がぽっとでてきて業界を席巻しているようにみえる。そして、そのようなものは当然学校では誰も教えてくれなかったし、そもそも学問分野としてそのようなものは存在しなかったというようなことがいっぱいある。

常に新しいことを何らかの形で学んでいく事が運命づけられているのがIT産業なのかもしれない。

達人プログラマの教えに従えば毎年新しいプログラミング言語を学ぶ必要がある。技術にキャッチアップするためには必須である。というようなことを言われると、なんとなくそうだよなーと思ったりする。言語を知っているのと使いこなせるというのはまるっきり別物ではあるが、一応構文と文法ぐらいは押さえておきたいと思うのが人情である。典型的なミーハープログラマの思考回路である。

そんなとき、わたしの方法論と言えば、適当な教科書を買って、それを読む、時にはサンプルプログラムを写経(ひたすら手で打つ)して実行し動作を確認する。という極めてアナログ(?)かつ古典的な方法である。必ずしも効率的とは言えないが、いい参考書にめぐり逢えれば、それなりに、その分野の全体像を把握できたかと思う。そして初学者向けの定番の教科書と言うのが必ずあったのである。

プログラミング言語というのは、そのようにして学んでいた。教科書から入るというメソッドである。

先日、はやりの言語とそのライブラリについて学ぼうと思いたち、会社の達人に聞いてみた。hogehoge勉強するのにいい教科書ないっすかね。どーやって学んだんすかね?みたいなことを聞いた。わたしの期待値としてはオライリーあたりに定番の教科書があって、それを読めばいいかな。英語版しかないとしても、まあ、翻訳待つより、原著でも一発読んでみるか(というくらいのテンションではあった)。

その達人の答えは、インターネットから学びました。hogehogeサイトに情報全部載ってますから、としらっと言われて、できれば紙の教科書がと思っていたわたしの望みが脆くも崩壊する。

まあ、言われるまでもないのであるが、最先端とまで言わなくても、まだ普及間近の技術については書籍を刊行するという手間暇コストがかかる方法よりも、ウェブに公開して日々更新する方がアジャイルで、しかも正しい情報が広く流通する。書籍という媒体には、様々なメリットはもちろんあるが、リーディングエッジな技術においてはメリットデメリットを考えると、ちょっとウェブに対抗するのは難しい。

ライブラリとかパッケージの実装が0.xxというまだ発展途上にあるようなものは尚更である。

その道の達人になるには、書籍どころかインターネットの情報ですら十分じゃない時期からいろいろあれやこれやして、自分なりに情報発信をして、場合によっては雑誌に記事を書いたり、あるいは、書籍を執筆することによって、混沌としたものを体系付けていく、その過程においてさらに自分の経験を深めて行くというプロセスがパターンなのではないかと思った。

もう、10年以上前の話ではあるが、Oracle 8の開発にいたときに、日本語で入門書を書いたり、ウェブで公開していたモジラの解剖の記事を雑誌に執筆したりしたのは、そのようなメソッドをはからずも実践していたということになる。

若い技術者に、自分の扱っている技術についてウェブで情報発信したり、勉強会で発表したりあるいは書籍の執筆を勧めているのはそのようなことにもよる。

なにを今更と言われるかもしれないが、古いやり方に自分自身が拘泥されていたということを恥ずかしながら気がついたという次第である。

まあ、そんなことを思いながら、学び方を学ぶというのは重要だと、その学び方も時代に合わせて微調整をしておかないと、環境に適応できないということを再認識した。

先日参加した飲み会という名の勉強会で、会社の若手エンジニアから、いろいろなカンファレンスの出張聞いたのであるが、その一つにQconで井庭崇さんの『自律的な学びのデザインと誘発』がすごいという話を聞いた。*2

そこで紹介されていたのが、学習パターンである。これはすごい。絵もかわいい。
http://learningpatterns.sfc.keio.ac.jp/index.html
ふむふむと頷きながら読んでしまった。

勉強会パターンを開発せねばと思った。