Однажды я смотрел видео либо о Gentoo, либо об Arch, либо в принципе про проблемы Linux-дистрибутивов. В нём я услышал мнение, которые спустя несколько месяцев вновь появилось у меня в голове. Я бы хотел показать, почему считаю это мнение отчасти неправильным.
Мнение из видео (цитирую на память):
> В Linux-сообществе наличие Handbook считается почему-то плюсом для дистрибутива, хотя так быть не должно. Вот, Windows, разве кто-то ищет документацию по этой ОС? И с Linux должно быть так же, всё должно быть интуитивно понятно без хендбуков.
Вчера это мнение вновь оказалось в моей голове по двум причинам:
1. Я очень активно занят настройкой минималистичной ОС (это CachyOS, Arch based), все диски зашифрованы, для входа в систему ly, композитор picom, оконный менеджер i3, панелька polybar (думаю, что именно и как буду в ней менять), все утилиты преимущественно консольные, за редким исключением, из файловых менеджеров midnight commander. В процессе настройки я не раз обращался к YouTube, Arch Wiki и DeepSeek (про языковые модели как-нибудь в будущем тоже напишу, потому что некоторые люди, как мне кажется, слишком сильно полагаются на них, чего делать не стоит, ответственность за Вас ИИ не понесёт).
2. Именно это мнение вспомнилось мне из-за преподавателя с факультета ФН в МГТУ им. Баумана. Он отличался тем, что на лекциях по аналитической геометрии иногда писал огроменный и сложные выражения, после чего говорил «ну, доказательство я расписывать не буду, поскольку тут всё очевидно и интуитивно ясно». Надо ли говорить, что даже выражение стоило бы объяснить, не то что доказательство... Да, мы по идее сами должны были знать математические кванторы и следить за ходом мысли лектора с самого начала пары. Вот только думать тяжело и хотелось бы времени подумать, а препод, сказав «очевидно и интуитивно ясно», стирал выражение с доски и в моей голове не осталось вообще ничего, что для него было «очевидно и интуитивно ясно» (а вот то, что ему было не совсем понятно, я немного запомнил).
* * *
Перейдём непосредственно к Linux и документации к нему.
Хочу обратить внимание: я не согласен именно с тем, что хорошая документированность не должна быть достоинством дистрибутива. Должны ли дистрибутивы быть интуитивно понятными пользователям Windows — другой вопрос, о котором я не хочу рассуждать.
Сперва я бы немного раскрыл проблематику словосочетания "интуитивно понятный". Как видно из моего воспоминания 2, у разных людей разные вещи очевидны. Давным давно писать команды в терминале было очевидным, а ПАО «Эппл» делало программу, обучающую обращаться с манипулятором «мышь». Кому-то хочется открывать директории двумя кликами, кому-то одним, кто-то считает, что исполняемые файлы должны исполняться по двойному нажатию, кто-то считает это небезопасным. Кому-то проще использовать напоминающий Android и macOS GNOME, кому-то — напоминающие Windows Mate и KDE (отзывы реальных людей если что). Кому-то очевидны сочетания клавиш vim, а кому-то — сочетания клавиш в Emacs.
Более-менее все сходятся, пожалуй, в том, что в «интуитивных дистрибутивах для новичков» всё должно быть реализовано через GUI, все действия, которые можно выполнить автоматически, должны быть автоматизированы. В остальном же единого и общепринятого ответа на вопрос «что наиболее интуитивно?» не существует. Да даже крупные компании, такие как Microsoft, Apple, Google, проводят исследования, но всё равно часть пользователей не считает их нововведения позитивными или интуитивными.
Небольшой промежуточный вывод: к интуитивности можно стремиться, но для разных людей разные вещи кажутся интуитивными.
* * *
Я понимаю, что автор видео имел ввиду не «не надо заморачиваться над документацией», а «надо тратить больше ресурсов на то, чтобы он был интуитивно понятным», хотя, разумеется, на мой взгляд это не какая-то обязанность разработчиков. В конце концов, никто не жалуется на Windows Server в редакции Tiny Core.
И да, я соглашусь, что иногда какие-то вещи могут не решаться в линуксовом ПО годами. Разумеется, ОС в первую очередь должна служить прикладным задачам, а её настройка и "оптимизация" для большинства пользователей не должны быть самоцелью.
И тем не менее документация очень важна.
Я понимаю, что расписывание «Перед Вами появится рабочий стол, представьте, что это Ваш настоящий рабочий стол, Вы можете положить на него бумаги (файлы) и складывать их в папки...» — это не самая полезная затея. Но чем реже используется какая-то функция, тем меньше о ней написано.
Более-менее везде написано, как настроить автоматическое монтирование внешнего щапоминающего устройства при загрузки системы через редактирование файла /etc/fstab
Многие рассказывают о том, как шифровать диск. Но вот информацию о том, как настроить автоматическое монтирование зашифрованного диска после загрузки найти гораздо труднее. Всё ещё не трудно, но её гораздо меньше, даже на Arch Wiki не упомянуто о том, что надо писать luksAddKey, этой строки в 2 статьях по теме вообще нет (других я не читал, вполне вероятно, где-то ещё на Arch Wiki это есть, читал на английском, да).
И это был на самом деле очень маленький пример. А таких много: почему mtpfs не работает, а go-mtpfs работает, почему при попытки копировать захват экрана flameshot в сессии i3 вылетает (до сих пор вроде issue на GitHub есть), почему midnight commander не умеет по умолчанию паковать zip из menu (f2), почему unzip -P password
a.zip -d Dir не работает, а 7z x
a.zip -oDir -ppassword сработает... Это всё какие-то мелочи, но когда-то кто-то вдруг столкнётся с чем-то подобным, будет не лишним иметь под рукой форумы, ютубы и вики.
То есть, я хочу сказать, что чем глубже пользователь погружается в особое, нестандартное использование своей ОС, тем больше документации и знаний ему, вероятно, потребуется. Недокументированные вещи на этом уровне проигрывают.
Так что делать документацию важно и полезно, кто-нибудь наверняка почитает, кого-то спустя 10 лет, может даже спасёт.
Поэтому я считаю, что хорошая документация — действительно преимущество любого дистрибутива. Впрочем, в случае с Linux очень многие вещи по сути похожи везде... Но специфические для ПО вещи точно нужно документировать. Вот.