Заголовок кажется кричащим, но факты - вещь упрямая. В нашей стране наступил переломный период, когда необходимо найти возможность очень быстро догнать и перегнать "зарубежных партнёров" в развитии информационных технологий, чтобы избавиться от технологической зависимости. И чем быстрее удастся сбросить с себя ярмо этой зависимости, тем быстрее будут развиваться и все остальные отрасли.
Текущее импортозамещение программного обеспечения на отечественное, в большинстве случаев, зависит от коммерческих российских компаний, которые смогли попасть в тренд, и их решения оказались востребованы. К сожалению, в рамках всей страны, развитие пусть даже большого количества IT-компаний подтолкнёт развитие только этих самых компаний, но не сектора информационных технологий в стране в целом. Любой проект с закрытым исходным кодом, зависящий от какой-то коммерческой компании или группы людей может в любой момент прекратить существование с невозможностью его продолжения другими людьми.
Существует решение, которое позволит развивать абсолютно всю отрасль информационных технологий в стране. Принципы развития свободного программного обеспечения позволяют сделать так, что IT-проекты не будут зависеть от конкретных людей и корпораций. Если для государственных проектов, среди всех контрагентов, отдавать приоритет в первую очередь тем, кто создаёт свободное программное обеспечение или хотя бы программное обеспечение с открытым исходным кодом, то желающих создавать программное обеспечение именно по таким принципам будет больше.
Свободное программное обеспечение - это не просто программы, а принципы разработки программ. Требованиями к свободному программному обеспечению являются: предоставления доступа к исходному коду программ, предоставление возможности изучения, модификации и дальнейшего распространения. Но одним из самых важных требований является распространение модифицированного программного обеспечения по тем же правилам. То есть, если кто-то взял свободное ПО, улучшил его или включил в свой проект, то полученный результат тоже должен быть свободным программным обеспечением. Для создания и распространения такого ПО существуют различные репозитории, самые известные из которых - это гитхаб и гитлаб. При этом свободное - не означает бесплатное! Это совершенно не означает, что надо заставить коммерческие организации отдавать свои продукты и труд бесплатно! Суть именно в том, чтобы была возможность изучения исходного кода и опыта получаемого при разработке, а так же дальнейшее его распространение по стране. В этом важное отличие прозводства материальных продуктов и программного обеспечения: если передать программный продукт, то он останется и у того, кто его отдал и повится у того, кому его отдали. Распространение таким образом исходного кода и опыта разработки даст огромный импульс развитию сектора информационных технологий.
Интересный факт заключается в том, что зарубежные корпорации уже давно прошли этап отрицания. Корпорация Microsoft перешла от таких интервью Билла Гейтса:
"есть такая вещь, как GPL, с которой мы не согласны".
Открытый исходный код, по его словам, создает лицензию,
"чтобы никто никогда не мог улучшить программное обеспечение", -
заявил он, сетуя на упущенные возможности для работы и бизнеса.
К покупке самого известного репозитория свободного программного обеспечения github и таких интервью:
Наша отрасль всегда будет смесью свободного и коммерческого ПО.
И между ними должен соблюдаться баланс.
К сожалению, в нашей стране мы пока весело прыгаем на граблях, которые оставили позади даже такие непримиримые огромные корпорации, как Microsoft и Apple и у нас свободное программное обеспечение не является приоритетом даже для государственных заказов, хотя казалось бы - это и есть развитие информационных технологий именно во всей стране, а не в отдельной коммерческой компании, пусть и крупной. А именно развитие информационных технологий В СТРАНЕ является одним из важнейших поручений нашего президента.
Гибкое развитие под нужды любых пользователей и, самое главное, возможность участия в развитии программных продуктов любых пользователей и специалистов. Это очень важный момент, учитывая, что для создания всего стека недостающих в нашей стране продуктов, необходимо очень много работы. Принципы свободного программного обеспечения позволяют привлекать к разработке заинтересованных людей не только из России, но и со всей планеты.
Закрытые разработки осуществляются только ограниченным кругом лиц, допущенных к разработке. При этом, в сравнении с свободным программным обеспечением, развитие определяется владельцем кода. Цель разработки закрытого ПО - получение прибыли для компании. Если в каком-то моменте получение прибыли будет несовместимо с желаниями сообщества пользователей или государства, то сообщество и государство имеет более низкий приоритет в глазах коммерческой компании. В свободном программном обеспечении подобные вопросы не могут никаким образом затормозить развитие продукта.
Программный продукт на открытом исходном коде наиболее безопасный, что подтверждает использование преимущественно свободных платформ на веб-серверах всего мира. Ведь именно веб-сервера наиболее подвержены атакам по безопасности.
Ещё один важный момент - насколько глубока проблема технологической зависимости даже имеющихся у нас продуктов. Многие из отечественных программных продуктов и разрабатываются и работают на платформах (операционных системах) принадлежащих иностранным корпорациям. В текущий момент начался переход и на отечественные решения из сектора операционных систем, но для многих компаний это не является приоритетным и чаще всего предлагаются решения запуска через эмуляторы, но не нативная разработка под российские платформы. Даже, если и ведётся разработка под отечественные операционные системы, то во многих случаях сама разработка ведётся на иностранной системе и просто собирается под другие. Такие продукты используют C# и dotnet, платформу сборки Electron и тому подобное. Проблема такого подхода в безопасности получаемого продукта, который содержит в себе бинарные файлы, скачиваемые с иностранных серверов во время сборки с помощью, например, Electron. Это обусловлено, как уже упоминалось выше, приоритетами коммерческих закрытых разработок: переписывание под отечественные платформы или переучивания программистов работать не на иностранной системе несовместимо с получением прибыли, поэтому интересы страны и сообщества пользователей отходят на второй план.
Сейчас в России происходит выбор платформы для дальнейшего развития. Чтобы не наступать на те же грабли, необходимо опять же отдавать приоритеты проектам с свободной разработкой, чтобы исходный код был открыт и всегда можно было продолжать развитие. При повсеместном внедрении платформы вся работа будет привязываться именно к ней. В случае закрытой платформы, уход разработчиков с поддержки по какой-то причине может стать фатальным. Даже если удастся получить исходные коды - это не решит проблему, потому что на их изучение и подготовку новых специалистов для их поддержки уйдёт много времени. В случае свободного программного обеспечения исходные коды непрерывно доступны в течение всего цикла жизни, а воспроизводимость собираемости платформы и продуктов позволяет очень оперативно найти в сообществе пользователей и специалистов кадры, которые смогут бесшовно закрыть проблемы с поддержкой открытого продукта. Свободные и открытые платформы в России имеются в том числе разрабатываемые государством. Но борьба идёт нешуточная, потому что закрытые операционные системы тоже не хотят упускать свой шанс и пытаются урвать рынок.
Свободное программное обеспечение даёт стимул коммерческим компаниям развиваться. Если несвободное ПО не будет иметь конкуренции в лице свободных аналогов, то достаточно будет просто продавать написанную один раз программу без каких-либо дополнительных затрат. В случае, когда у пользователей не будет выбора, то коммерческая компания сможет экономить даже на доработках и исправлении ошибок в своих программах, просто игнорируя обратную связь от пользователей. Это не совместимо с развитием IT в рамках всей страны. Коммерческим компаниям необходимо разрабатывать уникальные решения и находиться в состоянии постоянного развития, чтобы можно было продать свой продукт. Клиенты с неохотой будут покупать функциональность доступную в свободном программном обеспечении бесплатно.
Многие коммерческие компании зарабатывают с помощью свободного программного обеспечения, продавая техническую поддержку и доработку для клиентов. Так же коммерческие компании экономят на разработке функциональности, которую делает сообщество свободного ПО и добавляет в свободные продукты, улучшая тем самым и коммерческие несвободные продукты, использующие решения свободного программного обеспечения.
Важен тот момент, что доработки в свободном программном обеспечении становятся доступны программистам всей нашей страны, что в реальности даёт очень сильный импульс развитию информационных технологий в нашей стране.
Успешных компаний со своими бизнес-моделями, построенными на свободном ПО, немало. В пример можно привести Postgres Professional, где лицензия на продукт не просто свободная, а даже позволяет менять и потом закрывать программный код. Компания занимает лидирующие позиции в России среди СУБД. Поэтому аргументы "а на чём зарабатывать?" разбиваются просто о факт успешности подобных компаний.
Россия, по некоторым свободным проектам, тем, которые нам самим нужны, может получиться так, что сможет вложить в них больше знаний и усилий, чем апстрим. Бояться этого не стоит, а надо смело брать технологическое лидерство в свои руки. Установка, что мы тут всегда исключительно догоняющие совершенно неверна.
Было бы очень здорово, если бы правительство финансировало в каком-то виде свободную разработку. В достаточной мере, чтобы программисты высокой квалификации не уходили в коммерческие структуры с разработкой несвободного программного обеспечения просто потому, что там лучше платят. Было бы здорово, если бы в стране появился закон, что ПО, написанное за государственные деньги, если это не нарушает гостайну, должно быть под свободной лицензией.
Данная статья написана как общее описание ситуации. Если читателям будет интересно, то можно будет разобрать варианты платформ и программного обеспечения (в нашей стране всё необходимое есть), которые могли бы удовлетворять тезисам данной статьи.
Подведём итог. Свободное программное обеспечение в России сейчас находится на стадии становления. Конечно, существует множество вопросов и сложностей, связанных с его разработкой и внедрением на государственном уровне. Например, для многих сфер специальной деятельности требуемое свободное ПО на текущий момент просто отсутствует или не предоставляет требуемый профессионалу функционал. Большинство пользователей в силу менталитета не хотят менять привычные программные средства.
Так же важно не забывать, что "свободное" не означает "бесплатное". Коммерческие организации могут и будут получать прибыль от свободного программного обеспечения. Никто не заставляет писать код "забесплатно" или бесплатно поддерживать программное обеспечение.
Как видно из всего вышеописанного, переход на СПО достаточно непрост. Однако сложившаяся ситуация уникальна тем, что Россия может стать первой в мире страной, перешедшей на СПО на государственном уровне. И есть все основания полагать, что после перехода, который потребует определённого времени и усилий, отечественный программный комплекс, поддерживаемый огромным количеством пользователей, принимающих участие в разработке, наконец преодолеет технологический разрыв с некоторыми зарубежными программными продуктами. Заливание данного направления деньгами, хотя и важно, но совершенно недостаточно, потому что финансирование зарубежных продуктов никогда не прекращалось в том числе и нашей страной во время внедрения западных программных продуктов. Упущен самый драгоценный ресурс, который за деньги не купить - время. Чтобы восполнить упущенное, необходима полноценная мобилизация всех участников сектора информационных технологий в нашей стране. Принцип разработки свободного программного обеспечения является прекрасным и единственным способом мобилизовать все наши возможности. Только совместными усилиями мы добьёмся побед, как исторически не раз уже доказывали всему миру.
Финансирование российских компаний, которые разрабатывают несвободное программное обеспечение разделяет все усилия и ресурсы, вкладываемые сейчас государством на развитие именно конкретных компаний, которые смогли выиграть государственные тендеры, а финансирование разработки свободного программного обеспечения (если, например, в тендерах будет отдаваться предпочтение в первую очередь компаниям, которые разрабатывают именно СПО) вносит вклад в общее развитие вообще всех участников разработки программного обеспечения. Нам очень важно, по возможности, перехватить лидерство во многих мировых проектах разработки свободного программного обеспечения и, главное, мы на это способны.
Первые шаги за которые можно порадоваться и даже гордиться - это создание свободного и бесплатного для всех суверенного репозитория программного обеспечения с поддержкой государства, который является аналогом зарубежных гитхабов и гитлабов. А так же размещение там открытых государственных разработок которыми может пользоваться бесплатно любой гражданин нашей страны.
Комментарии
Спасибо за подробный ответ!
1-2. Мобилизация ресурсов, кмк, позволит решить эти вопросы. Может я неправ.
3. Не хоронит. Как раз создаёт здоровую конкуренцию на рынке, а не застой. Создать программу и продавать - это застой. А постоянно развивать программу - это развитие. По рыночным законам как раз придётся коммерческие разработки постоянно улучшать и развивать.
4. Не буду комментировать :-)
В свободном ПО никто ни за что не отвечает. Тот же MS или Apple закроют опубликованную критическую уязвимость максимально быстро, как только смогут. А в опенсорсе могут закрыть, а могут и забить. Не говоря уже о простых ошибках и пожеланиях пользователей. Когда я работал с линуксами, неоднократно наблюдал, что некоторые ошибки висят в багтрекере годами.
Критические уязвимости так же могут не закрывать и в несвободном ПО, но в свободном, можно просто закрыть их самому, если это срочно нужно, чего с несвободным сделать невозможно. Вы говорите про какие-то отдельные проекты, а тут вопрос стоит в построении системы разработки.
Так о том и речь, что такая система разработки не готова быстро и адекватно реагировать на требования рынка и ключевых пользователей.
Закрытая тоже к этому не готова. Вы пробовали хоть раз написать крупному разработчику список проблем с его софтом и попросить исправить?
Офисный пакет Р7 может это делать месяца три, МойОфис полгода может делать то, что сам можешь исправить буквально за полчаса. ВК может вообще ничего не исправлять без пинка сверху, а при пинке ещё и наехать на того, кто описал проблемы, которые надо решить. Ну и так далее. Если прям очень надо есть конкретные примеры, которые лежат в открытом доступе и даже по ссылкам из этой статьи, если покопаться можно найти
Тут, смотря, кто будет просить и как. Если государство попросит ту же 1С что-то быстро исправить, то это будет сделано. С сообществом разработчиков такой номер не пройдёт.
У меня есть опыт работы с поддержкой Communigate Pro. Там ошибки и пожелания исправлялись иногда очень быстро.
Это не так. Я написал выше пример про ВК, где реально государство просило и реально быстро не правили
Писал в Р7 и Астру... Астровцы поправили в ближайшем обновлении... но выходят они сейчас раз в пол года... Р7 правили немного меньше года... два или 3 обновления прошли без устранения проблемы.
Особо забавно, что Р7 сами поломали то, что потом так долго чинили. Хотя признаю, текущее решение намного лучше того, что было до поломки.
Это очень хороший опыт взаимодействия
Я лет двадцать тому уже писал в "Компьютерре" и докладывал на нескольких довольно серьезных мероприятиях, что государству при заказе некоторых типов программного продукта (общесистемного и массового коробочного, используемого в государственном делопроизводстве -- текст-процессоров, электронных таблиц и т.п.) необходимо перейти от модели тендеров по 44-ФЗ к модели творческих конкурсов с несколькими призовыми местами (и, соответственно, несколькими уровнями оплаты). Приз за третье место должен соответствовать затратам на разработку, приз за первое -- обеспечивать победителю еще и прибыль (по принципу costs plus incentive fee). При этом интеллектуальный продукт должен передаваться в public domain.
Нечто подобное было запущено в 2019 году в рамках системы грантов (постановление Правительства Российской Федерации от 3 мая 2019 года № 550 «Об утверждении правил предоставления субсидии из федерального бюджета на государственную поддержку проектов по внедрению отечественных продуктов, сервисов
и платформенных решений, созданных на базе «сквозных» цифровых технологий, в субъектах Российской Федерации в рамках реализации дорожных карт по направлениям развития «сквозных» цифровых технологий»), в дальнейшем эта деятельность продолжалась в 20 и 21 годах. К сожалению, по моим данным, результаты были, мягко говоря, не впечатляющими -- главным образом по причине дичайшей забюрократизированности процесса, дилетантизма экспертной группы, а к тому же -- абсурдных (с точки зрения государственной пользы) требований об окупаемости проекта для разработчика в течение трех лет (на самом деле грант должен был бы завершаться демонстрацией технологии в опытно-промышленной эксплуатации, передачей продукта в public domain и контрактом с разработчиком на сопровождение и техподдержку продукта лет на пять).
Но то такое...
Один мой старый товарищ, работавший при Ельцине в Администрации президента экспертом, как-то объяснял мне: "Вот ты говоришь: надо то, надо это. А в государственном аппарате важно -- кому конкретно надо? Фамилия, имя, отчество, должность. И зачем это ему надо?".
И речь даже не о коррупции. Для чиновника часто даже важнее не то, сколько ему лично могут откатить с проекта (с этим сейчас стало сложно и очень опасно), а -- как проект можно подать, как его личное достижение, и как это поможет ему в карьере.
Худо-бедно начали появляться такие конкурсы. Надеюсь, что это будет развиваться.
А вот насчёт какой чиновник может это преподнести как личное достижение - да это же прямо непаханное поле! Хоть обпреподносись. Тут я реально проблем не вижу, но описывать тут в публичном поле опасаюсь
Годный срач. Ахтунг - пахнет трольчатиной! Автор, нет ли в обсуждении упырей? Сим повелеваю - внести запись в реестр самых обсуждаемых за день.
Итого, мы приходим к вопросу: кто в России может быть заинтересован в финансировании свободного ПО? И даже шире: не только ПО, но и той же самой энциклопедии, популярного контента, фильмов, музыки, научных исследований, автомобильной платформы, наконец.
У нас сменилась общественная формация. Капитализм благополучно помер. Буржуи не способны эффективно инвестировать во все вышеперечисленное. На смену товарному производству пришла информационная экономика, у которой совершенно другие законы.
Ни частный предприниматель, ни государственный чиновник не будут ничего это делать. В информационной экономике нельзя, как прежде, вложиться, а потом собирать урожай в свои закрома. Нужно долго и кропотливо выращивать сад, плодами которого будем наслаждаться весь мир, и который не получится отгородить забором.
Здесь нужны совершенно другие принципы и другие люди.
В текущий момент заинтересованно в этом наше государство в том числе. А дальше нужно будет проводить большую работу по объяснению и приведению теоретических и материальных баз.
Государство - это кто? Путин? Набиуллина, например, заинтересована? Обычному чиновнику, как вам отметили выше, все это не нужно от слова "совсем".
Боюсь, что без теоретической базы все это с места не сдвинется. Сначала нужна идеологическая основа, а потом ее можно пытаться продвигать в жизнь.
Что у нас там с краудфандингом? Есть какие-то наработки в этом вопросе? Теория? Законодательство? Инфраструктура?
Вы бьёте по больному... Тут крыть мне нечем :-(
В гранит! Потому что верно!
Коллеги, есть мысль, как это упорядочить на уровне государства.
Давно бью во все колокола по поводу необходимости системы стандартов. Не в пользу бюрократии, как это было в позднем СССР, а в пользу прозрачности процессов и внедрения опенсорсного подхода в большинстве отраслей, не только в IT.
Смотрите. По порядку:
Это я выше в комментариях про конкурсы услышал. Участвовали со своим инновационным продуктом (EdTech+HRTech) в пяти-семи. Имели счастье насладиться результатами )) На том уровне, как это существует сейчас (последняя заявка была в ноябре сего года), впечатление очень печальное:
- неадекватность экспертов. Достаточно посмотреть на список победителей, чтобы понять, чем руководствуются эксперты при выборе ))
- засилье "грантожоров" (это такие особо обученные ребята, которые не умеют разрабатывать продукты, но умеют писать грантовые заявки и получать гранты)
- общее печальное впечатление от проектов. 100% увиденного — это 2Т вместо 1С ))
В общем, согласен с ТС по существу, но считаю первым условием, всё же, внедрение стандартов. И требование регулятора к государственным структурам и приравненным к ним крупным корпорациям пользоваться только соответствующими стандарту продуктами.
Так, кстати, и вражеский импорт отсекается довольно легко.
Внедрение стандартов - это то, с чего вообще надо начать. Тут вопросов нет. Статьёй я просто хотел показать к чему нужно идти. Но это невозможно без некоторой предварительной работы, в том числе по стандартам
Рад, что мы с вами одного мнения ) И спасибо за статью! Вы подняли очень важную тему, и подняли её своевременно.
Буду рад распространению статьи :-)
Как много буков, не осилил одну и ту же мантру про опен сорс
Есть одна проблемка, сложно скрыть в os закладки которые должны быть в гос софте к примеру или методы защиты.. нельзя такие вещи на гитхаб отдавать.
На мой взгляд баланс должен быть. Много коммерсов развивают СЕ проекты и платные(закрытые) версии. Вот к этому нужно идти.
Это упоминается в абзаце про возможную гостайну в госсофте. Конечно же такое открывать не нужно.
Вот из статьи:
Как не жалко это признавать, но сами, написать вряд ли что либо смогут.
Всё уже есть на гитхабе....
Задача: git clone, закрыть код и сказать, что вот это мы сделали и получить за это бабки.
Почему?
Ну давайте просто пару примеров из недавнего прямо в этом году:
Виджет cоединения с wifi в sddm написан с нуля нашим программистом.
Панель управления презентацией для тачскринов в LibreOffice сделана нашими ребятами.
В школах в программу для работы с интерактивными досками реализованы куча написанных с нуля нашими фишек, вроде векторов, стилей линий, циркуля, который может прилипать к сеткам, чтобы математикам было удобнее чертить и т.п.
Очень много написано самими. В OpenPrinting, например, ipp-usb написан полностью на go российским программистом.
Хорошо если так, мне тоже периодически попадается софт от наших кодеров, но где проект своей ос например. Не говорите только про астру и иже с ними.
Ну полностью своя - это КасперскийОС, но она не СПО и не опенсорс. Колибри ещё. Ещё ReactOS
Слишком тонка в обществе прослойка занимающихся ПО, а не Ай Ти.
Нужно наесть потолще.
Ну способ есть и он предложен в статье :-)
Это не способ, это возможность.
Открытое ПО давно проиграло финансово, закрытому.
Должно вырасти поколение, которое разбогатеет на открытом коде.
А, как это произойдет без продаж девайсов с открытым ПО? Им же всем хана.
Или поколение, которое выучилось на нём
Так оно программно и не отличается от закрытого. Только финансово.
В закрытом байт в слове закрыт, но он - тот же может быть в открытом.
Вы хотите возродить олдскульный коммунизм первых протоколов обмена, но как это сделать не предлагаете.
Это, как возврат к идее общественного коммунизма.
Много воды утечет и по другому будет реализовываться.
Страницы