XVI конференция разработчиков свободных программ или где взять бесплатных контрибьютеров
Недавно в славном городе Калуге проходила XVI конференция разработчиков свободных программ. Конференцию организовывала компания “Базальт-СПО”. Embox, являясь свободным проектом, также выступал на конференции. Я, традиционно, не буду делать обзора всех докладов, а расскажу о тех вопросах, поднятых на конференции, которые были интересны мне лично.
Она, как я уже сказал, проходила в Калуге. Перед рассмотрением докладов немного скажу про организацию конференции. Действительно, добираться из Питера до Калуги было менее удобно, чем до Москвы. Многие из тех, кто не посещал конференцию, интересуются, почему не в Москве, где посетителей было бы больше. Москвичи говорили, что от Москвы два часа на машине по хорошей трассе. Я добрался от Москвы на поезде за два часа. И тот, и другой вариант, на мой взгляд, не сильно утомительны.
Во-первых, Калуга — красивый город, там есть где погулять, на что посмотреть. Выгод же, на мой взгляд, больше. Во-вторых, это повод посмотреть что-нибудь кроме Москвы, где большинство бывает достаточно часто, а многие просто живут. Например, музей космонавтики. В Москве народ быстренько расползается по своим домам, а тут народ общался в барах, кафе, или просто гулял по городу. Ну и такой неочевидный момент как тусовка по вечерам. Оказывается, эмблема является модификацией универсальной эмблемы сообщества всех хакеров, которая представляет из себя планер “Игры в Жизнь”. Для общения и не только был заведен телеграм-чат, из него я не только узнал, где тусуется народ, но и, например, почему у конференции такая эмблема.
Сама конференция бесплатная, но нужно было зарегистрироваться, оставив e-mail. Некоторых пользователей сети, которые узнавали о конференции, также волновала обязательная регистрация. В итоге, на конференции никто не контролировал регистрацию и можно было зайти подписать себе бейджик (или вообще присутствовать без бейджика) и спокойно послушать доклады, пообщаться с народом и поесть пирожки. Регистрация была нужна только для того, чтобы организаторы могли оценить, сколько человек посетит конференцию, ведь количество посадочных мест, сами понимаете, ограниченно. Так что все было более чем свободно!
Доклады
Первый доклад был посвящен очень важной теме — взаимодействию СМИ и свободного проекта. Доклад назывался “Как свободному проекту организовать работу со СМИ”, автор Сергей Голубев. В докладе было предложено в качестве альтернативы публикациям в традиционных профильных СМИ создавать собственные блоги, чтобы рассказывать о проекте.
Звучал он приблизительно так: вот вы такие хорошие и свободные, но почему так мало рассказываете о себе? Важность темы хорошо продемонстрировал вопрос участницы после доклада Ивана Панченко “Модель развития PostgreSQL как международного свободного продукта и сообщества”. Надеюсь, эта конференция позволила хотя бы ей лучше проникнуться идеями СПО.
Идея автора следующая. В качестве авторов блога предлагалось привлекать студентов за зачет. Но описать сложное ПО может каждый. Не все умеют писать сложное ПО, а кто умеет, зачастую не хочет отвлекаться на публикации и документацию. Соответственно, студент может с одной стороны принести заметную пользу проекту, а с другой может быть не настолько квалифицированным, как в случае с разработкой. Это как минимум проще чем разрабатывать.
Во-первых, работа за зачет. Лично меня немного задели несколько тезисов. Не знаю как у остальных, но в Embox, зачет является очень слабой мотивацией. Я уже рассказывал в статье на хабре, в докладе на конференции TechTrain, и после доклада также вставил комментарий, про работу за зачет. Поэтому у нас в проекте, даже при наличии возможности, зачет (диплом, экзамен, ...) никогда не был основным мотивом. Я не говорю сейчас о моральной стороне использования условно бесплатной рабочей силы, я говорю о невысоком качестве результата полученного с помощью немотивированного участника проекта. Да, у нас пишут дипломы, курсовые и другие научные работы, но при этом на первый план ставится цель сделать что-то интересное для себя, и, само собой, полезное для проекта.
Собственно, я бы согласился, что написать публикации проще, но мы же говорим о технической публикации, а не о том чтобы разместить где нибудь пост, “о смотрите какой клевый проект, у него еще нескучные обои имеются”. Второй тезис, вызвавший у меня некоторый скепсис, это то, что публикации проще, чем разработка. И мне кажется, есть какой-то легкий снобизм в том, чтобы говорить — смотрите, мы такие крутые разработчики, ну а вы хотя бы напишите о нас.
У нас проблема публикаций и документации стоит очень даже остро. Я процитирую тезис о простой документации на Embox. Однако это не работало, в поисках решения я и написал статью “Как мы разрабатываем документацию в открытом проекте Embox” . И скажу честно, мы пробовали исправить ситуацию с помощью подхода через зачет студентам. Очень ценны пользователи, которые используют проект, еще более ценны те, кто оставляют фидбек, а уж ценность тех, кто делает документацию и публикации, трудно переоценить. В чём я согласен с автором, так это в том что если хочется помочь свободному проекту, то это можно сделать не только через разработку кода! То есть публикуя грамотные технические статьи, вы создаете себе авторитет в данной области, улучшаете резюме, так сказать. Но все-таки мотивом должен являться не зачет, а своего рода “карма”. К тому же это может быть путь в разработку кода, ведь для того чтобы что-то описать, необходимо самому разобраться в том о чем рассказываешь.
Это взаимовыгодное сотрудничество, ведь студенты получают опыт в интересной им сфере, практические навыки работы в команде, причем распределенной, ну и конечно, поднимают свой авторитет, а следовательно и статус на рынке труда. С главной идеей доклада, что студентов нужно привлекать к участию в проектах СПО, будь то публикации или исходный код, я безусловно согласен. Содержание доклада не столь важно, важно что и доклад, и разработку делали студенты. В этом плане был показателен доклад студентов МИЭТ “Решение проблемы организации быстрой связи между исполнителями при работе с бизнес-процессами для внедрения в свободной системе RunaWFE”. Толстого, МТУСИ, Брестский государственный технический университет. Кроме этого доклада были еще доклады от других университетов: ТГПУ им.
Автор высказал идею, что существует опасность для развития открытых сообществ в том, что слабо привлекаются новые участники. Проблема привлечения студентов (участников) в проекты СПО была озвучена в уже упомянутом докладе “Модель развития PostgreSQL как международного свободного продукта и сообщества”. Но сейчас студентам интересно быстро создать какой-нибудь стартап, поскольку именно у стартапов сейчас ореол успешности. Ведь раньше считалось крутым быть контрибьютором в открытых проектах, и разработчики стремились к этому. Но наверное, всегда были те, кто создавал технологии, и кто их использовал. А для создания стартапа, не нужно глубоко разбираться в технологиях, нужно их уметь использовать. Может быть немного изменилась структура, сейчас разработка открытых проектов зачастую ведется с коммерческих компаниях.
Суть доклада в том, что очень важно получить обратную связь от пользователей в открытом проекте, но при этом, конечно, не нарушить законодательства стран где используется продукт и конфиденциальность данных пользователей. О том, как для свободного проекта важны пользователи, прозвучало в докладе Дениса Силакова “OpenVZ Customer Experience Program, или сбор данных о пользователях в OpenVZ 7”.
Возможно, это связано с тем, что Базальт-СПО уделяет большое внимание переносу своего дистрибутива на “не-интеловские” архитектуры, как я уже отмечал в статье про OSDay. Целая серия докладов была посвящена процессорным архитектурам. Эльбрус, RISC-V, RaPi4. На данной конференции также было много различных “не-интеловских” железок. Я, само собой, тоже не остался в стороне и показал Qt на STM32F747i-discovery .
Само собой современные Малинки хотя и уступают современным интелам, но всего в несколько раз, соответственно, вполне пригодны для использования как офисные, да и не только офисные, десктопы. Самым частым развлечением на стенде с различными железками, на которых установлен Альт-Линукс, кроме игрушек, было сравнение производительности. А Алексей Новодворский сказал, что он заказал себе такую железку из Китая для использования в качестве домашнего десктопа. Во время доклада Антона Мидюкова “Mkimage-profiles – гибкий инструмент сборки дистрибутивов для множества платформ.” к проектору была подключена NVIDIA Jetson Nano, естественно на Альте, и все прекрасно работало. Сам же доклад был посвящен автоматизации создания дистрибутивов под различные платформы и архитектуры.
На конференции выступил Роман Ставцев из компании БАЙКАЛ ЭЛЕКТРОНИКС с докладом “Процессор Байкал-М. Естественно, самой распространенной не-интеловской архитектурой был ARM. К сожалению, платы так и не успели привезти на конференцию, но по моим данным, уже на следующей неделе они были представлены на конференции Микроэлектроника 2019. Программное и аппаратное окружение.“ и рассказал про их новый процессор Байкал-М на базе ARM Cortex-A57. Компилятор gcc, эмулятор qemu, загрузчик U-Boot, ядро Linux, …. А поскольку архитектура стандартная, то и комплект ПО стандартный и, конечно, СПО.
Как известно, архитектура оригинальная, но к сожалению достаточно закрытая, отсюда свои достоинства и недостатки. Сотрудники Базальт-СПО посвятили два доклада отечественным процессорам с архитектурой Эльбрус. Из достоинств отмечу только, что в докладе Андрея Савченко “Особенности портирования СПО на платформу «Эльбрус».” прозвучало, что при портировании различного ПО на данную архитектуру они находили проблемы в этом ПО, которые редко проявлялись на распространенных архитектурах и даже были приняты патчи в некоторые проекты. Больше конечно недостатков. Речь шла о том же Эльбрусе, но в названии вместо “особенностей” звучит уже “проблемы”. Доклад Игоря Чудова “Проблемы портирования SBCL на новые аппаратные платформы.” был более пессимистичный. Техническая Часть 1. Автор доклада жаловался, что не смог даже понятного описания ABI найти, я не удержался и предложил ему почитать нашу статью “Восхождение на Эльбрус — Разведка боем. Правда автор первого доклада, также отметил, что какая-то информация о регистрах Эльбруса есть на wiki Альта. Регистры, стеки и другие технические детали” . Все понадеялись что со временем ситуация изменится, и МЦСТ сделает свои продукты более открытыми, а мы (сообщество) окажем в этом посильную помощь. В общем, все сошлись на том, что архитектура безусловно интересная, но закрытость сильно препятствует освоению и затрудняет развитие.
На демо стенде был представлен работающий довольно шустрый прототип. Еще одной очень быстро набирающей популярность архитектурой представленной на конференции была RISC-V. И был посвящен экосистеме вокруг этой открытой процессорной архитектуры. Доклад представил Никита Ермаков, он так и назывался “Архитектура RISC-V”.
Ведь как я и говорил, я не делал обзор конференции, и не освятил множество моментов. В завершение дам ссылку на программу конференции и ссылку на все видео с данной конференции. Вообще конференция ежегодная она порой освящается на хабре, к сожалению в последнее время достаточно мало. Интересных докладов, конечно, было куда больше. А атмосфера на конференции традиционно очень приятная, включая и живое обсуждение, и просто общение с умными, квалифицированными специалистами. На ней много интересных докладов, вот видео с конференций за все годы. Приезжайте на конференцию, от Москвы не так и далеко.