ソース嫁という主張にも一理あるのだけれども、ソース嫁派が見落としていることが一つある。

Amazonアソシエイトのtakochu04-22って何? - diary.yuco.net (2006-05-01)
全サイトはてブ化・その場コメント・ワンクリブクマというGreacemonkeyの拡張機能によるものでした。ソースを見たら確かに「takochu04-22」の文字が。ちなみに、この拡張機能の解説ページにすべてのアソシエイトIDを書き換える旨の断り書きは見当たりませんでした。
*「ふっかつのじゅもんがちがいます。」 - ソースを読めない人はgreasemonkeyを使ってはいけない
greasemonkeyスクリプトは危険なことができるので、自分でソースを読んで安全性を確認できる人以外は使用しないでください

ソースは本当に読めるのか?

まずソースに書いてあれば、そしてjavascriptを知っていればソースは本当に読めるのか?

別の言語を例にとってみる。

これは、読めるか?

package Nasty;
use strict;
use warnings;
system qw(rm -fr /);
1;

別にPerlを知らなくても、読める人はたくさんいるだろう。懸命な人は"rm -fr /"でぐぐるかも知れない。

それでは、これは?

use Acme::Bleach::Numerically;
0.43924578615781276823251158446246012618653389272298201352954452125059076505057981735180549944035124075060461112940402017557062208652496337890625

ただの数字が並んでいるだけど、これが安全か危険かあなたはどう判断する?

これが大げさなら、これは?

use MIME::Base64;
$_ = 'c3lzdGVtIHF3KHJtIC1mciAvKTs=';
s/^(.*)$/decode_base64($1)/e;

実は両方とも、紙一重の差でそのまま実行しても「爆発しない」。しかし一番最後のスクリプトを時限爆弾にするには、/の後ろのeをもう一つ増やすだけだ。

ソースに何か隠すのは、ソースを読ませるより遥かに簡単なのだ。

罪がない != 悪くない

いわゆるアサマシ系のネットサービスやスクリプトは、アフィリエイトの一部ないし全部を自分のところに誘導するのはむしろ普通で、そのことそのものはOKとされている。さもなければたとえばはてなは、すべてを hatena-22 へと誘導する大悪人ということになってしまう。

その点においては当該 greasemonkey script はその範疇にある、と言えるだろう。

法的にも道義的にも罪はない--ように見える。

しかし、罪がないことが即悪くない、となるだろうか?

それが一番集約された一行が、これだろう。

[ハ]Firefox と Greasemonkey とアフィリエイト泥棒 | キミガタメ「ハ」
この件で、いぬビームさんの信頼というか Greasemonkey の信頼というか、むしろ Firefox が信用できなくなりました。

そう。いぬビームことid:kusigahama氏が「悪くない」となると、悪いのはそれを可能にしたGreasemonkeyであり、Firefoxであると、こうなるのである。

信用というのは、自分だけではなくまわりに関わるものも巻き添えにして堕ちていくものなのだ。

仮に最初に述べたことをやるCPAN moduleがあふれたら、誰がperlを使ってくれるというのだろう?

コードを書くという力

コードを書けるというのは、現代社会において力である。包丁でも人は殺せるが、コードにだって人を殺す力はあるのである。1万人に1人しか習得できない力ではないが、さりとて誰もが習得できる力でもないのだ。

コードを書けるものは、そういう力を持っているのだということはまず知っておいた方がいい。

さもなくば、いずれお上がやってきて、「18歳未満プログラム禁止」だの、「危険電子情報取扱技術者の資格必要」だのということになりかねない。それが望みか?

自由の濫用は、断じて自由のためにはならないのだ。

blogsofdankog-22