Поддержка разработчиков через Google против Oracle

Верховный суд завтра услышу аргументы в против Oracle. Этот случай поднимает фундаментальный вопрос перед разработчиками программного обеспечения и сообществом разработчиков программного обеспечения с открытым исходным кодом: может ли авторское право помешать разработчикам использовать функциональные интерфейсы программного обеспечения, известные как API, для продвижения инноваций в программном обеспечении. Суд должен сказать «нет» – бесплатные и открытые API защищают инновации, конкуренцию и мобильность рабочих мест для разработчиков программного обеспечения в Америке.

Когда мы используем интерфейс, нам не нужно понимать (или заботиться) о том, как выполняется функция на другой стороне интерфейса. Просто работает. Когда вы садитесь за компьютер, клавиатура QWERTY позволяет быстро вводить слова на экран. Когда вы отправляете онлайн-платеж поставщику, вы уверены, что средства появятся на его счету. Просто работает.

В мире программного обеспечения интерфейсы между программами называются «интерфейсами прикладного программирования» или API. API-интерфейсы восходят к 1950-м годам и позволяют разработчикам писать программы, которые повторно используют другие функциональные возможности программы, не зная, как они выполняются. Если вашей программе необходимо отсортировать список, вы можете использовать API программы сортировки для сортировки списка для вашей программы. Просто работает.

Разработчики исторически использовали программные интерфейсы, свободные от авторских прав, и эта свобода ускорила инновации, взаимодействие программного обеспечения и мобильность работы разработчиков. Разработчики, использующие существующие API-интерфейсы, экономят время и силы, позволяя переориентировать эту экономию на новые идеи. Разработчики также могут повторно реализовать API-интерфейсы с одной программной платформы на другую, позволяя инновациям свободно распространяться на программные платформы.



Важно отметить, что повторное использование API-интерфейсов дает разработчикам переносимость работы, поскольку знание одного набора API-интерфейсов более применимо в разных отраслях. Предстоящий Google v. Решение Oracle может изменить это, нанеся вред разработчикам, программному обеспечению с открытым исходным кодом и всей индустрии программного обеспечения.

Google против Oracle и сделка по платформе API

Google против Oracle – это кульминация десятилетнего спора. Еще в 2010 году Oracle подала в суд на Google, утверждая, что Android от Google операционная система нарушила права Oracle на Java. Спустя десять лет спор теперь сводится к тому, было ли повторное использование Google API Java в Android нарушением авторских прав.

До этого случая почти все полагали, что авторское право не распространяется на использование функционального программного обеспечения, такого как API. Исходя из этого предположения, повторная реализация API конкурирующих платформ позволяла разработчикам создавать новые, но уже знакомые вещи в соответствии со сделкой по API: каждый мог использовать API для создания приложений и платформ, которые взаимодействуют друг с другом. Соблюдение API заставило вещи «просто работать».

Но если решение Google против Oracle указывает, что для повторной реализации API требуется разрешение авторского права, сделка разваливается. Ничто не «просто работает», если об этом не говорят производители платформ; теперь они диктуют правила взаимодействия – взимают с разработчиков огромные цены за платформу или препятствуют созданию конкурирующих совместимых платформ.

Бесплатные и открытые API необходимы современным разработчикам

Если API не являются бесплатными и открытыми, создатели платформ могут запретить конкурирующим платформам использовать совместимые API. Это отсутствие конкуренции блокирует инновации платформы и вредит разработчикам, которые не могут так легко передавать свои навыки от проекта к проекту, от работы к работе.

MySQL, популярная база данных Oracle, заново реализовала API-интерфейсы mSQL, чтобы сторонние приложения для mSQL можно было «легко перенести» на MySQL. Если бы авторские права ограничили повторную реализацию этих API, принятие MySQL, возможность повторного использования старых программ mSQL и расширение, достигаемое стеком «LAMP», были бы задушены, и вся экосистема стала бы беднее из-за этого. Этот и другие примеры повторной реализации API – IBM BIOS, Windows и WINE, UNIX и Linux, Windows и WSL, .NET и Mono – стали, пожалуй, самыми удивительными инновациями в истории человечества, когда программное обеспечение с открытым исходным кодом стало критически важной цифровой инфраструктурой для Мир.

Точно так же блокировка авторских прав на API-совместимые реализации ставит разработчиков на милость производителей платформ – как за их навыки, так и за их программы. После того, как программа написана для данного набора API, эта программа привязана к платформе, если только эти API не могут быть использованы на других программных платформах. И как только разработчик приобретает навыки использования данного API, его гораздо проще использовать повторно, чем переучивать API для другой платформы. Если создатель платформы решит взимать возмутительную плату или прекратить поддержку платформы, разработчик застрянет. Не разработчики представьте себе следующее: макет QWERTY защищен авторским правом, и владелец авторских прав решил взимать плату в размере 1000 долларов за клавиатуру. У вас будет выбор: переучить руки или заплатить.

Все программное обеспечение, используемое кем-либо, было создано разработчиками. Мы должны дать разработчикам право свободно переопределять API, поскольку возможность разработчика переносить приложения и навыки между программными экосистемами приносит пользу всем – мы все получаем лучшее программное обеспечение, чтобы делать больше.

Я надеюсь, что в решении Верховного суда будет учтено то, что показал опыт разработчиков: бесплатные и открытые API-интерфейсы способствуют свободе, конкуренции, инновациям и сотрудничеству в области технологий.