無料・無償ほど高いものは無いという基本原則

何故オープンソースソフトウェアを使わないか」で書かれている通り、フリーソフトウェア・オープンソースソフトウェアは「無保証・サポート無し」が一般的となっています。「オープンソース化は品質を保証するものではない | スラド オープンソース」で述べられているように、「意図しないバグが発見されずに存在し続ける=顕在化していないバグが存在している」という可能性は高く

昨日まで問題なく動作していたのに、今日から正常に動作しなくなった

ということが起こり得るわけです。故にバグが発覚したとしても「早急な対処をしてくれる保証はないこと=リスク」を踏まえた上で使うのがフリーソフトウェア・オープンソースソフトウェアというものです。

実例を挙げれば予約状況カレンダーというフリーソフトCGIで、登録したデータが突然消えて無くなるという事象が発生しています。ソースコードをサッと斜め読みしてみると、ファイルの入出力でエラー処理がなされていないことがわかります。
ソースコードをじっくりと読むと、予約状況を表示する毎に古いデータを削除するルーチンが走っています。しかも古いデータの有る無しに関わらず、常にファイルを上書き更新するようなルーチンです。結果、意図しない状況が発生しても、エラー処理がなされていないので、空っぽのデータで上書きしている可能性が高いです。
サイトを見るとわかりますが、SSI(Server Side Includes)でエラーが発生しており、またソフトウェアの変更履歴が2004年2月(14年前)で止まっていることからも、サポートは期待できないでしょう。

お客様の予算が無いから仕方なく...

という理由でフリーソフトウェア・オープンソースソフトウェアを提案し、受注に至るケースは少なくありません。でも、技術者サイドとして「売りやすいものを売る」ことが本当に営業の仕事なんだろうか?と常々疑問に思っています。

  • 安価で品質が低いものをお客様に売る
  • 高価で品質が高いものをお客様に売る

前者の方が労力が少なくて受注に繋がりやすく、後者の方が労力が高いわりに受注に繋がらないケースは多いでしょう。結果を出すことを求められる営業の世界では、前者が間違いとは言い切れませんが、安価で品質が低いものをお客様に納品したとして、お客様が満足出来るかは別の話...。オープンソースCMSでWordPressのシェアは圧倒的な高さを誇りますが、「使いにくい」という声も少なくありません。一度お客様の期待を裏切ったら、次の仕事に繋がるかどうかは自明の理...。

やっぱり安いものは安いなりだな(安物買いの銭失い)

自分のケースですが、商品のグレードが松竹梅とあった場合、梅を選んで後悔することが多かったので、今は無理してでも松を選択するようにしています。クルマとか、クルマとか、クルマとか。あとはパソコンとかもね(笑)。安価なわりに良いものってそんなに無いですよ。世の中そんな自分に都合良く出来てませんて。