30.09.2020

Линус Торвальдс о проблемах с поиском мэйнтейнеров, Rust и рабочих процессах


На прошедшей на прошлой неделе виртуальной конференции «Open Source Summit and Embedded Linux» Линус Торвальдс обсудил настоящее и будущее ядра Linux во вступительной беседе с Дирком Хонделом (Dirk Hohndel) из компании VMware. В ходе обсуждения была затронута тема смены поколений в среде разработчиков. Линус указал, что несмотря на почти 30-летнюю историю проекта, в целом сообщество не такое и строе — среди разработчиков много новых людей, которым ещё не исполнилось и 50 лет. Старожилы действительно стареют и становятся седыми, но те кто давно вовлечён в проект, как правило, ушли от написания нового кода и занимаются задачами, связанными с сопровождением или управлением.

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

На вопрос об экспериментах в ядре, Линсу высказался, что сообщество разработчиков ядра теперь не может позволить себе некоторые безумные изменения, которые делались раньше. Если раньше разработка не к чему не обязывала, то теперь от ядра Linux зависит слишком много систем.

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

На вопрос о переработке ядра на таких языках как Go и Rust, так есть риск, что в 2030 годах Си-разработчики превратятся в нынешнее подобие разработчиков на COBOL, Линус ответил, что язык Си остаётся в десятке популярных языков, но для неосновных подсистем, таких как драйверы устройств, рассматривается возможность предоставления привязок для разработки на таких языках как Rust. В дальнейшем ожидается предоставления разных моделей написания подобных вторичных компонентов, не ограничивающихся применением языка Си.

Намерение компании Apple использовать в настольных компьютерах и ноутбуках процессоры архитектуры ARM Линус прокомментировал надеждой, что данный шаг поможет сделать ARM более доступным для рабочих станций. Последние 10 лет Линус жаловался на невозможность найти ARM-систему, которая подходила был для системы разработчика. По аналогии с тем, как использование ARM компанией Amazon позволило продвинуть данную архитектуру в серверных системах, благодаря действиям Apple не исключено, что через несколько лет станут доступными мощные ПК на ARM, который можно будет использовать для разработки. По поводу своего нового ПК на базе процессора AMD Линус упомянул, что всё работает нормально, если не считать сильно шумящего кулера.

Про COVID-19 Линус упомянул, что пандемия и режимы изоляции не повлияли на разработку, так как процессы взаимодействия основаны на общении на электронной почте и удалённой разработке. Из разработчиков ядра, с которыми взаимодействует Линус, от инфекции никто не пострадал. Беспокойство вызвало пропадание на месяц или два одного из соратников, но оно оказалось связано с возникновением туннельного синдрома.

Линус также упомянул о том, что при разработке ядра 5.8 придётся потратить больше времени на подготовку релиза, и выпустить один или два дополнительных тестовых выпуска, так как данное ядро выдалось необычайно крупным по числу изменений. Но в целом работа над 5.8 пока проходит довольно гладко.

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

Источник: https://www.opennet.ru/opennews/art.shtml?num=53292

Добавить комментарий