Revengeお気に召すまま、気の向くまま、日々の生活で気になったことをつづる自己満足日記。以前開発してたプログラムを同業他社がコピペして使っていたのをたまたま発見し、頭に来て弁護士さんに相談したときのお話しです。あたしってほんとバカある日、いつものようにお昼ごはんを食べながらニュースサイトを眺めていると、新しく競合他社がサービスを開始したというので早速チェック。出来てるなぁと感心しながら触っていたのですが、不思議なことに使えば使うほどデジャブに襲われたんですよ。どっかで見たことあるな、これ...と。「......まさかな」と思いながらおもむろにブラウザの「ソースを表示」した瞬間我が目を疑いました。フレームワークも、もちろんそれを使ったコードもほぼそのまま。ご丁寧に変数名までバッチシ同じ。十中八九コピペされてると核心しました。思わずセブンのおでん吹くかと思いましたよ。悔しいじゃないですか。表に見えるコードはJavaScript(以降JS)なので数十行~数百行程度の物です。実際にはUI考えて、フレームワークの選定して、設計して、テストして、チューニングを繰り返して、という表には出ることのない苦労の末、文字通り寝る間を惜しんで世に出したコードなわけです。このコードを書いた時の自分は、少なくとも日本には著作権という物もあるし、倫理的に競合サイトのコードをコピペして平気な顔する厚顔無恥な連中がはびこるほど、この国の民度は低くないだろうと高をくくっていたのですが、もうね、何て甘い考えだったんだろうと正直泣きそうになりました。今風に言うなら「あたしってほんとバカ」ですよ、ええもう。それと同時に、こいつは悪だ、悪魔に違いない。心に誓い、弁護士事務所の門を叩いたというわけです。「これでは相手を訴えることができません」お相手をしていただいた弁護士さんは若手なのですが、非常にやる気にあふれた方で、このためにJavaScriptの入門書を買って勉強したと聞いた時は正直ビビリました。大した金額もお支払いできないというのに、何かすんません(^^;で、状況を説明し少なくとも相手に止めさせることはできますか?というお話をしたところ、次のような結論をいただきました。́Д`)え、どうすればいいの?泣き寝入りするの?「著作物であることを証明しましょう」こちらの様子を察したのか、弁護士さんがおもむろに立ち上がり、プリントアウトした資料を持ってこられました。「これは過去にあった裁判の判例なんですが、同じようにプログラムを盗用されたというものなんです。「ええ、細かいところなんですが、例えば数字が見やすいように独特のフォーマットにして表示したとかですね、ここのところです」なるほどなるほど。明らかに他のシステムにはない、または第三者が見ても工夫していると分かる「表現」がそのまま別のシステムにあれば著作権侵害であると主張できると。逆説的に言うと、例えば変数名が同じであってもそれが「表現」かどうか判断が難しく、それが認められることは非常に難しいようです。自分のことが一番わからない?光が見えたと思ったのですが新たな壁が登場します。何を持って工夫したポイントと言うのか、その選定作業に予想以上に手間取りました。具体的な作業としては、JSを勉強されているという弁護士さんと一緒に、各プログラムのステップを1つずつ私が解説しながらどこで勝負をかけるかお話を繰り返すという物。同じエンジニアに対して説明することはあってもほぼ一般の方にコードを説明するという場は中々ありません。お互いに意思の疎通を測るのに相当苦労しました。それ以上に誰が見ても工夫したといえるポイントを探しだすのは、さらなる労力が必要でした。ここでひとつ疑問が沸くかもしれません。「自分で作ったシステムならば、どこが工夫したポイントかすぐに分かるんじゃない?」プログラムにおける表現抽出の難しさでは実際のシステムのロジックの一部をを見てみましょう。実際には色々絡み合ってるのでもっと複雑なんですが、端的に言うと次のようなものです画面上に四角形A、四角形Bがある。決定ボタンが押下された際、次のチェックを行う四角形Aの中に四角形Bが内包されてているか四角形AがBを内包しているかチェックするロジックを考えてみます。