DailyJS - A JavaScript blog.

Google CodeやGitHubをはじめさまざまなプロジェクトホスティングサービスが存在する現在では、オープンソースプロジェクトはとても簡単にはじめられる。ただし、そういったプロジェクトのすべてが優れた結果を残せるわけではない。大半のプロジェクトは終わらせることもできず、ただ誰にも触られることのない存在になっていく。

プログラマであれば誰しもより優れたプログラマになりたいと考えるだろう。WebにはプログラミングテクニックやTIPS、デザインパターンやアンチパターンなど、さまざまなプログラミングに関するノウハウがあり、多くのプログラマがそうしたノウハウを活用している。しかしながら、いくら努力してもいまいち自分のスキルの上達を感じられない方も少なくないだろう。

以前からよく言われていることだが、Alex Kessinger氏が7月25日(英国時間)にDailyJSに投稿したCode Pollutionという記事がそのあたりの話を端的にまとめていてわかりやすい。より優れたプログラマになる最良の方法は、既存のソースコードを読むことだ、と説明している。

他人のソースコードを読み、そこから新しいアイディアを理解する。ここから新しい視点を得ることができ、自分のプログラミングに反映できるようになる。基本的に他人のソースコードを読むという行為は苦痛を伴うことが多い。Code Pollutionではその理由としてYahoo!に在籍していたときの元上司の「すべてのプログラマが他人のプログラマの成果物を嫌悪するのは、それはお前がほかのプログラマではないからだ」という言葉を引き合いに出して説明している。

Code Pollutionでは冒頭、これ以上新しいJavaScriptライブラリのプロジェクトを作成するな、という唐突な意見を出している。新しいライブラリを作る前に、まずは既存のコードを読め、ということを主張している。最終的に普及することのない多くのOSSプロジェクトは、本当に有用なプロジェクトを探し出しにくくする原因にもなるとしており、新しいライブラリを開発するのではなく、既存のコードを読むようにした方が、誰にとっても優れた結果を生むという主張だ。

プログラミングスキルに関する話題のひとつに、「他人のコードが読めるのはすごいプログラマ」「他人が読めるソースコードを書けるのはもっとすごいプログラマ」と言われることがある。Code Pollutionではこの話題を、新しい視点を得ることからのプログラミングスキルの向上、不要なプロジェクトを量産しないことからの優れたプロジェクトへたどり着きやすくすること、などの理由を付加して説明しており興味深い。