2011年5月28日土曜日

バグ放置が犯罪とな? 由々しき問題である

高木さんの日記にて、ウイルス罪法案、バグ放置が提供罪に該当する事態は「ある」と法務省見解という記事が公開されている。一部引用:
情報技術に疎い方々からすれば、プログラムといえばワープロのような、商用のソフトウェアばかりだと思えるのかもしれないが、そうではない。フリーソフトウェアのように、「as is」で、すべて利用者の責任で使うことを条件に、自由なソフトウェア開発と自由な流通を促進することによって、これまでソフトウェアが発展してきた歴史的経緯がある。法務省はそのことを理解しているのか、この答弁のままでは、疑われるのではないか。
僭越ながら補足を...

現実は フリーソフトウェアがソフトウェア産業を支えている、と言っても良い。人間が書いたソースコードをコンピュータが理解できる形式に翻訳するコンパイラはフリーソフトウェアであることが多いし、みんながこうして読んでいるWeb画面を生成しているサーバの多くもフリーソフトウェアで支えられていることがほとんどだと思って良い。

試しにGNU Compilierが利用許諾契約として採用しているGPLの一部を抜粋すると

15. Disclaimer of Warranty.THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
Webサーバによく使われているApacheサーバのライセンスには
7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any 
と、「as is」がでてくる。「あるがまま」という意味である。つまり、これらフリーソフトウェアは「出荷状態において品質や性能で問題が含まれる可能性もあるが、使用する側の責任でなんとかしてね。(ソースは開示されているんだからさ)」という条件に合意しないと使うことができない。


「問題があるかもしれないがお前の責任だ」などという条件の元では恐ろしくて使えない、と考えるのであればあなたは高木さんが叩いている議員さんやお役人と似た様な思考回路を持っている可能性がある。そもそもあるプログラムコード一式の中に「バグがない」と保証するのは並大抵の労力ではできないのである。「検査もプログラムでやったら?」と思う人がいるかも知れない。でも、その検査プログラムにバグがないと誰が保証するのであろうか。つまるところ、ソフトウェアなんてのは人がプログラムコードを書いて、それをテストするコードも人が書くしかない。


すなわち、ソフトウェアとは人間の作業の集大成なのであり、人間が完璧でない以上、プログラムコードのどこかにバグが入り込むことを完全に排除することなど無理なのである。検査を徹底することで相当な部分を検知し、対処することは可能かもしれないが、そのための作業時間・費用は膨大なものになろう。(それでも「バグがない」と保証するのは不可能かもしれない。) 結果、できあがるソフトウェアは高価なものとなり、私達の暮らす世界は今とは異なる姿となるかもしれない。パソコンやiPhoneが数百万円するとか、電子制御装置を搭載したカローラが何億円もするとか、Webサーバを設置できる企業は世界に数社しかいなくて、それを閲覧するのは金持ちの道楽になるとか。


フリーソフトウェアは「as is」という条件を利用者に強いることで、出荷までの敷居を限り無く低くすることができた。より多くの人が利用し、利用する上で見つかる問題点が開発者達にフィードバックされることで、ソフトウェアの品質や性能が向上してきた。出荷の敷居を下げることでソフトウェア価格は下がり、低価格路線を維持できた。結果として、より多くの人達がソフトウェアの恩恵を受け取れた。このような背景でコンパイラやWebサーバ等が育ってきたからこそ、我々は様々なソフトウェアやサービスを安く(あるいは無料で)利用することができるようになったのである。


その過去を一切否定するような「バグ放置は犯罪」などと主張する政治家には去ってもらいたいし、「バグ放置を犯罪」とするような立法の動きには強く警戒する必要がある。


注: ここでいうフリーソフトウェアとはFSFの言ってるフリーソフトウェアのこと。

0 件のコメント:

コメントを投稿