8.ガバナンス
先に挙げた記事の中で、Forrester ResearchのアナリストJeffrey Hammond氏は、「ITマネージャやIT担当役員の40%が、自分の会社でオープンソースソフトウェアを使っていると述べている」としている。計算してみれば、ガバナンスが必要であることがわかるはずだ。これらの数字は、開発者たちは上司が承認していないオープンソースソフトウェアを使っているということを示している。
オープンソースソフトウェアの入手は容易なため、開発者は会社の監督を受けずに簡単に導入することができる。これは個々の開発者にとってはよいことかもしれないが、他の人にとっては、必ずしもそうではない。例えば、技術サポートがない、保証がないといった問題は、管理上の心配のごく一部に過ぎない。潜在的な問題にどんなものがあるか知りたければ、Andrew Till氏の記事「9 ways to avoid open source pitfalls」を読むといい。組織にはオープンソースプログラムの推奨・管理を行う戦略が必要だ。
9.クラウドコンピューティング
クラウドコンピューティングとは、ソフトウェアとストレージをインターネット越しに必要なだけ提供するサービスのことを指す。エンドユーザー側のローカルシステムには、コンポーネントは存在しない。クラウドネットワークでは、ユーザーが必要とするものはすべてクラウドサーバ側に置かれており、ウェブブラウザやウェブサービスを使ってどこからでもビジネスアプリケーションにアクセスできる。
米国標準技術局(NIST)は、クラウドについて「クラウドコンピューティングは、管理の手間やサービスプロバイダとのやりとりを最小限に抑えつつ、素早く供給・リリースすることのできる、設定可能なコンピューティング資源(例:ネットワーク、サーバ、ストレージ、アプリケーション、サービス)の共有プールに対して、便利でオンデマンドなネットワークアクセスを可能にするモデルである」と定義している。
多くの人は、クラウドとオープンソースに何の関係があるのかと思うだろう。実は、多くのクラウドアプリケーションは、オープンソースプログラムだ。ただし、クラウドはソフトウェアを配布しているのではなく、サービスとしてのソフトウェアを提供している。
10.General Public License(GPL)
フリーソフトウェアにライセンスを設定する理由は何だろうか。それは、ライセンスによって、次のような権利をユーザーに対して保証できるからだ。
- コードをいつでも利用できる。
- コードを誰にでも(同様のライセンス上の制限を課した上で)再配布できる。
- そのコードに基づくカスタムアプリケーション(派生制作物)を作成でき、その派生制作物のオープンソースコードを(やはり同様のライセンス上の制限を課した上で)再配布できる。
おかげで、仮にオープンソースコードの元の作者がソースコードの配布をやめたとしても、他の人は配布を続けることができる。ライセンスはまた、コントリビューターの小競り合いを解決する役にも立つ。あなたは自由に貢献することができるが、他の人もあなたが貢献したものを、いつでも自由に配布することができる。あなたは貢献したものに関して権利を主張したり、撤回したりすることはできない。この種のライセンスには、協調作業を守る働きがある。
オープンソースはユーザーのためのものだと思っている人もいるだろうが、そうではない。多くのプログラマーは、これ以外の方法はないと思っている。ソースコードを書いたら、その運命はコミュニティーに委ねるのだ。オープンソース製品のプログラマーたちは、多くの収益戦略を使って、評判を得ながら生計を立てることができている。これは、ともすれば独占的になりがちな業界に食い込むための、興味深く革新的な方法だ。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。