アカウント名:
パスワード:
バイナリがまるで別物だとしても、ファイル名偽って配布できるじゃない。
それは「混入」じゃないような気がします。偽装とか、そういう別のレベルでの問題点でしょう(これはこれで別に対処が要るでしょう)。だから、
混入にソースの有無は関係なさげ。
と言うよりも、ソースが公開されているからこそ「混入」が有り得る、と考えたほうが良いように思います。
公開されたソースがあって、ビルドができる。だからこそ容易に、元のソフトの100%の機能を持っていて、さらに+αの何かの機能を「混入」できることになる。まぁ、バイナリレベルで何某かの機能を「混入」できる人もそれなりに居るだろうけど、まぁ、ソースがあったほうが楽(レベルが下がる)なのは確かでしょう。そして、スクラッチから元のソフトをマネするソフトを書き起こし、さらに何かの目的を持った+αを混ぜ込むのは手間だよね。元のソフトが複雑だったり高機能、多機能だったりすればするほど、その難易度は上がっちゃう。
# ソース公開の是非は論議しても無駄ぽい
私は、問題とするべきはソースの公開の是非ではなく、公開されたソースコードの正当性(と言うか、悪いものが混じっていないか。健全かどうか)をどうやって確保するのか、という点だと思いますね。或いは、その「成果物」の健全性をどうやって担保するのか、と言い換えたほうが良いかもしれません。忘れてしまいがちですが、ユーザーから見ればソースコードは「成果物」ではないのですから。
レビューをする人が全部のソースを読むことは可能なのかどうか。プロジェクトに参加している人、パッチを投げる人が全員「善人」であるということを保証することはできるのかどうか。できないなら、じゃぁ、それに対する対処はどうするのか。仰るように、
ウイルスチェックに引っかかるコードなら、バイナリのほうが発見は早い。
ソースレベルで見つけられないならバイナリの動きで見つけようというのもひとつの対処法でしょうし、ソースレベルでのチェックに手間暇を掛けよう(チェック済みコードと未チェックコードが平行して公開されたりするのかな?)というのもひとつの手段かもしれませんし、対処できないからソースの公開を止める(公開したほうがプログラムの健全性が上がるのなら公開したほうが良いのでしょうが…)というのもひとつの見識なのではないかと思います。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日本発のオープンソースソフトウェアは42件 -- ある官僚
ソースコード (スコア:0)
Re: (スコア:0)
バイナリがまるで別物だとしても、
ファイル名偽って配布できるじゃない。
混入にソースの有無は関係なさげ。
発見の速さは、
ウイルスチェックに引っかかるコードなら、
バイナリのほうが発見は早い。
未知のコードならソース差分の検証ができる方が早い。
# ソース公開の是非は論議しても無駄ぽい
Re:ソースコード (スコア:0)
それは「混入」じゃないような気がします。
偽装とか、そういう別のレベルでの問題点でしょう(これはこれで別に対処が要るでしょう)。
だから、
と言うよりも、ソースが公開されているからこそ「混入」が有り得る、と考えたほうが良いように思います。
公開されたソースがあって、ビルドができる。
だからこそ容易に、元のソフトの100%の機能を持っていて、さらに+αの何かの機能を「混入」できることになる。
まぁ、バイナリレベルで何某かの機能を「混入」できる人もそれなりに居るだろうけど、まぁ、ソースがあったほうが楽(レベルが下がる)なのは確かでしょう。
そして、スクラッチから元のソフトをマネするソフトを書き起こし、さらに何かの目的を持った+αを混ぜ込むのは手間だよね。
元のソフトが複雑だったり高機能、多機能だったりすればするほど、その難易度は上がっちゃう。
私は、問題とするべきはソースの公開の是非ではなく、公開されたソースコードの正当性(と言うか、悪いものが混じっていないか。健全かどうか)をどうやって確保するのか、という点だと思いますね。
或いは、その「成果物」の健全性をどうやって担保するのか、と言い換えたほうが良いかもしれません。
忘れてしまいがちですが、ユーザーから見ればソースコードは「成果物」ではないのですから。
レビューをする人が全部のソースを読むことは可能なのかどうか。
プロジェクトに参加している人、パッチを投げる人が全員「善人」であるということを保証することはできるのかどうか。
できないなら、じゃぁ、それに対する対処はどうするのか。
仰るように、
ソースレベルで見つけられないならバイナリの動きで見つけようというのもひとつの対処法でしょうし、ソースレベルでのチェックに手間暇を掛けよう(チェック済みコードと未チェックコードが平行して公開されたりするのかな?)というのもひとつの手段かもしれませんし、対処できないからソースの公開を止める(公開したほうがプログラムの健全性が上がるのなら公開したほうが良いのでしょうが…)というのもひとつの見識なのではないかと思います。