kenju's blog

About Programming and Mathematics

"Teach Yourself Programming in Ten Years" と技術との付き合い方

http://norvig.com/21-days.html

"Teach Yourself Programming in Ten Years" というエッセイがある。Peter Norvig という America のエンジニアが書いたエッセイで、界隈では有名だったらしい。ひょんなことからこの存在を知った。

So go ahead and buy that Java/Ruby/Javascript/PHP book; you'll probably get some use out of it. But you won't change your life, or your real overall expertise as a programmer in 24 hours or 21 days. How about working hard to continually improve over 24 months? Well, now you're starting to get somewhere...

最近、技術との付き合い方を考えることが多かった。自分は好きなものを見つけたら、他のものを忘れてとことん追求してしまうたちなので、自分はそれで楽しいのだけれど、プライベートや仕事上のタスクの優先度などを考慮して振る舞わないといけない場面も多い。そんな中で自分の知的好奇心を失わずに賢く振る舞いたい、そのために限られた時間をなにに、どう工夫して割くか、と考えることが多かった。

結局、数時間や数日で習得できる知識って、長くても2,3 年で陳腐化してしまうし、1,2 回くらいしか役に立たない。確かに、新しいことを学び続ける楽しさはある。しかし、単純な記憶ゲームになってしまうと、人生の消耗でしかないし、そこに知的創造性はない。

であるから、本質的な、普遍的な知の探求というのは、10 年スパンで進んでいくものといっても過言ではない。10 年後の世界は、どうなっているだろうか。全く想像はつかないけれど、少なくとも一言語の一過性のある技術やフレームワークとか、今広く使われているサービスとかが残っている可能性は限りなく近いと思う。RubyAWS はまだまだ生き残っているかもしれないけど、今日の姿とは全く違うだろう。

表面的な知識を習得するだけで満足している人生もつまらないし、エンジニアとしての伸び代もストップ高だろう。

週末に技術書を整理しながら、つれづれとそんなことを考えていた。有意義な週末だ。