囲碁というよりギターでは?

プログラマーの生産性の差について、囲碁とマージャンに喩えてます。
http://d.hatena.ne.jp/keisukefukuda/20080116/p1

これはこれで一理あると思うんだけど、ちょっと分かりにくいかも。

プログラミングの学習と能力と意欲の関係でいうと、
僕は「ギター」に近いような気がします。

(1)Fが出来ない人は、その先に進めないで挫折する人。

(2)Fでコード弾きのできる人は、ノリさえあればとりあえずどんな曲でも弾いて歌えちゃうので、何とかなる人。これが上のブログでいう「麻雀だと思っている人」

(3)「囲碁」はというと、H.P.とか、アルペジオとか基本的なテクニックは全部ちゃんとできて、きちんとソロも弾けて、自分の音を聞きながら演奏できる人。コードとかスケールとかの理解もある。心で分かっているならべつに楽譜は見れなくてもいい。ジミヘンみたいに。

別に(2)でも(3)でも「ギター弾けます」って言っちゃっていいと思うんだよね。「麻雀」君も「囲碁」君も「プログラミングできます」って言ってるのと同じで。
一方、音楽もセンスの問題だから、(2)でも十分人を感動させることは出来るし、(3)でも感動させられるとは限らない。その点はプログラミングとはちょっと違うかもね。それで食っていけるかどうか、っていうことについても、音楽とプログラミングは似てない。

ただ、「楽器を演奏して、聞いたとおりの音を出すテクニック」ということに限って言うと、(2)で満足して練習しないでいると、(3)になることは絶対ないよね。

あくまで「楽器の習得」っていうところと「プログラミング技術の習得」っていうところでは似たものがあるかなあ、という話でした。

いかがでしょう?