Два кита
Сначала небольшое введение, и да простят меня искушенные пользователи за некоторые упрощения.
Разработка свободного программного обеспечения вообще и под GNU Linux в частности стоит в настоящее время на двух китах — GNU и Linux.
- GNU устами Ричарда Столлмана пропагандирует свободное создание, изменение и выполнение программного кода, свободное ПО, юридически он выражен в лицензии GPL
- Linux, руками программистов Линус Торвальдса, создает среду, систему в которой этот свободный код выполняется.
Программировать интересно, интересно и делать что-то «за идею». Основной принцип — «С миру по нитке, голому — рубашка», каждый может в свободное время чуть-чуть посоздавать общую систему и в результате количество свободного кода все увеличивается, GNU Linuх растет и крепнет… только вот конечные пользователи до сих пор, через 30 лет после появления идей свободного ПО, в основном работают с проприетарными несвободными программами даже в андроиде, который «внутри» — вполне линукс.
В чем причина?
Три сосны
В чем причина того, что в линуксе сейчас десяток графических оболочек но ни одной рабочей свободной программы типа «Торговля и склад»?
Для этого нужно вспомнить для кого и за чей счет в настоящее время создается свободное ПО и дистрибутивы Linux.
- «Для идеи» — за счет идеологически упертых любителей свободного ПО, очарованных идеями Столлмана. Особенно много таковых среди студентов, но когда появляется жена и дети очень трудно вместо семьи тратить время на других, далеких людей, пусть даже и за идею. Путь Иова, сохранившего веру несмотря на все невзгоды не для всех, не все могут быть святыми. И создатели свободных программ «перегорают» и теряют интерес, проекты GNU-программ закрываются. Но даже если такой проект продолжает существовать, в нем обычно важнее «идейность» чем «удобство пользования», он не для обычных пользователей — для идейных. Не для всех. «Все» обычно почти сразу кричат «КАК ВЫЙТИ ИЗ ВАШЕГО VI?»
- «Для себя» — за счет любителей построить собственную песочницу — вселенную, «программирование для удовольствия» Это очень интересно — сделать свою программу или систему, так, как хочется тебе! Сам по себе этот интерес неплох, но приводит он к огромному количеству недоделанных программ и дистрибутивов Linux, к разъединению усилий. А желание сравнить свою песочницу с другими — и к гордыне и ругани на форумах, т. к. в отсутствие честного механизма сравнения, которым в обычном мире являются продажи, начинают работать субъективные, личные пристрастия и «громкость кричания». Также в этой парадигме программисты делают системы «под себя» а не «для пользователей» при этом достаточно легко делаются архитектурные вещи, но очень часты проблемы с эргономикой и начальными настройками, с дизайном и справкой. Все это позволяет сделать ядро, но не позволяет создать достаточное количество качественных и документированных программ для конечного пользователя, не позволяет обеспечить их поддержку достаточное время.
- «Для корпораций» — за счет корпораций. Да, финансирование, полученное от крупной корпорации под какой-то ее проект позволяет сделать и красивую, и вполне удобную систему. Но эта система будет сделана для корпорации-заказчика (какая уж тут свобода) и в любой момент финансирование может быть прекращено т. к. в общем случае линукс-разработки сами по себе прибыли не приносят, их, «благодаря» GPL, очень трудно продавать.
Таким образом, можно сказать что причина «застоя» в разработке свободного ПО для конечных пользователей, «для десктопа» — отсутствие связи между разработчиками СПО и конечными пользователями. Блуждая в трех соснах СПО-разработка никак не доберется до интересов пользователя, а ведь он в конечном итоге должен бы стать заказчиком разработки. Стандартный рыночный механизм — «сделал-продал» в случае с GPL не работает — как можно продать пользователям то, что можно скопировать забесплатно?
Что делать с задачей, которая не имеет решения? Переформулировать условия.
Давайте уйдем от модели «производитель — потребитель»
Как поставить пингвина на ноги
Цифровое копирование сделало возможным очень интересную вещь — можно делиться не беднея самому. Один раз сделав программу можно отдать ее кому-то и у тебя эта программа останется, так же и про графику, музыку — любые цифровые медиа. Этот принцип вступает в противоречие с законами современной торговли и появляются защищенные программы, законы о пиратстве, защита контента, навеска рекламы и прочие нелогичные и ненужные людям вещи.
Но оставим пока все цифровые медиа, поговорим только о программах под GPL. А еще — о деревенской свободе.
Я живу в деревне и, когда переехал туда, поселился на «новой» улице, где не было ни дорожного полотна, ни водопровода. Т.к. «на дворе» был кризис, ждать финансирования не приходилось, а приходилось таскать на себе воду и застревать в грязи после любого дождя. Когда мне это надоело, я кинул в окружающих идею об изменении мира. Мы с другими жителями улицы организовались, скинулись деньгами, нашли исполнителей — и в результате отсыпали дорогу и провели водопровод. Вот тогда я почувствовал себя полностью свободным человеком, который может изменять мир вокруг себя по своему желанию.
Как сделать их разработчиков свободными не только идеологически, но и финансово? Для этого нужно, чтоб пользователи могли участвовать в разработке не только багрепортами и фичреквестами, а финансово, чтоб они могли платить программистам и сборщикам-тестерам.
За что? Не за простое копирование ранее сделанной работы, нет!
Оплата должна производиться за реальную работу — за наращивание функционала. Это честная работа, результаты которой идут всем — как с той дорогой, по которой ездят далеко не только те, что оплатили ее строительство.
Большинство программ и сервисов уходит от релизной разработки к плавному роллингу, к «вечной бете» когда изменения в систему вносятся непрерывно, а работоспособность ее при этом сохраняется. Таким образом программа перестает быть чем-то неизменным, превращается в непрерывно развивающийся функционал. И каждый шаг такого развития уже вполне может быть профинансирован теми, кому это развитие функционала нужно — ИТ-специалистами и пользователями.
Добавляя к свободному программированию и свободной среде выполнения свободное финансирование изменений можно исправить слабые места СПО (допиливание и багфиксинг с эргономикой) и полностью изменить психологию создания программ.
В предлагаемой парадигме:
- покупатель-эксплуатант превращается в заказчика-инвестора, потребитель — в со-творца.
- покупка программы заменяется заказом разработки какой-то ее особенности
- защита от копирования заменяется свободным использованием ранее сделанных разработок
- привязанный к фирме программист превращается в независимого и свободно выбирающего деятельность разработчика
Почему этого не было сделано раньше? Без развитых средств коммуникации это было невозможно! Подобные системы в других областях сейчас появляются одна за другой, например сервисы такси типа Uber (яндекс-такси, такси максим) или клиенты кикстартера. В СПО-разработке такую модель использует, например, проект OpenShot
Также эта модель напоминает уже известную «грантовую» модель финансирования науки. Там ведь тоже научные результаты публикуются и доступны всем, грантами финансируются новые открытия и разработки.
Еще одна похожая модель — «совместные покупки», когда пользователи объединяются в группы на форуме и заказывают какие-то товары по оптовой цене.
Третий кит
В реальном мире можно купить готовую одежду или заказать ее «под себя» и — только для себя. Но возможности цифрового копирования позволяют или выбрать из многих вариантов сделанных до этого — «за бесплатно», или же вложиться и сделать свой — для себя и для всего благодарного человечества. В ближайшем будущем 3D принтеры позволят сделать это со многими вещами из реального мира, ведь если копирование свободно, достаточно один раз придумать!
Уже сейчас это можно сделать в разработке свободного ПО.
Важно, что в предлагаемой парадигме:
- Людям выгодно объединяться в сообщества для совместного заказа нужных им разработок. Это здорово — вместе делать что-то полезное для всех.
- Каждый может найти свое место в разработке — от кодирования и дизайна, до организации или финансирования. От каждого — по способностям.
- Участники системы получаются независимы от кредитов, корпораций, рекламных отделов и пиар-менеджеров, они напрямую, без лишних посредников ищут и находят друг друга. Уберизация — в массы!
Третьим китом, который выправит рынок свободного ПО (ну и мир изменит, как без этого) очень возможно, станет платформа, которая сведет вместе заказчиков ПО и его разработчиков, логично включив процесс заказа в процесс разработки. Тот, кто первый запустит такую платформу, доделает до логического завершения то, что начали Столлман и Линус. И заработать на этом он тоже может — вполне честно беря свой процент за функционирование этой платформы по модели Kickstarter.
Каковы требования к такой платформе?
Мне представляется, что в конце концов это будет социальная сеть направленная не на потребление контента, как сейчас, а на производство ПО. Эдакий производственный хабрахабр пополам с гитом. Сеть, объединяющая разработчиков СПО, с репутацией, просмотром истории разработок-заказов, возможностью объединять усилия и минимальной ценой транзакции по изменению кода из одного работоспособного состояния в другое.
Ради исключения дублирование возможно даже существование такой централизованной платформы исходного кода — работает же единая, но свободная википедия? Такая платформа свяжет с помощью свободного финансирования разработчиков и конечных пользователей. Как?
ИТ независимость — оплата деньгами
Возникает вопрос — а кто будет формулировать заказы на изменение СПО и оплачивать их? Ведь конечный пользователь чаще всего хочет лишь большую красную кнопку нажать и «сделать все хорошо». Кто эти люди, которым нужны изменения кода и которые готовы за них платить?
Эти люди — айтишники, администраторы и настройщики, те, кто сейчас ходят сидят за компами или ходят по городам и весям, настраивая windows (и даже иногда linux) и получая за это деньги. Сейчас они разобщены, работают во славу западных корпораций или пиратят — и никто лучше этих людей не знает потребности конечных пользователей. Если у айтишников будет возможность своими силами или деньгами изменять ПО под потребности их пользователей и делиться этими изменениями под GPL, мы получим ни много ни мало — инфраструктурное решение проблемы ИТ безопасности общества. Действительно, тогда ПО превратится не в товар, как сейчас — а в инфраструктуру типа дорог или электричества, общую для всех, собирающую общество в единое целое. При всем этом эта инфраструктура будет независима и от корпораций и от государственного финансирования, она будет дешевой за счет исключения дублирования и розничной наценки и там не будет рекламных баннеров, пропаданий кнопки «пуск» и гонки версий ради версий.
Как это все может выглядеть?
По-разному. От яркой краундфандинговой компании типа «мы — клевая команда, хотим сделать клевую прогу с такими-то фичами, нужно два лимона» (кто скажет, что у нас такое невозможно — тот не видел планету до портала типа «совместных закупок», где можно заказать или исполнить какую-то фичу в СПО. Возможная реализация такого заказа — посредством аукциона «целевого доната», когда формулируется заказ и на него уже жертвуются деньги- и чем больше денег накопится — тем нужнее этот функционал и тем выше вероятность, что его напишут.
Переход на СПО может и должен идти не волевыми решениями и принуждением «сверху», а из понимания, что это выгодно всем. Государство вполне может, как заказчик, давать гранты на какие-то, нужные ему изменения функционала — и эти изменения будут сделаны сетевым сообществом ИТ-шников, но в общем случае система будет работать и без государства, вернее — создавая государство «снизу», на уровне самоорганизации общества, эффективно, независимо, без распилов и откатов. «Для себя» — но теперь уже это понятие будет включать и конечных пользователей, а не IT-шников, как в сегодняшнем мире СПО.
Комментарии (30)
Vjatcheslav3345
04.05.2016 15:52Я однажды уже писал (https://geektimes.ru/post/274506/#comment_9186008), что государство обязанное помогать людям с ограниченными возможностями может и должно заказывать и оплачивать внесение изменений, приспосабливающих СПО к их нуждам — это соответствует законодательным нормам РФ и компании-разработчики, индивидуальные разработчики, должны пользоваться таким механизмом.
Прочие моменты, когда государство можно привлечь к разработке СПО, регулируются документами:
— Приказ Минкомсвязи России «Об утверждении Методических рекомендаций по использованию свободного программного обеспечения в деятельности федеральных органов исполнительной власти, включая критерии определения государственных информационных систем, при создании которых необходимо использовать свободное программное обеспечение, в том числе государственных информационных систем, предназначенных для оказания государственных и муниципальных услуг в электронном виде»
— Распоряжение 17 декабря 2010 «О плане перехода федеральных органов исполнительной власти и федеральных бюджетных учреждений на использование свободного программного обеспечения (2011 — 2015 годы)»
Источник: http://www.minsvyaz.ru/ru/activity/directions/106/
Ну и наконец, можно продвигать аналогичные законопроекты через общественные организации, например (в Конституции есть же право граждан на информацию а программа — это разновидность информации).
А ещё есть Федеральный закон от 21.12.1994 N 68-ФЗ (ред. от 15.02.2016) «О защите населения и территорий от чрезвычайных ситуаций природного и техногенного характера», требующий опровещения о ЧС, — которое должно в современном мире выполняться с помощью компьютеров и сетей…
Не надо ждать, пока государство придёт к СПО — нужно самому идти к нему (и показывать выгоду от этого — https://geektimes.ru/post/275296/ (Счетная палата РФ скажет Вам «спасибо»)).
miga
04.05.2016 16:24Цифровое копирование сделало возможным очень интересную вещь — можно делиться не беднея самому. Один раз сделав программу можно отдать ее кому-то и у тебя эта программа останется, так же и про графику, музыку — любые цифровые медиа. Этот принцип вступает в противоречие с законами современной торговли и появляются защищенные программы, законы о пиратстве, защита контента, навеска рекламы и прочие нелогичные и ненужные людям вещи.
Делясь, беднеть вы, конечно, не будете, но дело в том что вы уже затратили денег (и времени) на производство программы, графики, музыки и т.д. — любой информации. Собственно, все эти законы об авторском праве, патенты, DRM и все остальное — это всё (зачастую не идеальные) способы защитить право производителей информации на зарабатывание денег.keleg
04.05.2016 16:52+1поэтому и предлагается финансирование разработки а не продажа «потом». Т.е. инвестирование а не продажа копий (см пример с OpenShot)
Doktor_Gradus
04.05.2016 18:01Если это инвестирование, значит, инвестиции надо возвращать.
keleg
04.05.2016 18:34да, инвестирующие получают продукт, остальное общество — улучшение инфраструктуры.
Doktor_Gradus
04.05.2016 19:22Тогда это не инвестирование, а краудфандинг.
keleg
05.05.2016 04:44не совсем т.к. объект краундфандинга после создания является инвестицией в общее пространство ИТ и не принадлежит жертвователям и создателю.
Stronix
04.05.2016 23:15ни одной рабочей свободной программы типа «Торговля и склад»
Навскидку: OpenBravo, Warehouse Open, Unicenta, Adempiere
0xd34df00d
05.05.2016 01:48Не сработает для софта, разрабатываемого для себя.
У меня есть опенсорс-проект свой. Я его пилю в свободное время, чтобы было, на чем поупарываться свежим C++ и пореализовывать монады в плюсах. Интересные задачи я с радостью делаю бесплатно, а неинтересные и за деньги не готов.keleg
05.05.2016 04:48Но есть достаточно много людей, которые за деньги готовы что-то делать. И есть те, кто готов заплатить чтобы было. И это даже получается объединить в рамках опенсора.
mickvav
05.05.2016 16:02А если другой человек сделает за деньги то, что вам не интересно — патч примете? Тогда в чём проблема?
0xd34df00d
05.05.2016 16:07Если он будет соответствовать по различным критериям от общей продуманности до стиля кода и так далее — да, приму.
mbait
05.05.2016 08:55Так и в чём суть? Оплата фичей — уже было несколько раз, не взлетело. Краудфандинг ПО — куча площадок (русскоязычных в том числе), не взлетело. Как правильно заметил 0xd34df00d — интересные программы пишут не за деньги, а для себя, а неинтересные и за деньги никто не будет разрабатывать. Я участвовал в одном открытом проекте, куда приходили люди со своими идеями и деньгами, но мейнтейнерам не особо было интересно, потому что у всех была постоянная, оплачиваемая работа.
Код за деньги уже давно существует — называется фриланс-биржа. Вот этот проект был целиком профинансирован одной немецкой студией, они заказали для себя, но исходники опубликовали, потому что «не жадные». Только тут есть одна «маленькая» проблема — код на заказ стоит очень дорого. Как и всё на заказ. Поэтому никакой утопии и «социализма» не будет, пока людям, которые пишут код, нужно будет что-то кушать и далее — по пирамиде Маслоу.keleg
05.05.2016 09:06Стоп. Я выше привел краудфандинг ПО который взлетел — OpenShot. Да, код на заказ стоит очень дорого (я даж считал как-то стоимость релиза нашего ROSA Linux) но и пользователей ПО тоже много. Начиная с некоторого количества это заработает — если хотя бы сотая часть тех, кто покупает готовые лицензии будет вкладываться в разработку свободного кода — взлетит. Но да, нужно менять сознание с кредитно-потребительского на инвесторское.
amarao
Сделаем поправочку на умирающий десктоп. Он всё ещё богатый и фичастый, но всё большую часть отъедают saas'ы, которым пофигу на ОС, но важен браузер.
keleg
да, это важный вопрос — и тема для отдельной статьи. СПО-разработка saas тоже ведь возможна и предоставляет интересные возможности.
amarao
С одной стороны возможна, с другой стороны, saas слишком соблазниелен для закрытия. Уникальная фича — и клиенты от тебя уже никуда не уйдут, потому что у тебя не только форматы, но и данные клиентов.
У меня есть ощущение, что opensource тут в куда менее выигрышном положении, чем в войне десктопов. И это печалит, потому что я _УЖЕ СЕЙЧАС_ ощущаю острую проблему с saas'ом, который имеет мои данные, но сервисы которого можно использовать только специальным образом.
Распознавание голоса? Только как сервис. Кода нет и не будет. Построение машрута в картах с учётом данных о пробках? Только в онлайне. Кода нет и не будет.
Распознавание лиц? ТОлько saas.
Идёт целый класс нового shiny new ПО, которое не всем осточертевший CRUD в базу с WYSIWUG, который всем понятно как делать, просто долго и нудно. Идёт класс ПО, который реализует принципиально новые фичи, алгоритмы и даёт возможности, от которых трудно отказаться.
И он весь — saas. Когда даже блоба нет для reverse engineering'а. То есть сейчас ситуация становится более плохой, чем даже в самые злые MS-времена образца конца 90ых/начала 2000ых.
Gorthauer87
Тут мне кажется, спасет только отсутствие монополий на рынке saas, да и для некоторых saas решений таки нужны большие вычислительные мощности, тут даже если вся платформа полностью опенсорсная и вся из себя открытая, то так или иначе мы попадаем под зависимость от вендоров с наибольшим вычислительным ресурсом.
То есть всё ещё хуже.
keleg
выход может быть в свободных кластерах.
Gorthauer87
А кто их оплачивать будет? Это вообще не выход, а утопия.
keleg
вики ж работает как-то, при сумасшедшей нагрузке?
Gorthauer87
А кто кроме них? Гитхаб проприетарный, всякие дропбоксы и фликры тоже. В итоге, по видимому, такими как вики могут быть только уж совсем жизненно важные вещи.
specblog
То есть в будущем многие корпоративные рабочие места можно будет оснащать одноплатным компьютером с нормальной видеосистемой и Линуксом.
amarao
… на самом деле всем будет пофигу что там. Там будет Linux, но не gnu. Google куда более злой враг gnu, чем текущая версия microsoft, а значит, воевать с ним будет сложнее.
keleg
зависимость людей от инфраструктуры становится все более критической а значит ее нужно выводить из-под контроля корпораций.
amarao
Дело не только в инфраструктуре. Не придумано ни одного этически разумного решения, которое может заставить кого-либо раскрыть алгоритм за стенками saas'а.
specblog
А почему там будет гугл?
amarao
Потому что гугл строит самую закрытую в мире экосистему. Никогда такого масштаба закрытости ещё не было. Пользователи намертво завязаны на их данные на серверах гугла, операционные системы — на API с серверов компании, что даёт гуглу право выпихивать конкурентов не только посредством «закрытия платформы», но и явного принуждения вендоров к исключению конкурентов. В отличие от «самозамкнутой» apple, google пролезает с закрытой функциональностью даже в opensource. Тот же chromium — перевод страницы не работает без серверов google. При том, что это функционал открытого ПО. app store (или как там его называют в хроме) — единственный метод управления дополнениями к браузеру.
Т.е. если в случае с apple вы просто ставите свободную программу и получаете островок свободы от apple, то у гугла вы ставите свободную программу, но всё равно зависите от благорасположения google к очередному конфликтному региону, которому «по решению правительства закрыт доступ к сервисам американских компаний».
Масштабы развивающейся хаккерской катастрофы нам ещё предстоит оценить…