Перейти к основному контенту

Почему открытый исходный код имеет значение

Повседневная жизнь во многом зависит от программного обеспечения: от телефона в вашем кармане и домашних сервисов до приложений, которыми вы пользуетесь каждый день. Когда одна платформа контролирует эти инструменты, она получает нездоровую власть и диктует, как вам разрешено их использовать.

Свободное программное обеспечение с открытым исходным кодом возвращает эту власть туда, где она должна быть: пользователю, гарантируя, что технологии служат вам и вашему сообществу, а не корпоративным интересам.

Краткое содержание

  • Открытый исходный код означает, что базовая технология общедоступна для использования, копирования, улучшения или создания на ее основе новых продуктов кем угодно.
  • Современная цифровая жизнь обменивает вашу независимость на удобство. Свободное ПО с открытым исходным кодом — это практический путь назад, дающий вам приватность и защиту от финансовой эксплуатации.
  • Вам не нужно уметь читать код, чтобы получить выгоду. Открытость означает, что независимые эксперты могут проверить, что на самом деле делает программное обеспечение, и их внимательность защищает всех.
  • Эфириум создается открыто. Его спецификации, клиентское программное обеспечение и даже этот веб-сайт могут быть проверены и улучшены кем угодно.

Когда вещи, которые вы покупаете, перестают быть вашими

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

Это не гипотетическая ситуация.

В 2009 году компания Amazon получила доступ к устройствам Kindle своих клиентов и удаленно стерла книги, которые люди купили и за которые заплатили.[1] Совсем недавно, в 2024 году, Spotify прекратил поддержку своего устройства Car Thing и удаленно отключил устройства, купленные клиентами.[2]

Эти случаи показывают риск закрытого программного обеспечения: когда продукт зависит от кода и серверов, контролируемых одним поставщиком, этот поставщик может решать, продолжит ли продукт работать.

Открытый исходный код меняет баланс. Когда код продукта является общедоступным, а его лицензия предоставляет значимые права, люди могут проверять его, запускать, ремонтировать, адаптировать и продолжать его разработку независимо. Это тот же аргумент, который движение за право на ремонт выдвигает в отношении оборудования, примененный к программному обеспечению внутри него.

Что означает «свободный и открытый исходный код»?

Свободное программное обеспечение с открытым исходным кодом (FLOSS, также пишется как FOSS) — это программное обеспечение, исходный код которого общедоступен, чтобы любой мог его запускать, изучать, делиться им и улучшать. Представьте себе блюдо, к которому прилагается полный рецепт: вы можете проверить ингредиенты, приготовить его сами, передать другим или сделать лучше. Закрытое программное обеспечение держит рецепт и ингредиенты в секрете, поэтому одна компания решает, что туда входит, кто может это есть и узнаете ли вы об этом когда-нибудь.

Вы почти наверняка использовали программное обеспечение с открытым исходным кодом сегодня, даже не заметив этого:

  • Linux, основа каждого телефона на базе Android и большинства серверов, обеспечивающих работу посещаемых вами веб-сайтов.
  • Firefox, один из немногих крупных браузеров с собственным независимым движком.
  • Signal, приложение для обмена сообщениями, чей протокол шифрования также защищает каждое сообщение в WhatsApp.
  • VLC, медиаплеер, который открывает файлы, с которыми не справляется ничто другое.
  • LibreOffice, полноценный офисный пакет, который читает уже имеющиеся у вас документы.

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

Идея проста: если компания контролирует код, компания контролирует пользователя. Свободное программное обеспечение переворачивает эту ситуацию. Оно юридически и навсегда гарантирует, что программное обеспечение подчиняется вам. Проще говоря, оно предоставляет четыре свободы:[3]

Свободное использование

Запускайте программу так, как вы хотите, для любых целей и на ваших собственных условиях.

Изучение и модификация

Изучайте исходный код, чтобы точно понять, как работает программа, а затем изменяйте ее в соответствии с вашими потребностями.

Распространение

Передавайте другим людям точные копии программы, чтобы они тоже могли ею пользоваться.

Распространение модификаций

Выпускайте свою измененную версию, чтобы более широкое сообщество могло извлечь выгоду из ваших изменений.

Преимущества открытого исходного кода

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

Доверие, которое можно проверить

Открытый код позволяет независимым людям проверять, как работает программное обеспечение. Заявления о безопасности, приватности и доступности можно протестировать, а не принимать на веру.

Свобода уйти

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

Программное обеспечение, которое переживет своего создателя

Когда компания закрывается или меняет направление, открытый код позволяет любому желающему поддерживать проект на плаву.

Лучшие способы совместной работы

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

Право на ремонт

Устройство обычно умирает вместе со своим программным обеспечением. Обновления прекращаются, сервер отключается, и работающее оборудование превращается в мусор. Движение за право на ремонт борется с этим на законодательном уровне, требуя, чтобы купленное вами оборудование можно было отремонтировать в случае поломки; открытый исходный код — это программная половина той же борьбы. Когда код может быть прочитан и пересобран любым владельцем устройства, он переживает интерес разработчика к продаже вам следующей версии.

Свобода публикации

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

Право на форк

Если мейнтейнеры ведут проект в плохом направлении, сообщество может скопировать код и продолжить свой собственный путь. Популярные инструменты, такие как LibreOffice, Jenkins и OpenTofu, существуют потому, что сообщества воспользовались этим правом, когда корпоративные владельцы сменили курс. Форки — это защита от захвата.

Как перейти на приложения с открытым исходным кодом

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

Честно оцените компромиссы, прежде чем совершать полный переход. FLOSS и программное обеспечение, защищающее приватность, иногда жертвуют удобством ради контроля. Защита от отслеживания может иногда нарушать работу веб-сайтов с большим количеством скриптов, поиск без отслеживания может не иметь гиперлокализованных прогнозов, а карты, которые отказываются следить за вами, могут не иметь данных о пробках в реальном времени. Вы можете скачать и попробовать альтернативу с открытым исходным кодом, чтобы понять, отвечает ли она вашим потребностям, прежде чем полностью отказываться от закрытого приложения.

Приложения с открытым исходным кодом

Открытый исходный код и ИИ

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

Промпты для ИИ, которые помогут вам начать

Самое сложное при переходе — это редко само программное обеспечение: сложнее узнать, что существует, насколько оно хорошо и что делать, если что-то сломается. ИИ-ассистент закрывает большую часть этого пробела, он может прочитать код проекта и ответить простыми словами, поэтому вам не нужны навыки разработчика, чтобы проверить то, что вас беспокоит.

О чем стоит спросить. Нажмите на любую карточку, чтобы скопировать ее, а затем заполните пропуски:

Одна настройка ИИ, которую стоит изменить

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

Локальный запуск ИИ на вашем собственном компьютере

Большинство чат-ассистентов — это сервисы. Ваш промпт покидает ваше устройство, компания устанавливает правила, а доступ может быть изменен, стать платным или прекращен в любое время. Но так быть не должно.

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

Три способа начать:

Открытость за пределами кода

Задолго до появления Эфириума люди приводили эти аргументы и побеждали в них. Они написали лицензии, описанные на этой странице, выиграли судебные дела, которые сделали публикацию кода законной, и создали инструменты, на которые полагаются миллионы людей, чтобы говорить и читать без слежки. Приватность, право собственности, ремонт, свобода слова, право на чтение: Эфириум придерживается тех же обязательств, потому что он вырос из той же традиции, и организации, перечисленные ниже, — это те места, где большая часть этих позиций все еще защищается, дело за делом и инструмент за инструментом. Многое из того, что описывает эта страница, существует благодаря им. Они независимы от Эфириума и устанавливают свои собственные приоритеты, и все они заслуживают поддержки.

Организации, защищающие цифровые права

Также стоит знать:

Открытые знания

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

Почему Эфириум имеет открытый исходный код?

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

  • Правила сети реализуются несколькими независимыми командами, поэтому ни одна компания не контролирует то, что она делает.
  • Любой может запустить узел и независимо проверять сеть.
  • Исследователи и разработчики открыто обсуждают изменения протокола.
  • Участники могут улучшать код, документацию, переводы, образовательные материалы, инструменты и ресурсы сообщества.

Возможно другое будущее, в котором открытость встроена изначально, а вещи, на которые вы полагаетесь, продолжают работать на вас.

Открытость Эфириума не означает, что каждое приложение, созданное на его основе, имеет открытый исходный код, безопасно или заслуживает доверия. Вы по-прежнему должны оценивать программное обеспечение, контракты, команды и связанные с ними риски. Но сам протокол разработан таким образом, чтобы его основы можно было публично проверять и улучшать.

Проприетарное, с открытым исходным кодом и свободное программное обеспечение: в чем разница?

Слово «открытый» используется вольно, и различия имеют значение. Четыре семейства охватывают почти все, с чем вы столкнетесь:

Типичные лицензии: Вообще нет лицензии на исходный код

Реальные примеры: Windows, iOS, Photoshop

Типичные лицензии: BUSL 1.1, SSPL, многие лицензии «open core». Не одобрено OSI (открывается в новой вкладке).

Реальные примеры: Terraform, который перешел с открытой MPL 2.0 на BUSL 1.1 в августе 2023 года. Из-за этого изменения сообщество сделало форк OpenTofu.

Типичные лицензии: MIT, Apache 2.0, BSD, MPL 2.0

Реальные примеры: Лайтхаус, Рет, Бесу, Теку (Apache 2.0); Нимбус (Apache 2.0 / MIT); этот веб-сайт (MIT)

Типичные лицензии: GPL, LGPL, AGPL

Реальные примеры: Linux (GPL-2.0); Клиенты Эфириума: go-ethereum (GPL-3.0 для бинарного файла, LGPL-3.0 для его библиотек); Призм, Незермайнд, Grandine, Solidity (GPL-3.0)

Эфириум работает на копилефте, а не только на слове «открытый»

Множество проектов называют себя открытыми. Что имеет значение, так это файл лицензии, поэтому вот наш.

Самая критически важная инфраструктура Эфириума поставляется под собственными копилефт-лицензиями Free Software Foundation: go-ethereum — это GPL-3.0 с библиотеками LGPL-3.0, а Призм, Незермайнд, Grandine и компилятор Solidity — GPL-3.0, при этом Эригон находится под LGPL-3.0. Другие клиенты идут по пермиссивному пути: Лайтхаус, Рет, Бесу и Теку используют Apache 2.0.

Этот веб-сайт использует лицензию MIT, и каждое изменение на этой странице публично видно. Любой желающий может изучить исходный код (открывается в новой вкладке) или предложить изменения (открывается в новой вкладке).

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

Часто задаваемые вопросы

«Свободное программное обеспечение» и «открытый исходный код» происходят из родственных традиций. Свободное программное обеспечение делает упор на права и свободу пользователей. Открытый исходный код часто подчеркивает практические преимущества, такие как сотрудничество, надежность и лучшее программное обеспечение. На практике оба термина описывают программное обеспечение, лицензия которого предоставляет людям реальные права на его использование, изучение, изменение и распространение.

На этой странице термины используются вместе, как FLOSS, потому что различие редко меняет то, что вы можете делать с программным обеспечением перед вами.

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

Честный ответ заключается в том, что открытость необходима, но недостаточна. Серьезные ошибки годами оставались незамеченными в широко используемых открытых проектах, обычно потому, что критически важная инфраструктура поддерживалась одним или двумя неоплачиваемыми людьми. Что гарантирует открытость, так это то, что любой может посмотреть и любой может это исправить; сделает ли это достаточное количество людей, зависит от того, насколько хорошо проект финансируется и укомплектован персоналом. Это стоит проверить, прежде чем вы начнете зависеть от чего-либо, и об этом легко спросить.

Большинство моделей ИИ, описываемых как открытые, публикуют свои веса, но не данные для обучения или код, с помощью которого они были созданы. Вы можете запускать и адаптировать их; вы не можете полностью изучить или пересобрать их. Согласно определениям, изложенным на этой странице, это ближе к доступному исходному коду, чем к свободному программному обеспечению.

Это все равно большое улучшение по сравнению с закрытой альтернативой. Скачанная вами модель с открытыми весами работает без разрешения, не может быть отозвана, продолжает работать, когда стоящая за ней компания меняет направление или исчезает, и может быть независимо протестирована любым, кто хочет проверить ее поведение. Это те же самые преимущества — свобода уйти и программное обеспечение, которое переживет своего создателя, — о которых идет речь на остальной части этой страницы. Определение ИИ с открытым исходным кодом (открывается в новой вкладке) от Open Source Initiative устанавливает, что потребуется для полной открытости, и несколько моделей, таких как OLMo от AI2 и Pythia от EleutherAI, уже соответствуют ему.

Дополнительная литература

  1. Глава Amazon назвал удаление книг Оруэлла «глупым» (открывается в новой вкладке) — The New York Times (архив)
  2. Spotify официально убивает Car Thing, оставшиеся устройства больше не работают (открывается в новой вкладке) — 9to5Google
  3. Определение свободного программного обеспечения (открывается в новой вкладке) — Проект GNU

Поиск альтернатив