Re: 仕事とSICP

http://d.hatena.ne.jp/lethevert/20070610/p1
私は仕事の開発チームの技術力向上の取り組みというのを去年から行っているのだけれど、そこで途中からSICPをテキストで使うようにしている。
なぜ、SICPを選んだかというと、意外かもしれないけれど、即効性が高くて、すぐに仕事に反映できそうだと思ったからだ。選定の際に考えていたのは次のようなことだった。

  • 経験では身につかないプログラミングの深みに触れられること
  • テーマが根元的で普遍的であること
  • 難解ではないこと
  • 実践的であること
  • 効き目が早いこと
  • 効果が持続すること

これらの要素を考えると、SICPをおいて他のテキストではなかなかよい本は見つからない。はっきりいって、中級レベルのプログラマに対するSICPの破壊力は抜群ではないかと思う。
とはいえ、SICPは独学するには結構きつい本だろうとは思う。電車の中でぱらぱら読みながら読了してしまうタイプの人は教育なんか不要なタイプなので除外すると、中級レベルのプログラマにとってはプログラミングパラダイムが違いすぎるせいで、文意を理解するだけで四苦八苦して挫折してしまうのではないかと思う。
なので、輪講のような形式ではなく、演習中心のワークショップ形式で、小人数のチームに1人SICPをよく理解しているプログラマが付いているというのがもっとも効果的な体制ではないかと思う。
また、相当の分量があるので、期間は長くとって、間隔はあまりあけずに、短い時間のワークショップを継続的に開催しつづけるのが重要だと思う。日常業務のルーチンの中に、ワークショップの時間を埋め込んでしまうくらいがよいのではないか。始業の顔合せ後に毎日30分間とか。