Судебный процесс Oracle против Google продолжается уже более десяти лет. Теперь Верховный суд близок к вынесению окончательного вердикта, и индустрия программного обеспечения, похоже, наконец-то осознала опасность того, что ИТ-решения будут вынесены в пользу Oracle.
Oracle подала в суд на Google за использование Java в системе Android. Сага длинная и продолжительная, и вы можете прочитать резюме, перечисленные в конце, если хотите узнать подробности. Основная проблема заключается в том, что Oracle утверждает, что API защищены авторским правом, и в настоящее время это текущий вердикт суда и вопрос, который Верховный суд должен был решить в последний раз.
Если вы поговорите с людьми, которые что-то знают о программном обеспечении или авторских правах, вы найдете целый ряд мнений. Эксперты в области права, похоже, согласны с тем, что API защищены авторским правом. Люди, занимающиеся программным обеспечением, которые знают, что такое API, в основном думают, что это безумие, и если это так, то после 2020 года индустрия программного обеспечения будет совсем другой.
Проще говоря, API-это спецификация для набора функций, которые вы можете вызвать, чтобы выполнить работу. Например, класс Java String имеет метод с именем length и его сигнатурой является:
публичная длина int()
В пакете строк Java вы найдете код, который реализует поиск длины строки, и это является объектом авторского права. Поэтому, если вы хотите иметь свой собственный класс string, вы, вероятно, захотите повторно реализовать метод length без повторного использования кода в официальном пакете-и он будет иметь ту же подпись, потому что все остальное было бы безумием и привело бы к проблемам взаимодействия. Если вердикт будет вынесен в пользу Oracle, то вы не сможете этого сделать, поскольку API — интерфейсы — спецификация, а не реализация-будут подлежать авторскому праву. Поскольку API-это всего лишь спецификация для вызовов функций, если они являются авторскими правами, то быстро выходят из-под контроля. Любая функциональная спецификация, такая как BIOS или любая библиотека кода, будет защищена авторским правом на уровне спецификации, и повторная реализация будет невозможна.
Это так же серьезно, как если бы какая-то компания защитила авторское право на цикл for или оператор if. На самом деле, если какой-то тролль авторского права может найти API с методом for и if, они вполне могли бы защитить авторские права на основы программирования!
До недавнего времени казалось, что, за несколькими заметными исключениями, другие компании и организации, занимающиеся программным обеспечением, хранили молчание по этому вопросу. Возможно, было определенное удовольствие наблюдать, как Google извивается — кто знает. Теперь, похоже, пришло осознание того, что победа для Oracle-это потеря для всех них.
Первым следует упомянуть EFF, которая является одной из немногих организаций, которая ясно дала понять, что авторское право на API-интерфейсы-это плохо с самого начала проблемы:
«Фонд электронных границ (EFF) сегодня обратился в Верховный суд США с просьбой вынести решение о том, что функциональные аспекты языка программирования Java Oracle не защищены авторским правом, и даже если бы они были защищены, их использование для создания нового компьютерного кода подпадает под защиту добросовестного использования.»
Mozilla организовала группу организаций, которые поддерживают общую идею о том, что API являются бесплатными, включая Medium, Cloudera, Creative Commons, Shopify, Etsy, Reddit, OSI, Wikimedia. IBM и Microsoft также подали свои возражения против авторских прав на API.
Что еще более странно, так это то, что в случае победы Oracle у нее вполне могут возникнуть собственные проблемы с бесплатным повторным использованием API — API AWS cloud, например, который она клонировала для своих собственных облачных сервисов.
Похоже, что буквально никто не выигрывает от того, что API являются авторскими правами, кроме юристов. Проблема, по-видимому, в том, что юристы на самом деле не понимают природу программного обеспечения.