Вызовы и перспективные направления развития образовательного программного обеспечения (Андрей Черепанов, OSSDEVCONF-2023)
Материал из 0x1.tv
Короткая ссылка: 20230930E
- Докладчик
- Андрей Черепанов
Доклад посвящён актуальным вызовам сопровождения и развития свободного программного обеспечения для образования.
Содержание
Видео
Презентация
Thesis
Актуальные вызовы:
- портирование программ на новые языки:
- переписывание и разработка новых приложений на Rust, Go и NodeJS: можно ли жить без Интернета? Можно, но тяжело. Разработчики на этих платформах подразумевают, что на время сборки должен быть доступ в Интернет для выкачивания модулей. При этом само скачивание часто явно прописано в скриптах и системах сборки (например, в anki2). Для обеспечения воспроизводимой сборки в Hasher сеть недоступна и требуется в пакет включать все требуемые модули (забандливать).
- проблемы забандливания и неявной сборки во время этой операции. Для Rust, Go и NodeJS требуется забандливать по 500-600 МБ библиотек, часть из которых может начинать собираться во время установки забандленного на хостовую машину перед сборкой в изолированном окружении (например, pgadmin4). При этом не факт, что забандленные модули соберутся в изолированной среде.
- С\# — есть ли перспективы? Mono фактически не поддерживается, а dotnet предоставляет только базовые библиотеки без GUI. Проекты типа Avalonia UI находятся в зачаточном состоянии и не позволяют создавать полноценные графические приложения. Разработчики на C\# в этой ситуации начинают делать веб-интерфейсы, превращаемые в десктопные приложения с помощью Electron с диким оверхедом.
- политические и юридические аспекты:
- ограничения доступа к исходному коду и возможности его изменения не позволяют организовать совместную работу и вовлечение отечественных разработчиков в апстримные проекты. Слабое развитие местных проектов СПО.
- соблюдение местного законодательства в части картографической информации и часовых поясов требует доработку программ, связанных с выбором часовых поясов и показа карт.
Перспективные направления развития:
- увеличение влияния робототехники в процессе обучения, симуляции и управления устройствами. Повышение спроса на gz-sim, webots, arduino. Активное использование программного обеспечения для 3D-печати, ограниченное доступностью устройств;
- опциональная установка LibreOffice для возможности использования вместо него WPS Office, OnlyOffice, МойОфис и
R7-Офис;
- упрощение использования стороннего ПО. Доработка GUI для новых версий epm play, разработка плагина к epm play для gnome-software и, возможно, discover.
- разворачивание сетевых служб: расширение перечня служб при разворачивании локальным ansible, возможность не только развернуть, но и донастроить (например, сменить пароль администратора, генерируемый при установке автоматически) и провести процедуру удаления экземпляра службы.