Об открытом исходном коде и самодостаточном развитии сообществ

поместите свой открытый исходный код под лицензию AGPL

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

Большинство статей, которые я читал на эту тему, вообще ни о чём. Многие комментаторы пытаются заново изобрести своего рода “свободное программное обеспечение, но с обязательными взносами” или “свободное программное обеспечение, но некоммерческое”. Это наивно и неправильно. Если вы накладываете ограничения, это по определению не является уже свободным программным обеспечением.

Проблема не в открытом исходном коде или свободном программном обеспечении. Проблема во всём остальном.

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

Мы были наивны.

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

Технически победил Open Source. Политически он проиграл. Причина проста: было легче достичь консенсуса вокруг технических решений, отбрасывая политические последствия, которые считались выходящим за рамки рассмотрения или слишком трудными для согласования.

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

Даже заядлые фанаты бесплатного программного обеспечения теперь используют некоторые механизмы зависимостей и плагинов, которые жёстко запрограммированы так, чтобы смотреть только на Github. Благодаря встроенным зависимостям миллионы людей запускают код, напрямую загруженный с Github, даже не осознавая этого.

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

Плата мейнтейнеру усугубляет проблему

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

Нам следует помнить, что большая часть (если не всё) бесплатного программного обеспечения предоставляется “без какой-либо ответственности”(“as is”). И это правило должно соблюдаться. Нас не должны волновать корпорации. Если ранее не было контракта на поддержку, пусть они горят синим пламенем. Пытаться заставить корпорации платить обслуживающему персоналу — это всё равно, что пытаться заставить арендодателей платить пожарным только в том случае, если их дом горит. Или согласиться с тем, что фабрика должна давать небольшие чаевые волонтёрам, очищающим реку, которую она загрязняет.

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

Так что мы можем сделать?

В краткосрочной перспективе это очень просто. Если вы заботитесь об общественном достоянии, вам следует поставить свою работу под строгую лицензию с “авторским левом” (copyleft), такую ​​как AGPL. Таким образом, мы вернёмся к созданию того общего, что мы потеряли из-за веб-сервисов. И если кто-то когда-нибудь пожалуется, что веб-сервис сломался из-за вашего кода AGPL, отвечайте, что весь веб-сервис тоже должен находиться под AGPL.

Нас обманули, заставив думать, что лицензии BSD или MIT “более свободны”. Точно так же, как нас обманули, заставив поверить, что строительство загаживающего всё вокруг завода рядом с нашей речкой будет “полезно для экономики”. Это мошенничество. Многим неоплачиваемым или почти не оплачиваемым разработчикам вероятно было бы полезно перейти на лицензию с авторским левом. Но они используют BSD/MIT, потому что считают себя “пока не состоявшимися миллионерами от программного обеспечения”.

Нам также следует активно бороться с автоматической установкой рекурсивных зависимостей. Нет, это ненормально, и ни одна разумно спроектированная система не должна этого делать. Мы не должны доверять принадлежащему Microsoft Github’у распространение программного обеспечения. Репозиторий git — это инструмент разработки, а не механизм распространения для конечных пользователей. Это то, что Великие Древние полностью поняли, когда запускали такие проекты, как BSD, Debian или Red Hat, которые называются… “дистрибутивами”. Да, буква “D” в BSD означает “распространение”. Не случайно эти дистрибутивы очень заботятся о лицензии распространяемого ими программного обеспечения.

Избавьтесь от монополий

В долгосрочной перспективе коренными причинами большинства наших проблем являются корпорации-монополисты. Без них у нас не было бы этой дискуссии. Сейчас существует разрыв поколений. Блестящие программисты, присутствующие сейчас на рынке или в разработке свободного программного обеспечения, никогда не знали мира без Google, Facebook и Github. Их определение программного обеспечения — это “что-то, работающее в браузере”. Даже электронная почта для них является синонимом собственной системы обмена сообщениями под названием “Gmail” или “Outlook”. Они вносят свой вклад в FLOSS на Github, общаются в Slack или Discord, делятся спецификациями на Google Drive и рекламируют свой проект в Twitter/X. Зачастую у них также есть iPhone и Mac, потому что они “великолепны”. Они не могут представить себе альтернативный мир, в котором монополии не были бы повсюду. Они считают, что наличие хороших профилей на Github и Linkedin, где они работают бесплатно, — это единственная надежда избежать безработицы. Кто может их винить? Они не могут представить себе мир без монополий. Они не ищут — они “гуглят”. Они не делают покупки в Интернете — они ходят на Amazon. Они не читают книг, кроме Kindle. Они пьют не кофе, а Starbucks. Для них политика — лишь источник конфликтов, ругательное слово.

Когда они начинают осознавать, что их эксплуатируют эти всемогущие божества, они видят только один способ сделать это приемлемым: попросить через одно из этих божеств (Twitter, Facebook, LinkedIn) заплатить им. Они понимают, что в мире существует два класса программистов: те, кого эксплуатируют без оплаты, и те, кому платят за эксплуатацию. Немного или даже в некоторых случаях неплохо. И так будет до тех пор, пока власть держат в своих руках всего несколько человек.

AGPLploum

Пожилые люди, такие как я, должны научить их тому, что существует множество альтернатив. Мы можем жить без Google, Facebook, Microsoft, Apple, Amazon. Мы можем писать код, который не размещается на Github, который не запускается на сервере Amazon и который не отображается в браузере Google. Мы также должны настаивать на том, что любая технология по своей сути есть политика. Что невозможно понять технологию, не понимая людей. И невозможно понять людей, не разбираясь в политике. Любой ваш выбор влияет на мир.

На рубеже веков сообщество свободного программного обеспечения было сосредоточено на борьбе с монополией Microsoft. Мы даже объединили усилия с Google и Apple, чтобы бороться с Microsoft. И мы полностью потерпели неудачу. Мы сами помогли построить мир, в котором почти всё “Обмикрософчено”, “Гуглезировано” и “Айфонизировано”. Всё это стало возможным благодаря открытому исходному коду и миллионам часов бесплатной работы людей, которые внесли свой вклад в то, что мы считали “общим достоянием”.

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

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

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

Поместите свой открытый исходный код под лицензию AGPL!

©Ploum , 01 июля 2024 г.

Фото Ника Карвуниса

Оригинал: https://ploum.net/2024-07-01-opensource_sustainability.html gemini://ploum.net/2024-07-01-opensource_sustainability.gmi

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

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

Ploum

Перевод: Wandering Thinker

Этот материал лицензирован GNU Affero General Public License v3