Open SourceПрограммное обеспечение для госучреждений должно быть с открытым исходным кодом

Недавно я написал письмо Дмитрию Анатольевичу Медведеву, в котором рассказал свою историю о том, как был вдохновлен его предложением развивать свободное ПО в России. И как в течение четырех лет планомерно пытался внедрить совместно с сообществом, разработанное нами программное обеспечение с открытым исходным кодом, в государственные учреждения нашего города. Причем в качестве примера, это программное обеспечение в выбранное нами госучреждение было успешно внедрено силами сотрудников этого же учреждения, без привлечения каких — либо бюджетных средств. А также, это письмо о том, как эта идея в итоге провалилась. Точнее, мы решили больше не развивать ее, так как окончательно убедились в тупиковости всех действий. И чтобы поставить жирную точку в этом деле, было написано это письмо с кратким отчетом о предпринятой нами попытке длиною в четырехлетний срок.

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

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

Итак, поехали!

Мы привыкли действовать, а не пустословить, поэтому новоиспечённый план действий тут же начал воплощаться в жизнь. После некоторых размышлений, буквально за недельный срок был создан проект Govorim.org (Говорим.ОРоссийскомГосударстве), цель которого — объединить единомышленников в сообщество, разработать программу с конкретными предложениями согласно поставленным целям и отправить ее в правительство Российской Федерации.

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

Аргументы в защиту этого утверждения следующие:
  1. ПО, разрабатываемое для госучреждений по госзаказу, финансируется из бюджетных средств, а следовательно, из средств налогоплательщиков, т.е. наших с вами средств, поэтому это ПО должно принадлежать населению страны.
  2. Стоимость разработки этого ПО будет существенно снижена, потому что: a) в открытый исходный код вряд ли удастся что-либо «закопать», b) в его создании будут заинтересованы коммерческие организации, которые будут софинансировать его разработку.
  3. Это ПО будет иметь развитие вне зависимости от того, будет ли продолжать участвовать в его развитии государство или нет, потому что любой разработчик сможет участвовать в его разработке, делая свой посильный вклад в его развитие.

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

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

И самое главное — понятие «Российское сообщество открытого программного продукта» перестанет звучать дико и начнет мелкими, но верными шагами развиваться в нашей стране.

Текст программы создан пока в виде скелета. В качестве опорных точек в ней прописаны ключевые пункты:
  1. Создать официальный государственный репозитарий проектов открытых программных продуктов разрабатываемых за бюджетные средства для нужд государства РФ;
  2. Вся деятельность, результаты всех конкурсов, исходный код проектов, в общем все, что связанно с этим будет в свободном доступе на этом официальном сайте;
  3. Утвердить официальный статус сообщества, наделить его соответствующим правом голоса в разрешении каких-либо спорных и иных моментов;
  4. Создать независимую комиссию, в состав которой войдут как государственные служащие, так и члены сообщества. Эта комиссия будет контролировать расход бюджетных средств по госзаказам, качество разрабатываемого ПО и прочие подобные вопросы;
  5. Создать открытый фонд, из которого будут выделяться средства на дотирование разработчиков сообщества для доработки функций в существующем ПО. Этот фонд будет работать по типу биржи проектов. Т.е. если нужно будет доработать некий функционал в существующем ПО, то ТЗ на этот функционал будет выставлять на бирже проектов, где любой желающий может заявиться на реализацию этой функции. Результат выполненной работы будет закрепляться за исполнителем и так же публиковаться в открытом доступе. Проще говоря, не справится программист, напишет плохой код, получит минус и в следующий раз у него будет меньше шансов выиграть очередной конкурс на доработку функционала.
Проект по своей сути очень сложный, но вполне понятный и нам посильный. А главное, если наберется достаточное кол-во единомышленников, мы сможем эту программу донести до руководства страны.

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

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

 

Немного слов о сообществе проекта

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

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

 

В заключении

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

Сайт проекта — Govorim.org

Оригинал статьи на хабре

Благодарю за внимание.
  • +3
  • roosit
  • 15 марта 2012, 10:31

Комментарии (8)

Я почитала пост и связанные ссылки, но не до конца поняла вот что: вы рассматриваете только проект, созданные в России, или вообще любые открытые проекты? Ведь в мире достаточно много полезных продуктов для совместной работы или других целей. Будете ли включать их в список, если у них есть русскоязычное сообщество или русскоязычные разработчики?

У нас есть проект немного другого формата — www.ossportal.ru — в рамках которого мы стараемся собрать русскоязычное сообщество пользователей обозначенных технологий (а так же людей, способных заниматься их внедрением и поддержкой). Как насчет них?

Хм… Очень интересный вопрос… Давайте подумаем над ним.

Изначально вся идеология строиться на госзаказе в области разработки, т.е. установить правило, по которому обязать исполнителя публиковать исходный код разрабатываемого ПО в госрепозитарии. Соответственно, по всей видимости, у этого кода будет доработанная, локализованная открытая лицензия в защиту прав Российского Государства. Скорее всего, этого политического момента вряд ли удастся избежать.
Эта локализованная лицензия должна будет защитить интересы РФ в плане развития, т.е. лицензия, которая гарантирует юридически адаптировать продукт к Российским реалиям (сертификация, госты и т.п.) и обеспечить гарантию того, что продукт не будет закрыт создателем.
Проще говоря, так: сообщество N выпустило открытый продукт Rпо госзаказу на базе своей платформы P. А потом, в один прекрасный день, сообщество решило изменить лицензию на проприетарную своей платформы P, по лицензии которой, все создаваемое на нем ПО должно платить сборы. Вот эти моменты нужно будет проработать.
Касательно вашего вопроса. Пойдет ли сообщество ваших продуктов на доработку своих лицензий если это потребуется?
Входит ли в ваше сообщество непосредственно разработчики, программисты, способные внести изменения в исходный код для доработки под госзадачи?
 
> Изначально вся идеология строиться на госзаказе в области разработки

А если мой проект общественно важен, но пока не нужен государству. Тогда что делать? В идеале хочется видеть организацию координирующую разработку СПО и финансирующую её за счёт доходов с госзаказа.

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

>  Текст программы создан пока в виде скелета. В качестве опорных точек в ней прописаны ключевые пункты:
> 1. Создать официальный государственный репозитарий проектов открытых программных продуктов разрабатываемых
> за бюджетные средства для нужд государства РФ;

Это что за сущность? Кто ее оператор и чем регламентируется ее работа? Как обеспечивается, чтобы она не превратилась в свалку миллиона малопонятных и несовместимых программ?

> 3. Утвердить официальный статус сообщества, наделить его соответствующим правом голоса в разрешении
> каких-либо спорных и иных моментов;
> 4. Создать независимую комиссию, в состав которой войдут как государственные служащие, так и члены сообщества.
> Эта комиссия будет контролировать расход бюджетных средств по госзаказам, качество разрабатываемого ПО и прочие подобные вопросы;

А что такое «сообщество» в данном случае? Как ограничены его рамки? Как выбираются эти члены сообщества, и через какие механизмы они участвуют в чем бы то ни было?

> лицензия, которая гарантирует юридически адаптировать продукт к Российским реалиям (сертификация, госты и т.п.)

Это как? К каким именно реалиям, в какие сроки, за чей счёт?

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

> Пойдет ли сообщество ваших продуктов на доработку своих лицензий если это потребуется?

Вряд ли. Потому что нынешние лицензии устраивают полностью. Кстати, я правильно услышал, что Linux, Firefox, OpenOffice.org / LibreOffice и т.д. тоже предлагается выпилить, так как лицензии у них неподходящие?

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

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

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

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

Те в свою очередь получают этот модуль и видят, что в нем функция карандаша по картинке маловато, нужно ему сделать побольше фишек. Делают их своими силами и запускают на своем сайте, ну и дальше уже по той же схеме.
 
> А что такое «сообщество» в данном случае? Как ограничены его рамки? Как выбираются эти члены сообщества, и через какие механизмы они участвуют в чем бы то ни было?
Самое главное, это сообщество нужно будет регламентировать таким образом, чтобы в него не попали сынки папиков — потому что это модно, люди проприетраного ПО — чтобы проталкивать свои продукты и прочие люди с иной целью. В нашей стране с этим особенно сложно.
В этом сообществе должны быть люди, которые каждый день программят, всячески развивают, поддерживают, двигают в жизнь СПО. У каждого открытого продукта есть свое сообщество и свои лидеры в этом сообществе. Вот в идеале хочется видеть этих лидеров в этом «гос»сообществе.
Ну и конечно в этом сообществе будут те, кто сейчас двигает этот проект-программу. Присоединяйтесь!
 
По поводу лицензий,  пока все на уровне предположений и будет она относиться к софту РАЗРАБАТЫВАЕМУ  по госзаказу. Linux, Firefox, OpenOffice.org и т.п. уже готовый софт, его допиливать по госзаказу ненужно.
И уж тем более выпиливать их ни в коем случае нельзя, я наоборот всегда борюсь с тем, чтобы именно этот софт по возможности внедряли.
 
P.S. Возможно я на какие-то вопросы отвечаю сумбурно, это потому, что в голове очень много мыслей и идей, но пока не все они разложены по полочкам, руки не успевают весь материал оформить на «бумаге». Но главное есть скелет этой программы, проекта. Уже в ближайшее время все разложу по полочкам и на каждый вопрос, просто буду кидать линк-ответ.
Спасибо за ответы. И все-таки хочется уточнений.

> > Кто ее оператор и чем регламентируется ее работа?

Меня особенно интересует первая часть вопроса, потому что реальная работа будет во многом определяться этим самым оператором.

> > Как обеспечивается, чтобы она не превратилась в свалку миллиона малопонятных и несовместимых программ?

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

> > лицензия, которая гарантирует юридически адаптировать продукт к Российским реалиям (сертификация, госты и т.п.)
> Это как? К каким именно реалиям, в какие сроки, за чей счёт?

?

> Linux, Firefox, OpenOffice.org и т.п. уже готовый софт, его допиливать по госзаказу ненужно.

Несогласен. Нужно. К тому же OpenOffice.org постоянно есть вопросы. И иногда их решение даже готовы профинансировать. Но модель работы в этом случае становится непонятна.

> Меня особенно интересует первая часть вопроса, потому что реальная работа будет во многом определяться этим самым оператором.

А как работают сообщество открытых продуктов? Вот тут же такой же принцип. Все на самом деле очень просто.
Вы ведущий разработчик открытого продукта и ваш продукт внедряют в госучреждения, у вашего продукта естественно есть сообщество. Теперь, когда этот продукт внедрен в госучреждения и не только, каким образом происходит его допиливание? Прежде чем, что либо допиливать в продукте, разработчик смотрит, а есть ли уже подобные функции. Если нет, запрашивает ведущих о разработке его. Создает ветку в репозитарии и начинают программить. Даже если получиться два и более различных групп делают похожие фишки, все это уходит в разные ветки, то часто они в последствии объединяются, совмещая функции. Это у закрытой модели, каждый пытается сделать продукт как можно уникальнее, чтобы его вдолбить покупателю, а здесь иной подход, ориентированный на сам продукт. Т.е. даже чем больше, тем лучше, потом этих больше можно объеденить в один.
Этот механизм в сообществах работает уже давно и управляет сотнями, а то и тысячами разработчиками.
Оператором будет ведущие разработчики продукта, они непосредственно следят за тем, чтобы продукт получался грамотным.
 
> Это как? К каким именно реалиям, в какие сроки, за чей счёт?
 
Да тут неоднократно вставал вопрос, желающих национализировать эти продукты. Это и есть эти реалии, с которыми продеться бороться. Аргументы, как правило будут прикрываться национальными вопросами, типа это за российские деньги, значит чисто российское, а по сути за этим скрывается все хапнуть в свои руки. Т.е. гос-во скажет – не будем делать, если это не будет под нашей лицензией, а мы разработчики продуктов, например под GPL лицензиями, будем с ними как то бороться. Дай бог конечно, если чиновники адекватно примут открытые лицензии GPL, но все равно нужно будет быть готовым ко всему.
 
> Несогласен. Нужно. К тому же OpenOffice.org постоянно есть вопросы. И иногда их решение даже готовы профинансировать. Но модель работы в этом случае становится непонятна.
 
Спорить не буду, для этого я и призываю сообщества таких продуктов решать эти вопросы вместе.
Ваше решение?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.