OSS活用

OSSとは

OSS = オープン ソース ソフトウェア
オープンソースソフトウェア(以下、OSS)は以下の通りです。

ソースコードが利用可能で、著作権保持者がどんな目的のためでもソフトウェアを、学習、変更、そして配布するための権利を提供するというライセンスに基づいたソフトウェアである。

Wikipedia – オープンソースソフトウェア

OSSメリット

注目されるのはコストメリットだと思いますが、それ以外にも以下のようなメリットがあります。どれも魅力的なメリットです。

ソフトウェアが無料

最も注目されているOSSメリットと言えるのではないでしょうか。正確には、ソフトウェア利用におけるライセンス費用が無料という表現となります。

問題の発見/解決が行われやすい

ソフトウェアには、バグと呼ばれる不具合がつきものです。しかし、ソースコードが公開されているため、問題があった場合には世界中の開発者が問題解決に取り組みます。一般有志がバグ修正を行い、ソースコードに取り込まれるというのはよくある話です。

機能追加が可能

OSSのソフトウェアが使いにくければ、自分の使いやすいように改良することが可能です。そもそも、機能追加を行う事を前提にソフトウェアの基礎となる部分が開発されるOSSソフトウェアも多くあります。

OSSデメリット

メリットが目立つOSSですがデメリットも理解しておく必要があります。

問題発生時には自己責任

基本的には利用は自己責任です。セキュリティ的な問題を抱えている場合もあれば、そもそも動作しない場合もあります。プログラムに精通した人であれば、解決が簡単であっても、不慣れな場合には利用することすら困難な場合もあります。この点がOSSが利用されにくい一番の原因ではないでしょうか。

ドキュメントが不十分

開発者が十分なドキュメント(説明書)を準備していない場合があります。また、どうしても開発が先に行われる事が多いため、ドキュメントが準備されていたとしても、最新OSSの状況が反映されていない場合もあります。もちろん、ちゃんとしたドキュメントがある場合もあります。

これも、プログラムに精通している人であればソースコードを自ら理解し、正しい設定やカスタマイズが可能ですが、、敷居が高くなってしまう場合が多く見受けられます。

OSS例のご紹介

OSSは長い歴史があり、どれもとてもパワフルなツールと言えます。OSSについての詳細はこちらをご覧ください。

OSSを挙げるときりがありませんが、その中でも主なものをご紹介します。

CentOS(OS)

CnetOSは商用利用可能なOSSのOS(Operating System)です。

CentOSのプロジェクトは有志のボランティアにより立ち上げられた。CentOS という呼び名は、「コミュニティベースで開発された、エンタープライズクラスのオペレーティングシステム (Community ENTerprise Operating System) 」に由来する。

各社提供しているレンタルサーバ等でも使われることも多く、弊社でもCentOSを利用したサーバ運用を行っている。

Apache(webサーバ)

世界中で最もシェアのあるwebサーバ。古くからOSSとして提供されており、仕様は変わりつつも使いやすく高機能。

PHP(web系プログラミング言語)

web系プログラミングでは確固たる地位を気付いているPHPは、バージョンアップも頻繁で非常に使い勝手のいい言語。web系サービスを作成する場合も含め、無くてはならない存在。

WordPress(CMS)

複数あるコンテンツ管理システム(Contents Management System)として、コミュニティの活動も活発で、使いやすいCMS。インターネット検索などを見ても非常に多くのユーザが利用している事がわかる。カスタマイズもしやすく、豊富なプラグインも揃っているので車輪の再開発をしなくとも非常に多くの機能が揃う。

EC-Cube(ECサイトプラットフォーム)

OSSなので当然無料ではあるが、非常に高機能なECサイトプラットフォーム。クレジットカード決済機能の追加はもちろん、ネットショップをスタートする上で必要な基本機能を備えている。株式会社ロックオンが提供してくれている。

Cacti(統合監視ツール)

本来はネットワークトラフィックや、サーバ監視を行うためのツール。

Cacti is a complete network graphing solution designed to harness the power of RRDTool’s data storage and graphing functionality.

ただ、非常に拡張性が高く、数値が取れるものならばどんなデータでもグラフ化して見ることが可能。グラフ化にはRRDToolを利用しているが、ログイン機能をはじめとしたツール管理機能も充実しているため非常に使い勝手がよい。

cakePHP(PHPフレームワーク)

「設定よりも規約」という思想の元に作成されたPHPフレームワークです。日本ではとても人気が高いようです。実際に使ってみた感覚としても開発の効率化や、複数人での開発時には非常に強力です。バージョンアップも頻繁に行われ今後も発展が期待できそうなPHPフレームワークです。