APIは著作権の対象となるべきではない
2014年12月16日
先月、Electronic Frontier Foundation (EFF)は米国最高裁判所にアミカス・ブリーフを提出し、API(アプリケーション・プログラミング・インターフェース)を著作権の対象と認めた下級裁判所の判決を見直すよう求めています。私は、エイベルソン&サスマン、アーホー&ウルマン、ジョシュ・ブロック、フレッド・ブルックス、ヴィント・サーフ、ピーター・ドイッチュ、ミッチ・カポア、アラン・ケイ、ブライアン・カーニハン、バーバラ・リスコフ、グイド・ヴァン・ロッサム、ブルース・シュナイアー、ケン・トンプソンなど、ブリーフに署名した77人のソフトウェア専門家の1人です(そのような錚々たるメンバーの中に名を連ねていることに畏敬の念を感じています)。

原告はオラクルで、被告はGoogleです。オラクルはJava APIについて著作権を有しており、GoogleがAndroidを構築する際にこれらのAPIを侵害したと主張しています。このブリーフにおける私の支持は、これらの2つの巨大テクノロジー企業間の紛争の詳細とは無関係であり、知的財産法がソフトウェア、特にソフトウェアインターフェースにどのように適用されるべきかという問題にすべて関係しています。
ソフトウェアの何もかもが知的財産ではないと主張する考え方には賛同していません。ソフトウェア特許は本質的に破綻していると考えていますが、著作権はソフトウェア開発者が自分の努力の成果についてある程度の管理権を持つための有効なメカニズムです。
ソフトウェアは常に、簡単に複製できるため、収益源として扱いが難しいものでした。著作権は、少なくとも一部の複製を制御するための法的根拠を提供します。このようなものがないと、何かを作り出すために働きながら住宅ローンを支払うことは非常に困難になります。私たちは皆無料のものが好きですが、人々が自分の仕事から生活を立てる機会を与えることは公平だと思います。
しかし、いかなる知的財産制度も、過剰な知的財産制限が、発明の拡大や創造作品の再考など、さらなるイノベーションを妨げる危険性とこの利益をバランスさせる必要があります。その結果、特許および著作権制度には何らかの制限が組み込まれています。1つの制限は時間的なものです。特許と著作権は期限切れになります(ただし、ミッキーマウスの不連続性がそれを脅かしています)。
インターフェースは、物事がどのように連携するかを示すものです。物理的な世界の例としては、レンズ交換式カメラがあります。多くのカメラメーカーは、他の企業が自社のカメラ用のレンズを作ることを奨励していませんが、そのようなサードパーティ企業はインターフェースの動作をリバースエンジニアリングして、カメラに取り付けることができるレンズを製造できます。私たちは、サードパーティの部品供給業者でこれによく見られます。これらのサードパーティは、低コストと主要企業がサポートしていない機能を提供することで大きな役割を果たしています。私は、キヤノンが(当時)18〜200mmのレンズを作っていなかったため、キヤノンカメラにシグマレンズを使用していました。また、より安価なため、カメラ用のサードパーティ製のバッテリーを購入しました。同様に、コスト削減やニーズに合ったオーディオシステムを入手するために、サードパーティ製の部品で車を修理しました。
ソフトウェアインターフェースもほぼ同じであり、オープンインターフェースを拡張したり、インターフェースをリバースエンジニアリングしたりする能力は、ソフトウェアシステムの発展に大きな役割を果たしてきました。オープンインターフェースは、インターネットの発展を可能にする上で重要な役割を果たしました。誰もHTTPサーバーを構築したり、HTTPサーバーに接続したりするために著作権ライセンスを支払う必要はありません。Unixスタイルのオペレーティングシステムの成長は、AT&TのUnixのソースコードの大部分は著作権で保護されていましたが、インターフェースは保護されていなかったという事実に大きく依存していました。これにより、BSDやLinuxなどの派生製品がUnixのインターフェースに従うことができ、これにより、Unixの上に構築されたプログラムが新しい実装とより簡単にやり取りできるようになり、これらのオープンソースシステムが普及するのに役立ちました。
SMBとSambaの物語は、著作権の対象とならないAPIが競争を促進した方法の良い例です。Windowsが支配的なデスクトップオペレーティングシステムになると、そのSMBプロトコルは単純なネットワークを支配しました。Windows以外のコンピューターが支配的なWindowsプラットフォームと効果的に通信するには、SMBと通信する必要がありました。Microsoftは、SMBとの通信できないことは競合他社にとって障壁であるため、競合他社がこれを行うためのドキュメントを提供しませんでした。しかし、Andrew TridgellはSMBの仕様を推測し、Sambaと呼ばれるUnix用の実装を構築することができました。Sambaを使用することで、Windows以外のコンピューターはネットワーク上で共同作業できるようになり、MacとLinuxベースのシステムからの競争が促進されました。同様のことが、以前はIBM BIOSで起こりました。これは競合他社によってリバースエンジニアリングされました。
自由市場システムの力は競争から生まれます。つまり、地元のパン屋よりも安く、または美味しくパンを焼く方法を見つけたら、パン屋を開いて競争できるということです。時間が経つにつれて、私の小さなパン屋は成長し、最大のパン屋と競争できるようになります。これが機能するには、市場を構築して、市場を支配している既存のプレーヤーが、コスト削減や品質向上のためのイノベーションをもたらす新規参入者を妨げる障壁を構築できないようにすることが不可欠です。
ソフトウェアインターフェースは、ソフトウェアにおいてこの重要なポイントです。インターフェースをオープンに保つことで、より多くの機能を提供し、コストを削減するためのイノベーションを促進する、競争力のあるソフトウェアシステムの市場を促進します。これを閉鎖すると、互換性のないコンピューターシステムの島が生じ、通信できなくなります。
そのような互換性の島は、新しい競合他社にとって大きな障壁であり、その理由だけで悪いです。しかし、ユーザーにとっても悪いです。ユーザーは連携して動作するソフトウェアを高く評価し、さまざまなソフトウェアベンダーが通信に関心がない場合でも、他のプロバイダーが介入してギャップを埋めることを奨励する必要があります。システムを連携させるには、統合担当者が通信リンクを作成するためにインターフェースを安全に実装できるように、オープンインターフェースが必要です。私たちは物理的な世界で標準コネクタを高く評価しており、ソフトウェア接続はすべてを標準化するには多様すぎる場合が多いですが、著作権法を使用してさらにハードルを追加すべきではありません。
インターフェースを実装する必要性は、これよりもはるかに深いものです。プログラマーとして、私たちはしばしば仕事をするために、コードベースの外部で定義されたインターフェースを実装しなければなりません。1つのライブラリを念頭に置いて記述されたソフトウェアを別のライブラリで動作するように変更する必要があることは一般的です。これを行うための便利な方法は、アダプターを記述して、2番目のインターフェースをフォワーディングすることで、最初のライブラリのインターフェースを実装することです。インターフェースの実装はテストにおいても不可欠であり、テストダブルを作成できます。
したがって、適切にプログラムを作成する能力、ユーザーがソフトウェアを連携させることを望むこと、そして競争を促進する自由市場を社会が望むことを考えると、APIには著作権を使用すべきではありません。
補遺:最高裁判所の判決
この事件は最高裁判所に持ち込まれ、2021年4月5日、Googleに有利な判決が下されました。この判決では、APIが著作権の対象となるかどうかは扱われず、APIを再実装したGoogleの行為は適法使用であると判決されました。
上記の文書では適法使用を考慮しませんでしたが、状況を説明する効果的な方法であるように思われ、このようにAPIを扱うことで、APIの著作権化から生じる問題を回避できます。
判決の冒頭の4ページのサマリーは、議論の論理をかなり明確に説明しています。
謝辞
デレク・ハマーは、アダプターとテストのためにインターフェースを実装することがプログラミングの通常の作業であるという点を提起しました。アンディ・スロカム、ジェイソン・プフェッチャー、ジョナサン・レイエス、ジョシュ・ブロック、マイケル・バークレーは、この記事の下書きについてコメントしました。ブリーフに署名した77人のメンバーを組織化するお手伝いをしてくださったジョシュ・ブロックには特に感謝しています。
重要な改訂
2021年4月8日:補遺を追加
2014年12月16日:初版公開