megamouthの葬列

長い旅路の終わり

お前らの正義の話をしよう

大手ECサイトをスクレイピングするプログラムをClaudeCodeに書いてもらいました。とても便利なので公開したいのですが、友人のプログラマに相談すると「叩かれるからやめておけ」と忠告されました。AIも同意見のようです。正直、基準も理由もよくわかりません。なぜ私はこのプログラムを公開してはいけないんでしょうか?

「叩かれるからやめておけ」というのは、正しい忠告だし、君の為を思って言ってくれた言葉だと感じる。君が公開したスクレイパー付きシステムが何をするものかは知らないが、そのプログラムのインパクトが強ければ強いほど、「『技術者倫理』のない奴は…」というポストは間違いなく現れるだろう。ただし、そういったポストが、本当に正しい理由から発せられているかは、少し怪しいと僕は思っている。

最初に一つだけはっきりさせておきたい。これから僕がする話は、法律の話でも、利用規約の話でもない。技術者倫理の話だ。

そして面倒なことに、「技術者倫理」という言葉には二つの側面がある。一つは、タイムラインで振り回される棍棒としての「倫理」。もう一つは、技術者が社会に対して負う、静かで重い約束としての倫理。この二つは同じ言葉を使っているが、中身はまるで違う。今日はその違いの話をしようと思う。

まず、棍棒のほうから片付けよう。


君を叩く人間には、だいたい三種類いる。

一番声が大きいのは「利用規約に違反してるからダメなんですー」という奴だ。こいつは何も考えていない。利用規約という文字列が存在し、それに違反しているという事実だけで、自分が正義の側に立てると思っている。利用規約がそもそも法律的に有効なのか、とか、利用規約に規定がない場面でどうなるのか、といったややこしい問題については黙ることで賢い人間を装ってるだけだ。そして、一番最初に石を投げるのはいつもこのタイプで、インターネットというのは考えなしの人間が一番速く発言できるようにできているから、こいつの声がタイムラインの主旋律になる。

次に来るのは「BANされても知らんぞ」という奴。こいつは少し賢い。倫理とか正義とか、そういう面倒な話に踏み込むのを意図的に避けている。彼が言っているのは純粋に実利的な警告で、要するに「スクレイピングみたいな脆弱な基盤に依存したシステムを作ると、ある日突然全部壊れるぞ」ということだ。正直に言えば、僕の判断基準もこっちに近い。公式のAPIがないものに依存したシステムは、動作する保証がない。だが、それは倫理の問題じゃなくて、ただの設計の問題だ。

そして三番目に、ほとんど表に出てこないが、一番まともな判断をしている奴がいる。こいつは対象によって態度を変える。Amazonが検索エンジンのクローラーに対して許している範囲の行動には目をつぶるが、robots.txtすら設定されていない個人サイトの絵を学習用にクロールするのはアウトだと考えたりする。つまり「力の非対称性」を見ている。巨大プラットフォームと個人の絵描きでは、データを取られることの意味がまるで違う。こいつの判断には、規約とも実利とも違う、ある種の勘のようなものが働いている。

皮肉なことに、この三番目の奴が一番「技術者倫理」に近い場所にいるのだが、声は一番小さいし、上手く論理を重ねないと言ってる意味が伝わらない。場合によっては、印象によって言うことをコロコロ変えてるだけの幼稚なガキだとさえ思われている。慎重さはインターネットでは愚鈍と見なされるからだ。


さておき、タイムラインで叩かれる様を見てると、叩いている側には確固たる理屈があるように見えるかもしれない。何しろ彼らはAI以前からシステムを作ってきたベテランだから、「技術者倫理」についても明確なイメージを持っているに違いない、と君は思うだろう。

まず、僕が君に伝えたいのはここだ。彼らは本当に「倫理的」なのか?

僕自身のことを正直に言おう。僕はスクレイピング機能のあるシステムを作ったことはない。依頼されても何か適当な理由をつけて断ってきた。でもそれは、倫理的な信念があるからじゃない。APIがないものに依存すると、ある日突然システムが壊れるからだ。
その恐怖が先にあって、結果として「たまたま倫理的に無難な振る舞い(スクレイピングが許される行為かそうでないかに関わらずしない)」をしているだけだ。おそらく多くの技術者がそうだと思う。倫理を意識して守っているんじゃなくて、工学的な合理性の副産物として、倫理的に無難に見える行動を取っている。BANされたくないから規約を守る。不安定な依存先が怖いからスクレイピングしない。だけど、それは倫理じゃない。ただの保身だ。

技術者コミュニティがどういう「倫理観」を持っているかについて、少し昔の話をさせてくれ。

2005年頃、「はまちちゃん」というハンドルネームのハッカーがいた。mixiのCSRF脆弱性を突いて、踏んだ人のプロフィールに勝手に「ぼくはまちちゃん!」と書き込ませる仕掛けをばらまいた。ユーザーの意図しない操作を強制するプログラムを、不特定多数にばらまいたのだ。

その時、Web系の技術者コミュニティがどう反応したか、君は知っているかい?

「けしからん」じゃなかったんだ。「天才かよ」だった。

「実害はなかった、ただの悪戯だ」という建前で、ほとんど誰も咎めなかった。法的にもグレーゾーンで、立件すらされていない。だが、ユーザーの意図しない操作を強制するプログラムをばらまくことが「倫理的」かと問われれば、答えは明らかだろう。

XSSやCSRFの脆弱性を見つけて突くことが、知的なゲームとして消費されていた時代だった。セキュリティホールを見つけること自体が一種の娯楽で、技術者たちはそれを明らかに「おもしろがって」いた。もちろん、当時から真剣にセキュリティ倫理に取り組んでいた人間はいた。IPAの脆弱性届出制度はまさにそういう人たちの努力で整備されたものだ。だが、コミュニティの空気を作っていたのは彼らではなかったし、はまちちゃんの行動を倫理的な問題として真剣に受け止めていた人間はごく少数派だった。

今は違う。脆弱性を見つけたハッカーがやるべきことは明確に決まっている。2026年の今、大手サイトではまちちゃんと同じことをやったら、少なくとも非難はされるだろう。

これは、あの愉快犯たちがすっかり成熟して倫理に目覚めた結果だろうか?僕は多分、違うと思っている。脆弱性を突く遊びが、オタクの知的ゲームではなく、マジもんの犯罪者の飯の種(あるいは守る側の飯の種)になったから、そういった力の誇示が幼稚に見えるようになっただけなんだと思っている。

つまりこういうことだ。技術者コミュニティの「倫理」の歴史を振り返ると、おもしろがる、飽きてやめる、安全圏から説教する、という三段階を経ている。どの段階にも、本物の倫理的自覚はない。あるのは、その時々の状況に対するリアクションだけだ。

そういう連中が、今、AIでスクレイパーを書いた君に向かって「技術者倫理がない」と言っている。自分も含めたお前ら技術者コミュニティの正義なんてものはその程度のものでしかない。


じゃあ、技術者倫理なんて嘘っぱちなのか? 先輩風を吹かせるための道具にすぎないのか?

そうじゃない。ここは大事なところだから、ちゃんと聞いてほしい。

技術者倫理というのは、「やったらBANされるからやめよう」とか「利用規約に書いてあるからダメ」とか、そういう話とは全然別のレイヤーにあるものなんだ。タイムラインで棍棒として振り回されている「倫理」とは、似ても似つかない。

医者のことを考えてみてくれ。医者が患者を殺さないのは、逮捕されるからじゃない。医学という「力」を社会から行使することを許されている代わりに、その力を悪用しません、と約束しているからだ。それは法律よりも前にある契約で、社会と専門家の間の信頼関係そのものだ。

技術者倫理も同じ構造をしている。僕たちはコンピューターを使って、普通の人には見えないものを見ることができるし、普通の人にはできないことができる。HTMLの裏側を覗けるし、APIを叩けるし、データベースの構造を推測できる。それは一種の「力」だ。技術者倫理というのは、その力を社会に対して不当に行使しません、という約束のことだ。BANされるから守るんじゃなくて、その約束があるから社会が僕たちに力の行使を許している。順序が逆なんだよ。

で、ここからが君の話だ。

君はプログラマじゃない。AIに頼んでスクレイパーを書いてもらった。それ自体は別に構わない。問題は、君がその「力」を手に入れた経路だ。

自動車に喩えるとわかりやすいかもしれない。免許を取るために教習所に通うと、車の運転技術だけじゃなく、交通法規や安全確認の方法を学ぶ。それは「この危険な機械を社会の中で使うためのルール」を叩き込まれるということだ。運転がうまくなることと、ルールを知ることは、本来セットになっている。

ところがAIは、免許なしで車のキーを渡してくれる。ClaudeCodeに「スクレイパー書いて」と頼めば、動くコードが出てくる。そのコードがどういう力を持っていて、相手のサーバーに何をしているのか、なぜそれが問題になりうるのか、サービス提供側がどういう論理で動いているのか。そういうことを知らないまま、エンジンだけが手に入る。

君に欠けているのは、そもそも倫理ではない。もっと手前の話だ。何しろ自分が何を動かしているのかを知らないんだ。無免許でアクセルを踏んでいるのと同じだ。そして、無免許の人間に交通倫理を説いても、あんまり意味がない。まずはそもそも車がどう動いていて、なぜ人を轢くのかを理解するのが先だ。


その事を理解した後にすることについて、僕の提案はこうだ。

君を叩いている連中のことは、あんまり気にしなくていい。彼らの多くは、自分がなぜ「倫理的」に振る舞っているのかを自覚していない。保身と実利と先輩風が混ざったものを「正義」と呼んでいるだけだ。かつてセキュリティホールをおもしろがって、犯罪者が来たら逃げて、今は安全な場所から石を投げている。

だが、技術者倫理そのものを舐めてかかるのは、やめたほうがいい。それは先輩風とは関係なく、力を持つ者が社会に対して負う、重い約束だ。君もAIを通じてその力を手にした以上、社会と約束をしなくてはならない。免許を取っていないことは、交通法規に従わなくていい理由にはならない。

技術者倫理の講義は、放送大学にある。別に放送大学じゃなくてもいいんだが、とにかく、誰かが体系的にまとめてくれたものを一度は読んでおいたほうがいいと僕は思う。タイムラインから投げられる手斧からは何も学べないが、教科書からは学べることがある。

君のスクレイパーを公開するかどうかは、その後で自分で決めればいい。と僕は思う。