OSDN-UA-2012 (Обзор Стаса Фомина)/Linux on Desktop

From Wiki4Intranet
Jump to: navigation, search

К докладам Камо грядеши, Linux Desktop (Александр Дымо, OSDN-UA-2012) и За что же мы боролись, за что же мы сражались, за что мы проливали нашу кровь? (Алексей Новодворский, OSDN-UA-2012) я решил набросать единый отзыв.

И, заранее предупреждаю, отзыв будет, ну хоть и не совсем в духе Pуслана Карманова, но, наверное жесткий и неприятный.

Оба эти доклада объединял настрой «Нас не хотят. Такие дела. Ну и ладно, мы сделали все, что могли». Это было и в докладе Александра Дымо («Для меня годом Linux Desktopа останется 1999-й, когда я стал этим заниматься») и что более грустно, в докладе главы Альтлинукса.

Все это вызвало у меня реакцию в духе «немогумолчать», и я попытался донести свои идеи-возражения аудитории. К сожалению, регламент конфы давал считанные минуты на обсуждение, в рамках замечания к докладу сформулировать целостно мою позицию, видимо, не удалось, я продолжил донесение своих идей группе заинтересованных в обеденном перерыве, и хотя вызвал некоторый интерес, боюсь, все было воспринято, как «троллинг москаля-виндузятника».

Поэтому сначала пара пояснений:

  • Да, я был в рекламной майке Windows, осталась с какой-то конференции, это было первое попавшееся сверху в ящике, что было не жалко для поезда, планировал сменить на конференции на чистую и запасную, но в запарке не успел.
  • Да, я пару десятилетий пишу Windows-софт (от WinAPI/DirectShow/драйверов, до высокоуровневой Windows-specific автоматизации, писал даже на Visual Basic, вот такой стыд), дрейфуя в сторону веб-разработки, т.е. не совсем беспомощен в серверных линуксах.
  • Да, мне нравится юзабилити Windows 7, я понимаю, какие идеи известных юзабилистов там реализованы, почему многое там просто «сделано правильно, для человека». И знаю, что там фигово, недоделано и т.п. И как это обходить.
  • Да, я скорее придерживался идеи «Linux на сервере, Windows на клиенте, остальное — извращение», но я жил под Linux Desktopом еще в 1996-1998 годах, в Dual Boot[1] Под обе системы у меня был и стек разработки, и TeX-стек верстки (статьи-курсовые-задания). Linux увлекал меня хакерским стеком [2]. Помню тогда, еще в год дефолта смотрел и Linux KDE, и Solaris CDE, и все это казалось весьма вкусным, по сравнению с стандартными 95ми. И хотя нулевые я был строго «виндузятник», ибо нужен был максимальный перформанс, плюс я формировал корпоративные технологические стеки для разработчиков и документаторов, но, несколько месяцев назад, на куче своих лептопов я экспериментировал с Linux desktop-дистрибутивами, чтобы сделать себе оптимальный вебразработческий стек.
  • В общем, я совсем не «антилинукс»-персонаж, и кстати, вполне pro-opensource: стараюсь пользоваться только open-sourсe софтом и веду несколько полезных opensource-проектов.

Теперь я попробую письменно изложить свое сумбурное выступление.

Однако начну с гуманитарщины.

В докладе Алексея Новодворского, использовалась безусловно яркая метафора, можно сказать культурный код «Давид против Голиафа». «Мы были молоды, мы вышли биться с Голиафом, но прошло время и видно, что Голиаф как-то расплылся, куда-то делся, микрософт теперь тоже опенсорс, десктоп вымер в пользу планшетов с инфраструктурой, и в общем, непонятно что делать». Все это звучало так романтично, что у меня это вызвало кросс-ассоциацию с захаровски-шварцевским «Убить Дракона», аж музыкальная тема (см. ссылку) в голове заиграла.

На самом деле, вместо Давида, я вижу сотню Нарциссов, занимающихся художественной гимнастикой/балетом/pole-dancing/конференциями, без малейшего желания подойти и отобрать у Голиафа хоть что-нибудь.

Почему не вижу Давида? Потому, что классические мифы надо знать.

Бой Давида с Голиафом — это не «романтика слабых», «обреченно биться до последнего, умираемнонесдаемся, пусть нас запомнят таким», это четкий, рациональный и результативный расчет.

Размер и возраст Голиафа не имели никакой роли, тут была ситуация в духе «Вы пришли с ножами и битами? ОК. Ваша ошибка в том, что вы пришли с этим хламом на перестрелку».

Бой был просчитан и проведен по плану Далласа Давида:

  • Давид был вооружен оружием дальнего действия[3]
  • Давид отлично владел своим оружием — убивал львов и медведей [1], [2]
  • Давид отказался от бессмысленной брони в пользу мобильности [3]
  • Давид атаковал, чтобы контролировать дистанцию результативного выстрела [4], и выстрелил из удобного для себя положения в уязвимое место противника [5].
  • PROFIT!!!

Никаких чудес, расчет и упорство, смелость и риск.


Теперь попробуем холодными глазами профессионального охотника Давида вглянуть на проблему «Linux on Desktop»[4]. Вглянуть не с позиции нарцисса («как бы нам привлечь-развлечь разработчиков?», «как бы сделать удобную им модель разработки, чтобы базар строил собор, все не ругались и были счастливы»), а с основной продуктовой позиции, «откуда можно взять пользователей? много пользователей? растущий поток?». Ибо без этого, как не стараться, все получится «криво и не для людей». Пользоваться будут гики из гиков, они же, критикой и пожеланиями, определять решения по UX. Нужен поток (т.е. не менее чем, скажем 10% от возможных пользователей) более-менее «нормальных» пользователей.

Правда состоит в том, что «девственных» пользователей, практически незнакомых с компьютером/планшетом/смартфоном почти не осталось. Т.е. да, что-то можно (и нужно!) ловить в школах и даже институтах, импринтинг штука мощная, и стратегически мыслящие компании вкладываются в это изо всех сил — сына-первоклассника через пару недель в школе ждут маки (говорят их продавили по всей москве!). Но делать серьезную ставку на «девственниц» — сомнительная брачная стратегия, ну и в любом случае — это инвестиция на десятилетие вперед. Надо бы быстрей.

Посмотрим статистику «иницированных» пользователей: не надо призывать социологов Левада-центра, достаточно просто смотреть на статистику по операционным системам пользователей для какого нибудь крупного вебпортала, например [6]

И что там видно?

  • Linux Desktop не дотягивает до процента (≈0.6%-0.7%), ну наверно можно дать процент, если выкинуть мобильные устройства. Что это значит? Например то, массового пользователя еще нет, это в основном очень продвинутые пользователи, гики, фрики, и если слушать самых активных из них, можно забрести в глубокий лес с толстыми партизанами.
  • Mac тоже не шибко распространен, это в РФ, на мировом масштабе у него получше, но макюзеры — это убежденные пользователи, это секта, иногда это знак принадлежности к гильдии (дизайнеров/юзабилистов/медийщиков) или сесоциальной группе. Многие при этом могут пользоваться Windows-приложениями, через Parallel Desktop, но продолжать считать себя избранными. Охотиться на них — бессмысленно.

Остаются ровно две группы:

Недоинициализированные
пользовался только планшетом/смартфоном, но вот, понадобилось работать и руками, нужна клавиатура, устройство точного позиционирования (мышь-тачпад), многозадачность. Айпада и просто андроида недостаточно, нужно что-то, попадающее под определение «XXX Desktop Environment»

Гм. не знаю, как оценить, но знаю, что такие есть и будут есть. Огромная ошибка считать, что все, мобильный тренд с планшетами и смартфонами захавает все, включая лептопы! Я убежден, это глубокая ошибка, тех, кто по текущему тренду сделал линейную аппроксимацию, и тупой вывод[5] Надо понимать, что «компьютер» — это сейчас «информационное окно + универсальное коммуникационное устройство». Общение, заполнение документов/платежек, заказ в магазине и переписка в форуме, emailы и социальные сети, и даже разумный стриминг фильмов, с возможностью выбора и оценки — это все, все, все про коммуникацию. Удобную, асинхронную коммуникацию, не требующую изоляции (как для общения голосом), с усиленной визуальной частью, в частности → текстовую. Да, когда-то в нее не верили («люди будут набивать телеграммы, ORLY?»), да, ее популяризировал глухой изобретатель Интернета Винстон Серф, но сейчас, ее удобство — это факт. Также факт, что к символьной коммуникации и текстам, эффективно сводится почти все, … но это отдельная тема… «Информационное окно» — это про активное, управляемое пользователем потребление контента, будь это хоть фильмы, ролики, электронные книги или просто 50 открытых вкладок броузера. Характеризуется частыми переключениями (обход дерева ссылок в глубину, ad-hoc запросы), перемотка видео и т.п.

Итак:

  • Полноценная клавиатура и устройство позиционирования необходимы для продуктивной работы.

Полноценная — это именно не «сенсорная клавиатура», которая чувствует человека, но лишает его этих самых «сенсов» — ощущений взаимодействия (тчорт, как-то опять про се…), а наоборот, дающее ощущения отдачи, задающая ритм, дающая возможность научится печатать вслепую, со скоростью мысли. Все остальные интерфейсы, хоть голосовые, хоть сенсорные, хоть жестовые — никак не смогут заменить ее даже в стандартной офисной коллаборации. Разве что менеджмент выше среднего сможет успешно коммуницировать тыкая в график-дешборд, и командуя голосом «привет компьютер Подать сюда Ляпкина-Тяпкина! Почему … полимеры…?!», или совсем уже низкоIQшные, выражающие себя только тыканиев в «лайки».

Ох, я бы мог много говорить об различных аспектах оптимальности клавиатурного UX, от чисто энергетического до визуального.

Лептоп
мелкая моторика с миниперемещениями пальцев почти без перемещения кистей, взгляд на дисплее, не закрытом и не заляпаном руками.
Планшет-смартфон
«Режим боксера», руки на весу, и держат устройство. Взаимодействие — либо ограниченные свайпы (большими пальцами, по прилегающей к краям области) либо длинные тычки или закрывать и пачкать полэкрана.
  • Нужна настоящая многозадачность. Т.е. хоть какая-то вменяемая логика переключения, и может даже параллельного взаимодействия с несколькими приложениями (смартфоны точно не...). Ну и вообще, производительность, достаточная для уровня «веб+видео», с параллельным просмотром.
  • Размер этого окна не сможет стать меньше 10-12" (если не рассматривать идеи со шлемами), собственно эволюцией более-менее выверен размер бумажной книги, и упасть ниже этого размера без серьезных последствий не выйдет.


В результате, как не крути, получится что-то, похожее на лептоп. Да, это могут назвать «неопланшетом 2.0» с отстегиваемой радиоклавиатурой, ультрабуком, неважно. Не говоря уже о том, что есть хоть чуть повысить требования к продуктивности, когда коммуникация будет требовать сложной верификации (компилирование кодов, моделирование САПР, сборка документов…) то немедленно получится «обычный» лептоп (даже если он по производительности будете бить какой-нибудь суперкомпьютер из ТОП-500 прошлых лет). А собственно все концепции UI должны определяться именно форм-фактором устройства! «Планшетно-смартфонные» интерфейсы также диковаты на лептопах, как и клавиатурно-ориентированные на телефонах.

---

Впрочем, пока стоп о лептопах, это была оценка снизу «представления о минимально разумном компьютере», и я продолжу о них чуть позже.

Ибо, я должен продолжить мысль, и сказать о второй очевидной группе потенциальных пользователей → тех самых 90% Windows-юзеров.

И им есть что предложить, и как раз здесь и сейчас! Несмотря на добротность «семерки» по всем параметрам (особенно в сравнении с предыдущими версиями, от XP и особенно Vistы), есть, как говорится, нюансы, и одна история офигительней другой ©[6].

  • Стандартная схема с непрерывным автообновлением Windows (тонкого руления нет, а отключать нельзя из-за постоянных проблем с безопасностью), приводит к неожиданным проблемам в уже настроенной «программно-аппаратной» системе. Все было хорошо, и вдруг:
    • Пошли BSODы.
    • Стало все тормозить. «Проблемы с DPC» — практически невычисляемое и неизгоняемое проклятие (я сталкивался, несмотря на возню с xperf и кучей системных утилит, диагностику и замену подозрительных драйверов, с перебором всех версий — проблема была неубиваема, а возникла одновременно, с очередным апдейтом на нескольких ноутах).
      • Причем настоящей техподдержки нет, есть телефонная поддержка для дебилов по тупым проблемам, и форумы для самоутешения, где даже самые вменяемые (MVP) ничем не могут помочь, кроме как «у меня таже фигня»).
      • А решение с перезаливкой системы сталкивается с следующей проблемой — «проблемой привязки» — надо помнить ключи и т.п.
      • Не обновляться — не катит, очень неприятный процент уязвимостей именно в ядре системы.
  • Весь этот геморрой с ключами-активацией-дистрибутивами-наклейками выглядит адово архаично. Хранить дома КОРОБКИ от софта? Помнить какие-то ключи? Сфига? Бумажные наклейки с голограммами, LOLWHAT? Все это еще и оскобительно для рационально мыслящего пользователя (типа «обязательно наклейте освященную бумажную иконку стратотерпца Николая Вирусоборца»).
  • Плюс надежность железа кажется становится все меньше, а риски железа больше (лептоп легче сломать, про*ть, меньше ресурс; HDDшки у меня стали дохнуть чаще SSDшек, кудакатитсямир — не пойму). В результате пользователь офигевает от того, что он не может перенести «свой настроенный Windows-мир» из сломанного лептопа в новый или запасной. Какие такие OEM-лицензии? WTF?
  • Управление установкой приложений в Windows — АдЪ и Израиль. Мало того, что нет доверенных путей инсталляции, репозиториев-аппсторов (пока), автоматической инсталляции, так даже масссово нельзя деинсталлировать приложения! Чем пользуются козлы-производители, набивая ноут с Windами адварью, снести которую так геморройно, что многие заливают чистую нелицензионную систему («СборкаЗверь» и т.п.), лишь бы не сидел как дебил, несколько часов с деинсталлятором, нажимая на кнопки «Далее», «Да, уверен», «Да, давайдосвидания» в диалогах. Не говоря уж, о таком возможности, как вести список «мои приложения» и в один клик заливать их на новый компьютер (и соответственно, обновлять и синхронизировать на нескольких машинах). Сейчас это проблему начали решать другие люди, см. например http://allmyapps.com, который мне экономит кучу сил, а в восьмерке будет свой аппстор, но пока — это еще уязвимость.
  • Ну и разумеется, entagled particles problems «Вирусы-Антивирусы». Непонятно даже, от кого больше ущерба в глобальном смысле. Ад странных, детских уязвимостей, огромные индустрии отстроенные на синергии багов в системе, бардаком с установкой приложений, «черноящиковостью» практически всего Windows-софта, в результате пользователь сидит с несколькими антивирусами, убивающими производительность его компа в ноль, долбающих ресурс винчестеров, батарей, постоянно пугающих пользователя, но в результате, все равно «Вы незаконно использовали Windows для просмотра порнографии! Перечислите 1000 рублей на ...» → ко мне регулярно приходят соседи с этими проблемами. После перечисления денег[7]. А в остальное время они все время запуганны «Оно пишет надо обновляться! Оно пишет надо купить Pro версию, иначе система не защищена!». Оно орет ночью «вирусная база обновлена». Вечный блин, бой.
  • Ну и Windows может убить только Windows. Лично я видел «восьмерку» только «через плечо», но куча сетевых отзывов, включая патентованных юзабилистов типа Нормана Нильсена ([7]), утверждают, что там все далеко не слава богу.



BA-BA009A_Tech__G_20121020013542.jpg

Теперь прищуримся, и посмотрим на технику. На каком «десктопе» может «взлететь» Linux-desktop? Краткий ответ — ни на каком. И не надо. Под «desktopом» исторически имелся в виду отдельно стоящий системный блок, с кучей проводов, ну да, обычно он стоит на столе, под монитором или сбоку, ну или в формате minitower собирает пыль под столом. Так вот, атаковать этот класс — бессмысленно. Во-первых, он вымирает.

Жилье и жизненное пространство стоит все больше, использование компьютеров для коммуникации и «информационного окна» становится непрерывным, и внезапно выясняется, что ограничение «все это делать можно только сидя в определенном месте» офигенно неудобное. Часто удобно лежать. Полулежать. Сидеть на кухне, на диване, в парке ну и т.п. И с лептопом, даже гигантских размеров (типа 18.5") все это по-прежнему можно[8], а с дексктопом — увы.

3320_ac48.gif

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

Классический десктоп остается только у тех, кому нужен специализированный софт с максимальной производительностью.

  • Разработчики с тяжелым стеком (компиляция огромных объемов). Корпоратив, продукты, ява/сишарп, си.
    • Вебразработчикам (руби-питоны) это просто не понять.
  • Видеомонтаж
  • 3D-моделирование и анимация.
  • Тяжелые САПР и т.п.
  • Хардкорные игры

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

История из жизни — в свое время, когда я пытался делать видеомонтаж семинаров с помощью стандартных пакетов видеомонтажа, я посещал тематические форумы (свадебные монтажеры и т.п.), с целью прокачать понимание и решить нетривиальные проблемы («А почему XXX Studio не поддерживает Lagarith Codec?»). И был поражен. Ибо условные «свадебные видеооператоры», ничего не понимали в администрировании виндов, у них на все возможные проблемы был один ответ — «Переставь начисто Windows и XXX Studio. Что, у тебя там еще ДРУГИЕ ПРОГРАММЫ? Ты ставил дополнительные КОДЕКИ? Ты сошел с ума!». Еще один косвенный флешбек — этот рецепт напомнило мне 80ые, когда я был аквариумистом (стеллаж аквариумов), рыбы часто болели, я боролся за них, а литература была редкостью. И тогда я на рынке купил книгу по промышленному рыбоводству. Там был большой knowledge-base, c разнообразными описаниями issues («плесень на плавниках, чешую топорщится, жабры вялые»). И одним единственным рецептом — «рыб выкинуть, пруд осушить, продезинфицировать, залить и зарыбить заново».

А теперь такое решение даже не выглядит странным — все-такое, типа коммуникации-документов-развлечений → на лептопе, а тут, настроенная рабочая машина. В офисах, которые страхуются от возможных наездов управления «К» → примерно также, согласованные набор заверенных администратором приложений, никакой самодеятельности по установке, никаких развлечений, ибо повышает вероятность подставиться с чем-то некошерным, от музыки до фотошопа или какой-нибудь игрушки.

А дома, может быть даже наоброт → вебразработка на Ubuntu, а Windows-бокс, набитый графическими картами и адовой системой охлаждения, держится исключительно для игр. Кстати, как раз именно эта область очень даже перспективна → куча Win-игр отлично идет под «Wine+winetricks» или Crossover, лично играл в пятую цивилизацию на убунте.

Плюс тут сторону Linux-а движется Steam, но в целом → тут мало что можно сделать малой кровью, тут все зависит от «замещающих приложений», и все, что можно сделать — ждать их, и поддерживать и пропагандировать, когда они появились[9].

Вот появился Darktable, и появились фотографы, с Linux-ноубуками. Достало управление «К», в регулярных рейдах «за фотошопом» → небольшие типографии и рекламные агенства перешли на Inkscape+GIMP+Скрибус. Но быстро и с нуля ничего сделать нельзя.

Итак, хрен с тяжелыми ящиками, опутанными проводами.

Что же остается? Опять таки лэптопы! Ноутбуки всех размеров, от пятикилограммовых, до нетбуков.

И у них есть специфика, как раз полезная для проникновения «Linux Desktopа»:

  • Да, с одной стороны, лептопы обязаны держать «необязательное» для декстопа оборудование, типа WiFi, часто тачскрин, но:
    • В отличие от астрономически огромного количества возможных комбинаций самособранного оборудования в desktopах, с непредказуемостью проблем в духе «дорогие товарищи ученые, который год подземный стук», набор моделей ноутбуков (читай «комбинаций железа») вполне перечислим:
      • можно оттестировать,
      • составить базу знаний проблем, по каждому ноутбуку. Ну даже без громких слов про «базу знаний» — просто проблемы становятся легкогуглимыми по модели ноутбука и краткому описанию, что дает возможность мигом найти какой-то workaround. Вот свежий пример, я ставил линуксы на HP 2730P, и наткнулся на баг с мерцанием экрана. Тут же выяснил, что надо прорываться к свежим ядрам.
      • да, это не так шоколадно, как разрабатывать под свою собственную единую аппаратную платформу (эппл — читеры), и не так шикарно, когда все производители из кожи вон лезут, чтобы их драйвера работали под твою ОС (хорошо быть лидером, ага), но даже отрицательный результат → «Не пытайтесь ставить на XXX 1234P» — очень ценная информация.
  • Реже встречается сильноспецифические устройства (которые все-таки идут платами к десктопам), и высоконагруженные видеокарты — да, с дискретными видеокартами сейчас не айс[10], но народ бьется за решение, и когда они пойдут в массы — уверен, так или иначе упинается.
  • Гонка за энергопотребление и вес точно приведет к тому, что SSD будут в каждом ноуте! Не пройдет и года, когда это станет чисто выгодней[11]! А это даст не только огромный буст к производительности, решится автоматом куча UX-проблем. Например, совершенно потеряет смысл гонка за «скорость загрузки», если система будет либо мгновенно просыпаться из памяти, либо, на худой конец, если меняли батарею, за десяток секунд[12] точно вытащит всю память с SSD.
  • Лептопы никуда не денутся, наоборот, они скорее всего точно вытеснят ящики в обычных офисах («мобильность!»)
  • Уйдет в прошлое очередь к «семейному компьютеру», в каждой семье их станет несколько. Может даже несколько на человека — будут накапливаться старые, будут лептопы более удобные для просмотра текстов и редактирования фильмов, будут более мобильные, и будет те, которых не жалко, чтобы поставить в ванную смотреть фильмы или развлекать детей.
  • Лептопы не апгрейдятся, а будут, по мере устаревания, дарится менее компьютерно продвинутым родственникам и друзьям.

В общем, думаю, понятна грубая персонализация аудитории, в духе «[бывший] Windows-пользователь с лептопом[ами]», не требующий редких, ресурсоемких профессиональных программ (3DMax, видеомонтаж, и т.п.), на работе — среднеофисный клерк (документы, формы, отчеты, …), дома — потребитель контента + коммуникации.


Что же делать, чтобы отхватить серьезный кусок такой аудитории?

Тут должна сработать классика маркетинга, для компаний, «догоняющих лидера». Нужна максимальная совместимость и легкость перехода.

Разумеется, нужна беспроблемность установки. Правильный линуксдекстоп, должен «без мыла» пролезать в любую щель, т.е. устанавливаться легко, при первой же возможности на любой лептоп ЦА.

Что имеется в виду? Общепринят до сих пор подход с выкладыванием ISO-образов дисков, подразумевая, что пользователь скачает их, прожжет сидюк или дивидюк, и начнет инсталляцию. Так вот, плохие новости — СD/DVD диски мертвы! Их уже почти никто не использует для чего-то полезного, типа бекапов или распространения программ, и если в старом десктопе CD-привод еще есть, то в ноутбуках, их уже с большой вероятностью нет — в мелких их не будет по умолчанию, в крупных, их владелец скорее предпочтет воткнуть второй винт, например большой низкооборотистый HDD в дополнение к быстрому и небольшому системному SSD.

Так что та щель, через которую может линукс вкатиться на лептопы — это USB-флешка, и кардридер (OEM пока не рассматриваю). И путь этот не совсем прост.

Во-первых, дистрибутив должен дать инструкции Windows-пользователю, каким образом, этот ISO-дистрибутив вкатить на флешку или SD-карту. В идеале, наверно надо предоставить вообще, не просто GUI-утилиту с функциональностью diskdupe, но и вообще, сделать «.exe» дистрибутив. Причем реализующий как dd-копирование, так и хитрое разворачивание на FAT32-систему, как это делает Unetbootin.

Почему? Ну вот большая часть моих лептопов, которые были модели HP2730P, глухо зависали, если им воткнуть флешку c загрузочным Linux (или даже USB-CDROM). Я перепробовал все версии BIOS — увы, вероятно разработчики не тестировали, таковы реалии Windows-мира, отформатированного под лидеров.

Блин, тут проблема глобальней, пока я экспериментально выяснил, что все виндовое образопишущее (dd, ImageWriter, …) пишут не так, как кошерный линуксовый dd. Отличаются и в байтах и в длине! Аааа!! На самых разных флешках!! Тут нужен более глубокий рисерч, потом впишу, может быть я даже открыл тайну, почему нет линусков на десткопах.

Так что на мои ноуты я смог поставить только те дистрибутивы, которые были оттестированы на создание загрузчика через UnetBootin (на FAT32). С этим было нормально у убунт-дебианов-мандрив, но вот например, как раз альтлинукс и симлилинуксы — не смогли. Не смог он и через вторую «щель» SD-карточки, инсталлятор офигел, что за странное устройство «/dev/mmc...», вместо ожидаемого «/dev/cdrom» и зафейлился. Несмотря на консультации друзей из ALT-сообщества, у меня так и нет ноутбука с ALTом. Кстати, на эту конференцию я привез ноут с OpenSuSe, который я даже готов был снести ради ALTа, но у Миши Ш. увы, так и не нашлось времени в плотном графике конфы.

В общем, идея понятна — «хоть тушкой, хоть чучелом» — правильный линукс-декстоп должен попадать на лептопы, тестировать надо все методы проникновения, от USB-флешек, до SD-карт.

И да, при наличие финансовых ресурсов (шатлворт[13], ау!), я бы даже раздавал флешки с двумя разделами — один под пользовательские данные, другой, read-only, под live-загрузчик среднеупакованного линукс-декстопа:

  • веб+флеш+ява+офис
  • дисковые утилиты и средства восстановления системы (антивинлокеры, чекдиски, бекап-утилиты_
  • возможность инсталляции.

Тогда возможно, измученный очередным BSODом или винлокером пользователь вполне согласится на предложение «А может ну его нафиг, поставим основной системой?».

Ну и разумеется, при инсталляции нужно плюнуть на GNU-религию, и плотно набить лептоп, всем, что может понадобится сходу именно лептоп пользователю — драйвера WiFi, 4G-Yota/Megafon, и видеокарточек, «все для удобного интернета» — флеш и ява сходу и сразу.

Блин, я ожидал этого, например от Убунты[14]. И был дико удивлен, что флеш и яву надо ставить, причем тот пакет, который нужен, чтобы ява завелась в броузере, даже не находился в их аппсторе, по ключевому слову «java»[15].


Далее — совместимость.

Нужно сохранить максимум привычностей Windows десктопа — причем для этого совсем необязательно копировать дизайн и названия, пользователю как раз пофиг, как называется кнопка — «Start» или «Computer». Важно — чтобы была концептуальная схожесть, ну и использовались самые удобные UX-метафоры из привычных.

О чем идет речь? Ну например, «метафора рабочего стола с иконками» → есть везде, даже на смартфонах. Она не просто привычна пользователю, она еще очень глубоко правильна и интуитивно понятна, на каком-то очень базовом уровне.

s993e91dc6lbgjcv422902.png

Продвинутые пользователи обычно слегка презирают «обычных» за замусоренный рабочий стол, где из под нагромождения иконок не видно нескучных обоев, но у обычных пользователей это и есть базовое структурирование всего, визуальный майндмап, в котором они раскладывают все, документ ли это или приложение (who cares, это такой «object-oriented UX»), отделяя важное от неважного, рабочее от домашнего и т.п… Даже мой пятилетний сын тут же вьехал в идею, придумав удобную ему систему раскладывания иконок по столу.

Так вот, я обнаружил, что по умолчанию в последнем KDE это выпилено. Чтобы поставить ярлык надо сделать кучу настроек (типа «в типе комнате выберите «папка», и то, там как-то не славабогу). Как это можно было допустить, выпиливание самой базовой метафоры? Не понимаю. Просто не было нигде и ни одного «адвоката пользователя», когда видимо, сами разработчики KDE (разработчикам, запускающим все по ALT-F2, понятное дело, иконки только мешали) выплеснули ребенка с водой.

Тут, может быть надо будет еще порассуждать на тему очень качественных решений по UX в Win7, которые не просто взялись с потолка, тут и идеи Азы Раскина (сына великого юзабилиста Раскина), и куча исследований на тему оптимальных меню-иерархий (линейное заруливает двухмерное, сложные меню с категориями не работают, LRU рулят, линейное с фильтрами быстрого поиска рулит), но это тема отдельной статьи или выступления. Неплохи и остальные классические десктоп решения, типа tray.

Ну и самое главное — если к легким отличиям в UI вполне можно привыкнуть (будет ли стартовая кнопка называется «Пуск» или «Компьютер») — совершенно неважно, можно спорить и привыкнуть к более крупным иконкам (Unity), но вот то, что прошито уже в костном мозге пользователя[16] — хоткеи менеджера окон, например, нужно выставлять по умолчанию, не дожидаясь «у нас все можно настроить». Зачем эти различия, не понимаю. К тому же кнопка «WIN» специально прописалась и поселилась на всех клавиатурах. Т.е. тут нужна мода «WinCompatible», так, что из этих 100500 возможных хоткеев KDE, тот десяток хоткеев винды был с аналогичным («WIN-D» → «показать декстоп», «WIN-E» → файловый менеджер, «WIN←↑→» ← быстро гонять/максимизирвоть окна по декстопу. Личная просьба — типографскую раскладку Бирмана мне.

Ну да, на первый взгляд похоже, что я прошу что-то типа Linux XP, но не нужно копировать все, почти все в виндах так себе. Стилистика, обои, кнопка «Пуск» — все это небось запатентовано, ну и вообще, тут боюсь сработает эффект wikipedia:Uncanny Valley — «похоже на человека винду, но зомби невинда». Все это лишнее. Иконки/обои можно менять. А вот метафоры и прошитые жесты ввода → это совсем другое. Это кстати относится и к софту → какого хрена даже в Firefox под Lin/Win отличаются некоторые хоткеи?


И конечно, классический рецепт - «Обработать напильником». Адовое количество нестерпимых (хотя и не считаются критическими) багов юзабилити, заставляющие потерять веру в человечество. Винды - одним движением можно запретить все стандартные звуковые нотификации[17]. Все, больше никто вас не напугает, вы можете слушать музыку, смотреть фильм, или в ночной тишине сидеть с ноутбуком. Но в нет! Пять лет тянется этот реквест в KDE, и конца и края не видно. И самый ужас! Оно орет выключаясь, даже несмотря на активированную Mute-кнопку! Нет, похоже просто любит сбрасывать mute cамостоятельно. Когда я засыпаю, и усыпляю ноут, оно будит всех окружающих! Аааа!


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

Впрочем, для нормальной компании, занявшейся декстоп-линуксом, я бы рекомендовал завести хоть любую простенькую юзабилити-лабораторию. Простенькую — без отдельных комнат с полузеркалами, айтрекеров, и прочей фигни. На самом деле, 95% инфы можно получить просто записью и вдумчивым анализом пользовательских сессий, записанных единой упаковкой (экран, морда, что он нажимает, звуковые комментарии, опционально — вид клавиатуры-мыши). И кстати, такую запись можно делать даже удаленно, так, чтобы юзер был дома, в комфортной среде.

SeminarAssembler для UX sessions.png

Какую-то попытку описанного я видел на http://betterdesktop.org, но там все как-то совсем убого. Т.е. даже мой SeminarAssembler для этого был бы сильно эффективней.

Кстати, айтрекеры (адово дорогая хрень, ̀$40K) малоосмысленны для анализа активной работы пользователя, они имеют смысл только для анализа пассивного поведения на статических интерфейсах, типа «пользователь попал на главную страницу, почему он не кликает на кнопку Купить?»). Более того, тот софт, роликами с которого часто хвалятся продукт-менеджеры на конфах («Смотрите, мы тестируем айтрекером, мы за юзабилити, мимими»), он работает только под IE (похоже анализирует привязку саккад к броузерным контролам). Когда же происходит активная работа, там почти 100% корреляция взгляда («усредненные саккады») с движением курсора. Что легко пишется скринкастом. Впрочем, если бы я делал юзабилити лабораторию, я бы попробовал подключить датчик стресса (типа не сложнее пульсометра, не странная заумь, типа считывания мозговолн EPOC, и относительно недорогой)… при случае куплю на ebay.


Понятное дело, что система нафиг не нужна без приложений, и вроде в линуксе их дофига и больше, и даже есть централизованная/автономная система инсталляции, без 100500 дебильных вопросов.

Убивает только ее визуальная убогость, и фиговая функциональность выбора вменяемых приложений, из этих «дофига и больше» поделок. Классическая проблема грамотного показа и удобного выбора в виртуального продукта!

И понятное дело, весь мир эту проблему решил и решил однозначно — «интернет-магазин», с красивой информационной подачей «продукта» (а не просто строчки «inkscape-dd0-05.634.1-buga-gaga»), с поиском, полнотекстовым и по атрибутам, с обратной связью и рейтингами. То, что в общем, наследует классический «товарный» интерфейс магазинов, и называется «аппсторами».

Короче, сейчас в мире линуксов я пользуюсь http://pkgs.org, чтобы тупо понять, что за дурацкий файл требуется, и где его искать, и скармливаю менеджерам пакетов то, что нашел там.

Но надо лучше — никаких больше унылых косолапых «менеджеров пакетов», которым оставить можно либо консольный интерфейс для продвинутых пользователей, либо просто обслуживание «drag-and-drop» ссылки из linux-аппстора — скачивание, разруливание зависимостей, инсталляция. Как пример, можно привести даже такой узкопрофессиональный репозиторий, как http://marketplace.eclipse.org — репозиторий плагинов к Eclipse — то же самое, «магазин» и перетаскивание ссылок на панель Eclipse для инсталляции.

Все это вполне привычно пользователю, особенно пользователю смартфонов (Google Play, IPhone), да и вообще любому. Кстати, Ubuntoвский аппстор еще очень-очень далек от идеала — нет нормального поиска по атрибутам, при поиске лезет куча муры (какие-то платные журналы на немецком, которых не отфильтровать!), полнотекстовый поиск тоже так себе (фиг найдешь по «java» пакет, что нужен для java в броузере). Но это уже первый шаг.

Не вижу никаких препятствий ни к хорошему полнотекстовому поиску — яндекс и гугл не нужен, Sphinx с русской морфологией зарулит. Впрочем, сам «аппстор» будет тоже в интернете (ну хотя возможны и локальные версии для корпоративных или отрезанных от цивилизации пользователей), так что он еще будет, вместе с отзывами пользователей, проиндексирован и ведущими поисковиками. Кстати, «аппстор», я бы назвал «Каталогом Приложений» и строил одновременно с базой знаний по этим приложениями, что было бы удобно сделать на MediaWiki, т.е. не стал бы рожать отдельную CMS — из нее можно получить крутейшую классификацию, целостную базу знаний, на порядке круче пары уровней грубой классификации и одноуровневых пользовательских тегов».

Но еще ближе гораздо к идеалу мне кажется http://allmyapps.com, когда запоминаются персональные списки приложений для быстрого развертывания на любом новом компьютере. И чтобы два раза не вставать — разумно было бы помнить настройки. Ну по крайней мере, какие-то базовые, типа тех же горячих клавиш и т.п. (расположение окон → наверно лишнее).

Можно и усовершенствовать feedback, работая на поднятие культуры пользователей — вместо тупых отзывов и оценок, интегрированный трекинг проблем и решений. Учет версий и конфигураций…

Что касается денег, ибо «магазин» вроде как про это, то не готов обсуждать, взлетит ли именно коммерческая платформа магазина. Но тут можно попробовать разные модели — и donation с учетом кармы и credits, типа как во всяких http://kickstarter.com и http://boomstarter.com. Говорят, что хотя линукс-пользователей сильно меньше, донейтят они сильно активней...


И кстати, об управлении самим компом. Меня дико выбешивало, что в некоторых дистрибутивах было две точки входа для настроек — отдельно настройки системы без Window-менеджера, отдельно — настройки Destop Environment. Это какой-то ад. Т.е. тут даже дурацкая классическая Win Control Panel заруливала до неузнаваемости. А уж GodMode удобней еще на порядок.

standards.png ©

Да, я понимаю, что стеки Gnome/KDE/ и прочие DE дико разные, плюс еще в отдельных дистрибутивах пилят отдельные интерфейсы настроек, в общем, я никак не могу удержаться и предложить Единый И Окончательный Интерфейс Администрирования.

Да блин, надо плюнуть на все эти Gnome/KDE… абстрагировать модель основных настроек, относящихся к устройствам ввода и вывода, плюс общим свойствам ввода. Т.е. все эти раскладки клавиатуры, настройки мониторов, списки оборудования…, и даже клавиши управления окнами — высадить на веб-интерфейс. Совершенно agnostic, по отношению к тому, что там — гном/тролль/кде/xfce, при этом, неплохо бы все это как-то хранить в персональном облаке пользователя (ну хотя бы настройки клавиатуры — это точно общее). И кстати, чтобы два раза не вставать — все остальное администрирование туда же. Пользователи, сервисы и т.п. DE остануются только настройки свистелок («стиль анимации», «кубы?»).

Веб-интерфейс — идеальный интерфейс для комфортной настройки — вместо убогих маленьких окон с кучей закладок, бесконечно вложенных деревьев «реестров» и классических окон настроек — длинные, легкочитаемые страницы, с поясняющей инфографикой, крупными контролами, ссылками на более полную документацию (может даже с видеороликами?). И все это коммуникационно оптимально, в отличие от требования тяжелого канала для трансляции VNC настроек, либо отваливающихся ssh-сессий. В некотором смысле, что-то похожее, я погуглил, вроде уже пилит OpenSUSE → WebYast. Насколько оно круто, я еще не вкурил (что-то оно у меня на криво встало, поломало rpm-зависимости, в общем, так и не попробовал), но я думаю, как вебпанели (WebMin, CPLEX и т.п.) дали резкий буст юзабилити линукс-серверам («как перестать боятся линукс и начать жить», «вебразработчик и админ с 6 класса»), так и тут, вся черная магия знания структуры «/etc» запросто выпилится, при том, что пользователь при этом не будет заложником конкретной DE.

А уж какие возможности удаленного администирования в духе «настрой компьютер маме/бабушке» — с этим справится уже целая армия школьников от второго класса и выше.


Управление активностью лептопа должно быть из коробки! Я уже писал, что гибернация просто обязана быть, именно она выносит нафиг все проблемы быстрого старта, быстрого запуска приложений, и т.п. → какая разница, если у тебя годами все работает без перезапуска? ФантомОС и победа над файлами уже здесь → только вкладки броузера и открытые документы, все состояние хранится, мгновенно оживает из SuspendToRam, и с копеечной задержкой поднимает все из SSD.

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

В линуксе гибернация через uswsusp/s2both более правильная — память сбрасывается и на диск, и происходит SuspendToRam. Если разряд таки произошел (ну или батарею сменили), то происходит дегибернация, т.е. даже в худшем случае ничего страшного (вверху я уже прикидывал, десяток секунд для SSD), а в среднем/оптимистичном — проснется со скоростью телефона.

И разумеется, по умолчанию надо сажать легкий сон на закрытие крышки, а гибернацию (s2both?) на кнопку выключения. Перезагрузка для нормальной надежной системы требуется раз в год, ну а если зависание случится, то даже по телефонам обычный пользователь знает, что надо либо долго ждать на кнопку выключения, либо вырубать и вытаскивать батарею. Альтернатив такому варианту нет. И что я вижу в KDE (и кстати, вроде и в виндах тоже)? Индивидуальные настройки поведения кнопок для разных планов питания! Аааа! Зачем?!! Непредсказуемое поведение кнопок и механических действий при плохоформализованном неочевидном состоянии компьютера?

Но, кстати, в юзерфрендли Убунте еще хуже! Там гибернацию выпилили нафиг! (c какими-то многобукв объяснениями, которых я даже читать не стал). Пришлось ее впиливать обратно, хоть и не приходя в сознание, гуглом, но точно помню, что хоумюзер не потянет — пришлось править несколько /etc-файлов.

Так потом, пришлось потрахатся, чтобы подключить «гибернацию по кнопке». Пришлось впиливать какие-то gnome-config-tools, gnome-tweak-tools, копаться в каком-то реестре… здравствуй «WindowsTweak» и «Тайные секреты Реестра». Что у этих шатлвортовских юзабилистов в голове?


Про очевидное, что типа железо должно поддерживаться максимум из коробки, а если нет — как-то в духе plug-and-play искать драйвера в инете, скачивать и ставить вменяемые настройки по умолчанию, даже не хочется говорить. Но придется сказать пару слов — я просто офигел, когда выяснил что в дебиане по умолчанию не работает нифига тачпад, надо включать специальную тулу, а в каком-то KDE-дистрибутиве, у меня не работали клики по тачпаду, потому что по умолчанию в настройке «клик по тачпаду» был ни на что не замаплен.

Ладно, что-то короткий текст у меня превратился в классический список жалоб на линукс.

Попробую сконцентрироваться и закончить мысль, что есть правильный «развлекательно-коммуникационно-креативный лептоп для бывших windows-пользователей».

Да, именно в таком порядке. Войти в сеть любой ценой (пусть будут все блобы для железа, и для видеокарточек, если даже нет open-source драйверов). Пусть стримится и играется все! Где — через HTML5, где через Flash, ну и почти все остальное умеет играть VLC! Натяните на него какой-нибудь гламурный скрин, чтобы желающие гламура не сменили бы его сдуру на что-то недофункциональное.

И пусть все стримится — телевидение, ютубы, файловохранилища домашних сетей, локальные торрентокачалки домашних NASов, семейные компьютеры… И с этим сейчас есть проблемы — и локальная авторизация Samba/CIFs сетей, чтобы можно было ad-hoc броузить домашние ресурсы, и чтобы файловые менеджеры передавали в VLC только URL с авторизацией, вместо тупого выкачивания и запуска. Мне пришлось в Ubuntu заводить специальные Nautilus Actions, чтобы корректно передавать MRL напрямую в VLC, без промежуточного скачивания, и все же, получилось более удобно, чем аналогичных куча экспериментов с Win (пробовал netdrive/webdrive и т.п.).


Ну и наконец, последняя часть, креативная — нужена поддержка существующих сервисов синхронизации, а ля dropbox. Впрочем, dropbox (в виде kfilebox) и spideroak уже взлетели, неплохо бы и остальные, причем именно те, которые уже есть и для Windows/Mac — не надо делать свой, работающий только под линуксом — нужна именно свобода всегда отказаться от использования Linux On Desktop, а если пользователь видит, что под любыми системами его файлики в порядке и синхронны, да и вообще нечего бояться их потери, вопрос, на чем работать вообще станет неважным («ну да, тут линукс, а тут мак, а тут еще винда осталась»).

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

А, и откуда в линукс-теме могут взяться интересные деньги? — Хрен его знает, честно говоря. Но совершенно точно, сначала должны появится пользователи. Раз в десять больше. А там будет видно, что и как можно монетизировать.
  1. C E18n, которое было у меня Window-менеджером и по Red Hat, и под WIN95.
  2. Моя страничка из 90х, использовал эту штуку для сбора паролей в нескольких организациях, тогда все было проще, почта ходила по POP3, и такие немудренные фокусы казались эффектными.
  3. Cкорее всего это была пастушья праща-трость, судя по «что ты идешь на меня с палкой?» [8]
  4. Допустим, мы делаем какой-нибудь BolgenOS в России, и реально хотим, чтобы ей пользовались (а не МСВС «есть-отставить» для военных).
  5. Да, движуха с «Ubuntu Raring Ringtail», например. А вот Микрософтовский движ как-раз не такой примитивный, они хотят накрыть все, от смартфона до десктопа, получится ли у них — пока неизвестно, вполне возможно что будет «не рыба ни мясо», клавиатурных пользователей будут раздражать планшетности, а планшетников — остатки десктопности.
  6. Да, я знаю стандартный шапкозакидательский дискурс «вендекапеца», и говорю только о том, что выстрадал лично или в личных наблюдениях за окружающими
  7. Да, я проверял, они действительно ее смотрели. Причем никакую, найденную в первых строчках поисковиков.
  8. У меня есть и такой, проверял. На нем я особенно люблю смотреть лежа комиксы
  9. Знакомые, которые пробовали линуксовые стим игры вполне довольны, надеюсь, стим не ограничится убунтов (фиг знает, может у них аффилированность)
  10. Я даже не вкуривал, что за бамблби и оптимус, пока сын не забормотал то, что я слышал на линукс-форумах.
  11. Не говоря уж о проклятиях со стороны Линуса
  12. Ну вот вся память 4000МБ / 300 МБ/c = 13 сек
  13. Где какой-нибудь прогрессивный российский олигарх? Хватит спонсировать стартапы с социальными сетями, дайте денег хоть на ProhorovOS, пофиг, как называется дистр, важна сама идея, что винда необязательна.
  14. Ну это вроде как общепризнано самый дружелюбный дистрибутив
  15. Правильный ответ: «icetea». «Сынок, это нельзя понять, это можно только запомнить». ©
  16. Это не гипербола, действительно, исследования энцефалограмм геймеров показывают, что автоматическая клавиатурная активность реально сидит в позвоночнике.
  17. Ну, понятное дело, есть дебильные софтины, которые таки проорут в ночи "вирусная база обновлена", но в остальном - все.