4. Разработано для разработчика

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

Однако в мире линукса этот принцип часто нарушается: проекты обычно начинаются как игрушка для одного человека. Он делает всё сам, и поэтому интерфейс не нуждается в том, чтобы быть «дружественным по отношению к пользователю»: пользователь и так знает всё, что нужно знать о своём софте. Vi — хороший пример программы, нарочно созданной для пользователя, который уже знает, как она работает. Теперь, бывает, новые пользователи перезагружают компьютер, потому что не знают, как ещё можно выйти из vi.

Существует большая разница между FOSS-программистом и большинством коммерческих разработчиков софта: программы, которые создаёт FOSS-программист — это программы, которые он же и собирается использовать. Значит, хотя конечный результат может быть поначалу не особо «комфортным» для пользователя-новичка, он может предполагать комфортное пользование в дальнейшем, ведь софт разработан тем, кто знает, что нужно конечному пользователю, — он сам является конечным пользователем. Эта ситуация сильно отличается от коммерческой разработки ПО: там программисты пишут программы для других людей и не являются реальными конечными пользователями.

Таким образом, хотя vi имеет ужасно непривычный для новичков интерфейс, он широко используется сегодня, потому что тому, кто однажды познал этот интерфейс, становится понятным всё его великолепие. Firefox был разработан людьми, которые регулярно серфят по Web-у. Gimp был сделан людьми, которые используют его для работы с графическими файлами. И так далее.

Интерфейсы программ под линукс для новичка немного похожи на минное поле. Несмотря на всю его популярность, vi никогда не станет выбором неоперившегося пользователя, который хочет по-быстрому внести несколько изменений в файл. И если ты используешь определенный софт на ранних этапах его жизненого цикла, элегантный дружелюбный к пользователю интерфейс можно найти разве что в списке ToDo. Функциональность — всему голова. Никто не разрабатывает потрясающий интерфейс первым, а потом добавляет функциональность шаг за шагом. Сначала создают функциональность, а потом постепенно улучшают интерфейс.

Итак, во избежание проблемы 4, ищи софтвер, специально предназначенный для облегчения пользования новичками, или прими как данность, что некоторое ПО имеет более крутую кривую обучения, чем та, к которой ты уже привык. Если ты будешь жаловаться на то, что vi слишком сложен для нового пользователя, ты будешь высмеян как человек, который за деревьями не увидел леса.