我々は、ソースは必ずしもすべての利用者の手元にある必要は無いと考えている。その理由の1つに、
ソースの公開により同種のソフトウェアを開発するプロジェクト(例えばワープロソフトやグラフィックツールなど)
が簡単に立ち上がってしまうことがあげられる。
似たようなソフトを開発するプロジェクトがあることによってお互いの競争力が増し、
切磋琢磨することにより互いに良いソフトウェアを開発できると普通なら考えてしまう。
しかし、これはパワーオブバランスの考えと同じで、互いの開発力やプロジェクトのコミュニティ人口が等しい時にのみ現れる現象であって、
何らかの理由で開発力に差がついてしまうと、開発力が高い方のプロジェクトが大きくなって行き、
開発力の低い方はだんだんとプロジェクト崩壊へと向かって減衰していく。(ここで言う開発力とはその他のさまざまな要因を含む)
また、競争する上で必ず互いの機能を取りこみあうという現象が起きるのは避けられないだろう。
これでは、なんのためにソースを公開しているのかが分からない、はっきり言って「コミュニティの能力を無駄に消費している」としか考えられない。
我々はこれを解消するために、ソースの公開はプロジェクトリーダを含む一部の開発者だけとすることにした。
これにより得られる利点が幾つかある。
ソースを公開することによって、誰でも手を加えられると言うことは、逆を言えばバージョン管理が非常に困難になるということである。
A「この機能を追加したことによってこっちに影響が出たけど、俺はこの機能しか使わないから別にいいや」
B「しょうがない俺がパッチを当てるか」
:
以下この繰り返しで、プログラムがその場限りの修正でとても読めるものでは無くなってしまう。私が、Gnu の DOS である FreeDOS の日本語化
を行っている事は有名な話しであるが、そのソース中でも行き当たりの修正が多数行われているのが見られた。
このような修正は結局無駄にソースが長くなり、最終的には個人ですべてを管理するのは不可能なぐらいの物に仕上がってしまう。
本当に綺麗なソース(しっかり分割されているソース)というのはプログラムの一部を修正してもその影響が他にでることはない。
これは日本の、人口がアメリカに比べて少ないということに帰するのだが、とにかくコミュニティ人口が少ないのでアメリカのように幾つも プロジェクトを立ち上げるという暴挙にはでれないのである。 はっきり言って同種のプロジェクトを立ち上げてもコミュニティ人口が増えず、 簡単にプロジェクトが崩壊してしまう。あなたにプロジェクトを立ち上げる意欲と力があるのなら、 総プロジェクトリーダに相談して欲しい。あなたの力を無駄にはしないことを約束しよう。
さて、ここまで色々と利点を言ってきたがもちろん悪いところが無いわけではない。 以下にそれをあげてみる。
はっきり言ってプロジェクトが1つだけであるということは、選択肢がまったく無いということである。 まぁプロジェクト外のプログラムがあるソフトウェアもあるが、基本的にプロジェクト内のプログラムしか利用できない。 そこで私は、できる限りユーザが細かい設定をできるように各プロジェクトリーダに指示している。