Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017)

Материал из 0x1.tv

Аннотация

Докладчик
Денис Силаков.jpg
Денис Силаков

В докладе предлагается подход к организации студенческих проектов, при котором преподавателю отводится роль посредника между студентами и upstream-разработчиками различных СПО-проектов. Описывается опыт применения такого подхода при работе со студентами НИУ ВШЭ, выделяются его достоинства, недостатки и различные подводные камни, встреченные авторами за несколько лет применения подобной практики.

Видео

on youtube

Посмотрели доклад? Понравился? Напишите комментарий! Не согласны? Тем более напишите.

Слайды

Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017).pdf

Тезисы

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

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

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

Для каких курсов это подходит?

Присоединение студентов к разработке незнакомого им продукта всегда требует определенного времени. Поэтому давать такие задачи разумно только в рамках долгосрочных дисциплин — например, курсовых или дипломных работ либо предметов наподобие «Программного проекта» НИУ ВШЭ (который подразумевает работу команд студентов в течение нескольких месяцев над проектами конкретных заказчиков, в роли которых как раз и могут выступать различные СПО-сообщества).

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

Как выбрать проект?

Чтобы выбрать проект, в который отправить студентов, преподавателю необходимо самому ориентироваться в мире СПО. Идеальными кандидатами являются проекты, в разработке которых преподаватель сам принимает участие, либо которыми он хотя бы пользуется. Поэтому первым делом познакомиться с проектом должен именно куратор со стороны ВУЗа — иначе возникнут трудности с точной формулировкой задачи, а впоследствии — с оценкой достигнутых результатов.

Например, в продуктах Virtuozzo используются открытые компоненты — в частности, ядро Linux, гипервизор KVM в связке с QEMU и множество других программ и библиотек для Linux. Неудивительно, что студенты, выполняющие задачи под руководством сотрудников Virtuozzo (например, в рамках прохождения курсов на соответствующей кафедре МФТИ), работают над этими продуктами и нередко их наработки отправляются в апстрим. В бытность автора сотрудником компании «РОСА», студенты выполняли немало задач для одноименных дистрибутивов Linux.

Если же говорить о выборе проекта, не имеющего непосредственного отношения к деятельности преподавателя, то следует обратить внимание на следующие аспекты:

  • «адекватность» апстрима — существует немало проектов, внедриться в разработку которых человеку со стороны не очень просто, особенно если этот человек не имел подобного опыта;
  • наличие у проекта внятного списка задач для реализации, среди которых есть такие, которые можно смело отдать студентам. Как правило, мы выбираем потенциально интересные для проекта задачи, к реализации которых долгое время никто не приступает.

Мотивация студентов

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

Не секрет, что многие учащиеся слабо знакомы с программированием под Linux и не очень-то жаждут исправить эту ситуацию (несмотря на то, что работа над открытым проектом даст им много навыков помимо собственно программирования — например, опыт работы в команде, использования популярных сервисов типа GitHub и так далее). Нынешние студенты гораздо охотнее занимаются веб-разработкой либо созданием приложений для мобильных устройств. Здесь их можно понять — рынок мобильных приложений существенно превосходит рынок настольных Linux-систем.

Однако следует помнить, что мир СПО вовсе не ограничивается традиционными Linux-приложениями. Например, в мире существует немало открытых программ для Andoid, а также мобильных версий популярных приложений для десктопа.

Примеры

Приведем примеры работ, предлагавшихся в 2015—2016 гг. студентам НИУ ВШЭ в рамках дисциплины «Командный проект»:

  • Менеджер Bluetooth для LXQt;
  • Android-клиент для системы сборки ABF;
  • Универсальный инструмент подключения к облачным хранилищам (rosa-cloud-connector);
  • Перевод QtRsynct на Qt5;
  • Переиспользование учетных записей в Remmina;
  • Веб-интерфейс для Koji на основе Bootstrap;
  • Расширение форматов файлов, поддерживаемых QMMP;
  • Инструмент локализации desktop-файлов с использованием online-сервисов автоматического перевода.

Среди указанных примеров (да и не только них), интерес вызвали только задачи, имеющие отношение к веб- или мобильной разработке. Из прочих проектов до стадии отправки в апстрим дошел только менеджер Bluetooth для LXQt. С учетом такой тенденции, в будущем мы планируем при выборе целевых проектов сместить акцент с приложений для рабочего стола на мобильные продукты и веб-сервисы. Надеемся, что в итоге подобные задания для студентов принесут пользу как самим обучающимся, так и сообществу СПО.

Примечания и отзывы

Преподаватель ВУЗа как посредник между студентами и разработчиками СПО (Денис Силаков, OSEDUCONF-2017)!.jpg

Plays:48   Comments:0