そもそもオープンソースとは?
オープンソースについて理解する
エンジニアが知っておくべき知識のひとつが「オープンソース」についての知識です。IT系の専門用語としてエンジニアがよく耳にする言葉かもしれませんが、その意味について深く理解していないという人もいるでしょう。では、オープンソースとはそもそもどのようなものなのでしょうか。
オープンソースソフトウェアとは
プログラムを実行するためにはソースコードが必要です。 プログラムのソースコードをエンジニアが見れば、そのプログラムがどのような構造でどのように動くのかを読み解くことができます。オープンソースソフトウェアとは、ソースコードが公開されているソフトウェアのことです。オープンソースソフトウェアなら、ソフトウェアの改変、複製、独自のプログラムの組み込みなどを行うのも自由です。かつては、企業などが開発したソフトウェアのソースコードは競合に真似されないよう非公開とするのが一般的でした。非公開になっているソースコードは「クローズドソース」と呼ばれています。クローズドソースソフトウェアは、ライセンスを購入した個人や企業のみが使用可能なソフトウェアのことです。
オープンソースの本当の意味
ソースコードが公開されているソフトウェアであればオープンソースと呼ぶことはできますが、本当の意味でのオープンソースにはクリアすべきいくつかの条件があります。Open Source Initiative(OSI)という団体は、オープンソースについての定義を定めています。定義のポイントは、誰もが自由にソースコードを利用し、利用者がソフトウェアの機能を追加したり不具合を修正したりして再頒布することです。つまり、ただ単にソースコードを公開しているだけのソフトウェアではなく、利用者によって品質をアップグレードさせていくソフトウェアが本当の意味でのオープンソースということなのです。ソフトウェア開発による利益は、クローズドソースソフトウェアライセンスの販売からオープンソースソフトウェアを基盤とした柔軟性あるサービス開発に移行しています。ソフトウェアの改変を誰もができるようになったことでソフトウェアの性能に上限がなくなり、クローズドソースソフトウェアではできなかったことができるようになりました。
クローズドソースソフトウェアの場合、非公開にすることでソフトウェアの価値を高めるというビジネスモデルでした。これに対し、オープンソースソフトウェアはできる限り多くの人に使用してもらうことを良しとするビジネスモデルです。顧客のニーズに即した付加価値を盛り込んだサービス開発を可能にしたのが、オープンソースソフトウェアの特徴です。