感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

情熱プログラマー「一番の下手くそでいよう」に思うこと。

<スポンサーリンク>

多くのIT関係者は読んでいるかもしれないけれど、「情熱プログラマー」という有名な本がある。

どの項も示唆に富むこの本の中でも、特にプログラマの心を打つのが、1章の4、「一番の下手くそでいよう」という章だ。

内容を要約すると、こんな感じになる。

人はどんな仲間と一緒にやるかで腕を上げることもあれば落とすこともある
その上、ある集団との長い付き合いが、その後もずっと人の能力に影響を与えることがある。

伝説のジャズ・ギタリストPat Methenyが若いミュージシャンたちにアドバイスするときの決まり文句がある。

「どんなバンドを演るときも、一番下手なプレイヤーでいろ」

僕はジャズとブルースのサックス奏者をしていた。
バンドの中で一番下手くそというのは、いつも自分より優れた人達と一緒に演奏するという意味だ。
バンドの中で一番下手くそな存在でいると、不思議なことが起こる。

いつの間にか周りに溶け込めるようになっていることだ。
憧れのミュージシャンに溶け込める理由は、僕自身の演奏が彼らの演奏みたいに変化していったからだ。
人間の本能としてプログラムされている集団心理で、集団の習慣などを採り入れようとするものがある。

その習性のおかげで、プログラマとしても、チームで一番下手くそでいることで、どういうわけか自分自身が賢くなるんだ。
話し方や書き方さえ以前より知的になる。
自分の生み出すコードや設計が以前よりエレガントになり、難しい問題をますます創造的なソリューションで解決できるようになる。

そもそも、下手くそだと思える集団に「誘われた」という時点で、自分はそんなにひどいものではない。
そして、一番下手くそになろうと努めたところで、本当にそうはならないものだ。

情熱プログラマー ソフトウェア開発者の幸せな生き方

情熱プログラマー ソフトウェア開発者の幸せな生き方

先日「ブログで色々公開したら、恥をかいたけどすごく勉強になった。」という記事を書いた。
中にはちょっとしたプログラムも添えた。

すると、なんと、id:otchy210 さんがコードを添削してくださった。
「ブログで色々公開したら、恥をかいたけどすごく勉強になった。」の添削

こんなに親切にしていただけることはめったにないと思うけれど、ものすごく嬉しかった。

・・・この場でもう一度お礼を言わせてください。

id:otchy210 さん、本当にありがとうございました!!
丁寧にコメントまでつけてくださり、1行1行が勉強になりました!
今も別ブラウザで開いたまま、何度も読み返しています。

拝見させていただいたとき、俺の「動くだけのコード」と全然違って、愕然としました。
ここまでしっかり気を使って、生成コストのこともちゃんと考えて、無駄を省きつつ必要な処理を入れる。
そして、日々ブラウザ上の処理の高速化しているんだな、と。

わかる人が見れば、「こんな基本的なこともわからんのかこのアホ!」と言われるかもしれません。
ですが、「コードを誰かに見てもらう」という経験がない自分にとっては、大げさなことを言うわけじゃなく、本当に嬉しかったです。

ありがとうございました。

★ ★ ★

ここでしみじみと考えてしまうことは・・・、普段からコードレビューやアドバイスしてもらえるような環境にいる人がやっぱり羨ましいなぁ、と。
たぶん世の中には、otchy210さんのような人と一緒に仕事をしている人もいるわけで、そういう人は普段から"業務で"、コードを書いて、ダメ出し(リファクタリング?)してもらえるハズで。

それが純粋に羨ましい。

もちろん今の自分の仕事も嫌いではないし、すぐに辞めたいということはない。
ただ・・・コードを書きやすい環境ではない(笑)

調整ごとにけっこう時間がかかってしまうし、
あえて思い切ったことを言ってしまうと、業務中にコードを書いていたら、やることがない暇な人と思われるような環境だ。
Webの人は想像できないかもしれないけれど、SI勤務の人はもしかしたらこの環境を想像できるかもしれないですね・・・(笑)

なので、去年かおととしの終わりくらいからずっと、仕事が終わったら夜な夜な家で勉強して、その過程をブログに綴るような毎日を過ごしている。
言うならば、試合にも出ずに一人で素振りしているような状態だ。

俺は、世の中を知らない。

環境に言い訳してはならないと自分に言い聞かせ、土日や仕事後の時間を全て費やせばなんとかなるんじゃないか、という淡い希望を持っていた。
社会人といえど、土日はけっこう遊んでるように見えるし、そこで頑張ればその分経験値が上がるんじゃないかと。

その心構えを断固として実践すべく、たまたま彼女ができたときも、基本的に色々と言い訳しながらまともにデートもせずに、勉強を続けた。

そのせいか、いつの間にか音信不通になったことは、ここ数年、一度や二度ではない。
じゃあお前はなぜ彼女を作ったのかと言われると、

「ムシャクシャしてやった。後悔はしていない」

という犯罪者のような回答になってしまう。後悔はしていない。たぶん。

でもやっぱり、天才でもない俺が素振りをひたすら繰り返したところで、戦場で戦っている人に追い付けないんじゃないかとうっすらと感じ始めている。

むしろ、時間が経つごとにどんどん差をつけられているような、差をつけられていることにも気付かないような、そんな焦りをいつも感じている。

そんな焦りを抱きつつも、今の仕事を「辞めたいか」といわれると、そうではない。
上司がとても信頼のできる立派な人だから。
この人が偉くなるまでチームに貢献したいし、力になりたいと思っている。

でも、、、今の環境で「力になる」ということが、「技術力を高める」ということと、必ずしも直結しないのはやっぱり少し歯がゆい(技術力を高める意味はもちろんある)

色々と葛藤しつつも、今も机に向かって勉強している。
ちなみに、彼女はいない。

そして今、自分はあくまで「今の自分の立場」での悩みを吐露しているわけだけれど、もしかしたら普段からコードを書いているような人だって、何か自分には想像できない悩みを抱えているのかもしれない。

ドラゴン桜で、桜木という先生がこう言っていた。

「人はいつでも結局、悩み続けるものなんだ」

みんな、もしかしたらそれぞれ、他人には見えない悩みを抱えながら毎日頑張っているのかもしれない。
俺だって、ブログにこんなこと書いてるけど友達に話したことなんてないもんね(笑)

頑張っていれば、いつか悩まなくなる日は来るんだろうか。