Конференция OSDN-UA-2012
Как-то задолго до конференции с длинным и плохосокращаемым названием «Всеукраинская конференция разработчиков и пользователей свободных программ» пообещал ее организатору, Мише Шигорину, приехать и записать. И очень хорошо, что заранее — ибо запланировал, и несмотря на разные обстоятельства, долг победил.
Впрочем, формат конференции был ИМХО, наиболее удобный — бесплатно, без понтов, однодневная (не надо гостиниц, ночной поезд туда-сюда), и даже удобная для сьемки одним человеком — ибо один трек.
Отчет с ревью докладов, описание бытовухи и прочих проблем еще последует, а пока, для заинтересованных, вот сюда собираются и падают драфты видео: Category:OSDN-UA-2012
Ну и соответственно — если видите косяки, пишите мне.
Отчет-ревью ниже.
Contents
Бытовые заметки
Собирался в спешке, билеты остались только на молдавский транзитный поезд. Впрочем, это даже ОК, попались интересные попутчики, семейные гастрарбайтеры из одного известного рублевского ресторана, с кучей еды оттуда же. Было вкусно и интересно, обсуждали как инсайд рублевской жизни, так и общие проблемы в воспитании детей. Правда пришлось согласится на распитие молдавской водки (сервис от проводника), которая, кстати, несмотря на адов вкус и запах, оказалась ОК → т.е. на следующий день был вполне в трезвом сознании.
На вокзале сделал грубую ошибку, решил выпендрится и согласился на таксиста, зазывающего с перрона. Он выглядел как типичный местный (украинец)! В результате, этот дебил не смог найти адрес (с распечатанной картой!), кружил минут 40, завез меня за 5 километров от цели, и мне пришлось битый час плюхать пешком с тележкой. Ну что же, купил опыт, недорого, больше никогда.
Потом я уже выяснил, что адрес был в паре станций метро по прямой от вокзала, и смысла в такси не было никакого (тогда я просто доверился организаторам, которые рекомендовали именно такси).
По организации — это верх оптимальности, у организаторов бюджет был в несколько сот раз меньше коммерческой IT-конференции, из серии тех, что проходят в Digital October, Инфопространстве или навороченных отелях, однако самое важное — было:
- Добротный зал (да, один, но в этом и фишка — все доклады одним треком, не распыляя аудиторию).
- Звукоусиление
- И даже видеосьемка (вот, я приехал, и был еще один парень с одной камерой)
Технические тонкости
Кстати, о видеосьемке. Расскажу некоторые моменты моей технологии.
Я притащил пару (или даже три) камеры, фотоаппарат, кучу штативов ко всему этому, пару ноутбуков, диктофон… Да, не все пригодилось, использовались ноутбуки организаторов, диктофон был без БП, и на все время его не хватило, так что звук его не использовал, камера одна была в запасе, одна снимала зал, одна докладчика, а вот фотоаппарат — вполне пригодился.
Это кстати, была достаточно новая моя практика — дублировать видеозапись экрана на фотоаппарат (в дополнение к скринкасту).
Во-первых, это спасало от нерадивых докладчиков со своими ноутбуками, игнорирующими призывы организаторов и меня лично о качественной записи («какие такие скринкасты?», «не надо, от него будет тормозить демонстрация моего продукта», «наверняка из-за вашего скринкаста глючит моя прези-презентация»…). Все, больше никаких метаний перед докладом в попытке срочно запустить запись экрана под неведомую систему, и потом молиться, чтобы оно не померло (чего только не было, даже BSOD на Маке).
Во-вторых, это решало проблему «лазерных указок». Это важно для нагруженных диаграмм, когда докладчик, выведя плотную схему архитектуры, минут 10 водит по ней лазерной указкой, поясняя моменты. Разумеется, чистый скринкаст этого не передаст. Обычно, при организации я всегда пытаюсь организовать ноутбук с пером, чтобы можно было и указывать на экране, не отрываясь взглядом от публики, и рисовать там же, ну, или, если докладчик любит бродить — хотя бы вручить ему трекбол, чтобы указывать курсором (специально ставлю большие, или использую специальный софт для «гало» вокруг курсора). Но увы. Не всегда это срабатывает, дуратская привычка к лазерным указкам берет свое, аргументы «потеряем запись» не работают — «Шо за проблема? Ты же пишешь скринкаст? Что, твой скринкастер не может записать лазерную указку? Отстой!» — и это какбэ IT people.
С отдельной внешней записью, эта проблема становится решаемой. По уму, конечно, руки чешутся попробовать OpenCV для распознавания координат лазерных указок, чтобы потом, визуализировать указание на скринкасте, но когда эти руки еще до этого дойдут… А вот переключить на фотовидеозапись, или пустить ее параллельно скринкасту — вполне работающее решение. Видно и что указывают, и можно вполне разобрать детали на скринкасте.
MiniDV2AVI/Todo/Extract milliseconds timestampt from DV capture
Далее, ревью самих докладов.
Прикладная разработка
0MQ — Сокеты на стероидах (Сергей Гулько, OSDN-UA-2012) — на конференции посвященному open-source, практически единственный доклад про перспективный open-source фреймворк для разработчиков, причем перспективный и трендовый (даже на «моем» последнем ADD был доклад из харьковского мирантиса «Сравнение AMQP и ZeroMQ»).
Докладчику удалось подчеркнуть крутитизну фреймворка — с одной стороны, рубится наравне (и даже превосходит) такие дорогие вендорские low latency messaging systems для финансового корпоратива, как TIBCO/IBMMQ, что вроде как неудивительно, ибо инженерно, ZeroMQ вроде как второй подход к снаряду той команды, которой IT-сообщество (включая крупные банки) подрядило сделать открытый FOSS протокол/фреймворк для скоростного мессанджинга (первый был — AMQP, который по мнению авторов 0MQ, зарос бюрократией и стандартами).
Бенчмарков не видел, но отдельные факты, типа «передача через 0MQ эффективней чем, через TCP» звучит адово фантастично, в духе «Но нельзя же двигаться быстрее скорости света! — Ага, поэтому в 2020 году наши ученые увеличили ее ©Футурама».
С другой стороны — офигенный универсальный протокол для всего, даже не хайлоада, просто сделать универсальную передачу данных между распределенными модулями любой софтины, на уровне повыше чисто-сокетов, типа Google ProtoBuf, но даже чуть пониже. Возможно он уже работает даже в вашем ноутбуке! В моем например да — «ipython notebook» использует 0mq.
FOSS-продукты и решения
OpenSCADA 0.8.0 LTS (Роман Савоченко, OSDN-UA-2012) — О проекте OpenSCADA. SCADA-системы, наверно тот самый класс промышленного софта, который должен быть в FOSS в первую очередь.
- Это и необходимость верификации кода, чтобы не было дыр, которыми можно воспользоваться для организации промышленных диверсий (типа Stuxnet, и да, «security by obscurity» не работает). В распространенных вендорский SCADA-системах, все очень неочень, и безопасным может только в случае «полной изоляции периметра». А надо бы все на открытом (начиная с BIOSа, чтобы не было закладок) стеке.
- Внедрение вендорских SCADA-систем — дикое мучение для автоматизаторов с черными ящиками, такое, что многие начинают писать свои лунапарки.
- Ну и теоретически — в этой области нет гонки технологий, большая часть железа живет десятилетиями, куча стандартов устоялась, архитектура (шины и т.п.) и подходы к интерфейсу выяснены (где нужен интерфейс с быстрой реакцией, где достаточно веб-интерфейса, как визуализировать промышленные схемы).
Осталось понять, таки подвинуть к открытым платформам всех — и потребителей, и автоматизаторов (чтобы они перестали писать свои велосипеды). Кажется оптимальным призывать государство с требованиями «стандартизации на базе открытых стандартов», но есть ощущение, что делать это нельзя («благими намерениями государства дорога ведет только в ---»). По уму, надо пересаживать сообщество специалистов по АСУТП, но тут возникает обычная проблема пересадки Win2Lin (а почти все вендорские скады на Win, и автоматизаторы соответственно тоже сильно привыкшие), плюс проблема расширения-доработок → автоматизаторы не смогут писать на настоящих C, скорее всего, а возможностей JavaLikeCalc может не хватить. Тут бы я как-нибудь подумал о системе плагинов на Python, например.
Виталий Липатов — явно сторонник Radical Honesty (аналог Eli Loker из «Lie to me»), и весь доклад должнен стать кейсом для маркетологов, «Что будет, если вы пошлете делать рекламный доклад честного человека».
- «У нас появился отдел маркетинга, ну и он решил, что надо рекламироваться на конференциях. Почему-то послали меня»
- «Мы стали внедрять линукс, и обнаружили, что он никому не нужен».
- …
И все это, практически весь доклад, виновато смотря в пол, и не меняя первый слайд…
Вообще ребят даже как-то жалко - они прокладывают путь Linux Desktopу в mini-корпоратив, там где, в отличие от «обычного, жирного корпоратива» денег немного, и перенося туда, с помощью своего прокачанного Wine, windows-софт-монополист, типа «бухгалтерия-документооорот-справочник законов» (1С, M.E.Doc), причем, перенося так, что под Linux даже увеличивается функциональность («клиент просил сделать поддержку дуплексной печати, мы сделали — оказалось, что в оригинале, под виндами оно и не работало» → я думаю, что эти ребята справились бы и с этим кейсом). Так вот, они прокладывают путь, приучают пользователей к Linux Desktopу, формируют спрос и рынок, после чего, авторы этих софтин начинают делать нативные Linux-версии (аннотирована Linux-версия 1C), что какбы, подрывает кормовую базу.
Остается надеятся, что процесс наберет критическую массу, и миникорпоратив таки начнет массовое движение под Lin («к черту вирусы, проверки Win-лицензий управлением K, и ваще»), и Etersoftу пойдет большой поток, даже несмотря на то, что авторы софтин, обнаруживших linux-рынок, будут выпускать новые нативные версии.
Еще раз о бесплатном сыре (Андрей Бордунов, OSDN-UA-2012) — несколько обзорные размышления на тему «на чем можно зарабатывать в open-source», в основном, к сожалению, на опыте огромных проектов, типа Mozilla/Linux/… . Увы, в целом все выглядит не очень утешительно — крупные проекты живут за счет крупного вклада больших корпораций, и тут же становятся сильно бюрократизированными — тяжело протащить свой патч. Мелкие проекты, которые вообще just for fun, вообще не очень заинтересованы в контрибьюшне.
Ну и хотя говорятся классические правильные слова, про контрибьюцию сообществом патчами и тестированием, по опыту же моих знакомых с средними коммерческими open-source проектами (TightVNC, Sphinx), увы, не стоит ждать интересных патчей, или надеятся, что сообщество отловит баги. Единственный бонус — PR.
Как-нибудь надо будет поучаствовать в разработке коммерческого open-source проекта, может все станет понятней.
Intel Open Source Technology Center. Немного слов о нас и наших проектах (Андрей Шевченко, OSDN-UA-2012) — «Мы не только компания, которая делает микросхемы, или сажает баги в микросхемы». Контрибьютим в L-ядро, в гипервизоры виртуализации и т.п. Куча софтверных проектов с «зеленым девизом» — экономия энергии и т.п, на что из зала резонно заметили, что для этого проще поменять архитектуру («зачем гальванизировать x86, есть же ARM…» — «я в Nokia с N9000 и ARMами на*лся»).
Разумеется мобильный движ — Tizen, Yocto, …. Хотя странно, что Yocto они приписывают себе, мой одноклассник, который теперь топ-менеджер в Mentor Graphics, говорил, что Yocto Project прикупили себе именно MG.
Desktop/Mobile OS's
Mobile
Firefox OS (Тимофій Бабич, OSDN-UA-2012). Вообще-то, я этот доклад пропустил, по причинам описанным в разделе «OSDN-UA-2012 (Обзор Стаса Фомина)#Трудности перевода», но так как мне захотелось высказаться на тему FF&OS, а писать в духе «я Пастернака не читал, но…» не хотелось, то да, посмотрел в свою собственную запись.
Краткий спойлер доклада: Firefox OS идет на мобильные ARM-девайсы, система из трех очевидных уровней:
- Gonk
- линуксовое ядро, выставляющее дальше абстракции для железа
- Gecko
- старый добрый прокачанный HTML5&JS движок FF
- Gaia
- «мобильный десктоп», полностью HTML5-ый.
Никакого нативного кода, чистый HTML5/JS.
Прорываться на плотно забитый мобильный рынок собираются с помощью своих производителей в Бразилии.
Что тут сказать? Идея романтичная и благородная, как и давно пробуемый подход к унификации расплодившихся платформ на базе HTML5, может быть и взлетит, или, по крайней мере увидим четко, в чем ограничения такого подхода. Фиг знает, сможет ли оно на этом стеке эффективно работать с железом — камера-гироскопы-компасы-акселерометры, чтобы показывать дополненную реальность? — то, чего все ждут от продвинутых мобильных устройств. Или это будет очередной тормозящий квазисмартфон с гламурными иконками?
Но я бы, раз пошла такая пьянка, хотел бы воспользоваться случаем и высказаться на тему приоритетов FF, и собственно доклад я смотрел, чтобы получить это моральное право.
Mozilla, как сообщество и компания — мощнейшая организация. Под тыщу сотрудников, огромное коммьюнити, вот как раз на конференции хантили в украинский центр разработки.
И меня дико угнетает, со всеми этими планами покорения планшетов, они не замечают, что у них, несмотря на полное отсутствие стратегии и поддержки, сформировался настоящий мультиплатформенный Firefox Desktop OS. Но косой и недоделанный, причем недоделанный на жалкие копейки, по сравнению с затратами атаки на «новые рынки».
Да, я имею в виду Firefox + инфраструктуру плагинов (почти «аппстор»). То, что дает возможность вообще плюнуть, на то, стоит ли там линукс, виндовс или что еще, когда 99% времени ты проводишь в броузере.
- Переключение приложений → переключение вкладок.
- Проблема юзабилити «непонятных пользователю файлов» → решена, no more files. Страницы и ссылки.
- Проблема persistence и continuos работы, даже если ОС не осиливает надежный sleep/hibernate → решена, не надо изобретатать Фантом-ОС, ведь хранится состояние окон+вкладок.
- Низкая юзабилити вебсервисов → прокачанные плагины, юзерскрипты → чинят криворукость вебдизайнеров, освобождают от рекламы, ну и работают как «стероиды для юзабилити» вебсервисов, что нужно тем, кто борются за личную продуктивность.
- Но в целом, для большинства задач с не очень навороченным/игровым интерактивом юзабилити вебинтерфейса заруливает юзабилити стандартного десктопного приложения! Стандарный десктопное приложение (или, ужас → «бизнес-приложение») → это маленькие окна, с тесной кучей контролов, лабиринтом вкладок, ручными переходами по интерфейсу, отсутствием persistence, сплошные издевательства над законами Фитса/Хика и просто здравого смысла. Броузерный интерфейс — длинные (не проблема после изобретения колеса[1]) красивые страницы, с крупными контролами, с инфографикой, ссылками, по сути это literate user interface[2]. Можно обходить интерфейс «в глубину», можно «в ширину», открывая иерархию вкладок, кому как удобно!
- Выйти за пределы броузерного окна? Потрогать файлы? От разноинтерфейсного несовместимого софта → К однообразным плагинам! (Файловый менеджер FireCommander, я даже FireSSH использую).
- …
Но все это живет… несмотря, и даже вопреки разработчикам Firefox! Очевиднейшие, ожидаемые решения не сделаны!
Personal Identity and Information Management →
- синхронизация
- профилей
- закладок
- набора расширений
→ до сих пор не осилили[3]!
Где контроль над CPU% и приложениями-страницами? Как понять, где, из 100500 вкладок шароежится тот флеш или аякс, который жрет CPU и батарею лептопа? Да, я знаю про «about:memory», в FF16 запилили Profiler, но все равно, даже с его помощью нельзя, как в Chrome, легко ответить на этот вопрос, чтобы тупо закрыть нарушителя.
Какого хрена под Linux и Windows изменена структура меню и хоткеи? (хорошо хоть не сильно, но все равно!).
Какого хрена включили «гонку версий», когда мажорные версии меняются еженельно (почти автонумерация по билдам)? Я понимаю, крышу снесло маркетологам, и это не было бы проблемой, если бы на это не было завязана работоспособность плагинов (≈«приложений в Firefox Desktop OS»). Ведь там нет продуманной системы зависимостей, и работоспособность расширения определяется декларативно, разработчиком, на глаз: «работает с 10 по 13 версии», и тут раз, выходят 14, 15, 16 версии → и все отключилось. Учитывая, что броузер апдейтится сам, оперативно, получаем, что большая часть расширений перманентно находится в состоянии «устарело».
Ну и вообще, куда рваться вперед, когда полно многолетних подтвержденных багов, типа «Awful image quality in image scaling», где сотни голосовавших/подписавшихся, у которых даже не выдерживают нервы[4]?
В общем, закончу всю эту серию риторических вопросов → Куда, блин, катится весь этот мир?! И еще раз погрущу, что в гонке за суеминутными трендами «мобильники-планшеты» в упор не видят «потерю мирового господства[5]». Может кто-то из Мозиллы прочтет и услышит? Может кто-то связанный, например, с Яндекс.Броузером? A man can dream…
Развитие операционных систем мобильных устройств в контексте свободного ПО (Дмитрий Костюк, OSDN-UA-2012) — отличная лекция по истории UX-концепций мобильных устройств. Не хочу комментировать, просто рекомендую смотреть, наверно самый ценный доклад этой конфы.
Разбередил разные воспоминания. Например, как в адские девяностые (95-96?) одногрупник продвигал на выставках первые Newton-ы, которые еле-еле то распознавали английский рукописный. Но он бодро убеждал зрителей, что с русским тоже ОК, и размашисто писал печатными буквами «МОСКВА»…
Подбивал автора показать пример украиноязычным докладчикам, и сделать доклад на английском, но он, увы, не поддался.
Linux on Desktop
К докладам Камо грядеши, 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[6] Под обе системы у меня был и стек разработки, и TeX-стек верстки (статьи-курсовые-задания). Linux увлекал меня хакерским стеком [7]. Помню тогда, еще в год дефолта смотрел и Linux KDE, и Solaris CDE, и все это казалось весьма вкусным, по сравнению с стандартными 95ми. И хотя нулевые я был строго «виндузятник», ибо нужен был максимальный перформанс, плюс я формировал корпоративные технологические стеки для разработчиков и документаторов, но, несколько месяцев назад, на куче своих лептопов я экспериментировал с Linux desktop-дистрибутивами, чтобы сделать себе оптимальный вебразработческий стек.
- В общем, я совсем не «антилинукс»-персонаж, и кстати, вполне pro-opensource: стараюсь пользоваться только open-sourсe софтом и веду несколько полезных opensource-проектов.
Теперь я попробую письменно изложить свое сумбурное выступление.
Однако начну с гуманитарщины.
В докладе Алексея Новодворского, использовалась безусловно яркая метафора, можно сказать культурный код «Давид против Голиафа». «Мы были молоды, мы вышли биться с Голиафом, но прошло время и видно, что Голиаф как-то расплылся, куда-то делся, микрософт теперь тоже опенсорс, десктоп вымер в пользу планшетов с инфраструктурой, и в общем, непонятно что делать». Все это звучало так романтично, что у меня это вызвало кросс-ассоциацию с захаровски-шварцевским «Убить Дракона», аж музыкальная тема (см. ссылку) в голове заиграла.
На самом деле, вместо Давида, я вижу сотню Нарциссов, занимающихся художественной гимнастикой/балетом/pole-dancing/конференциями, без малейшего желания подойти и отобрать у Голиафа хоть что-нибудь.
Почему не вижу Давида? Потому, что классические мифы надо знать.
Бой Давида с Голиафом — это не «романтика слабых», «обреченно биться до последнего, умираемнонесдаемся, пусть нас запомнят таким», это четкий, рациональный и результативный расчет.
Размер и возраст Голиафа не имели никакой роли, тут была ситуация в духе «Вы пришли с ножами и битами? ОК. Ваша ошибка в том, что вы пришли с этим хламом на перестрелку».
Бой был просчитан и проведен по плану Далласа Давида:
- Давид был вооружен оружием дальнего действия[8]
- Давид отлично владел своим оружием — убивал львов и медведей [1], [2]
- Давид отказался от бессмысленной брони в пользу мобильности [3]
- Давид атаковал, чтобы контролировать дистанцию результативного выстрела [4], и выстрелил из удобного для себя положения в уязвимое место противника [5].
- …
- PROFIT!!!
Никаких чудес, расчет и упорство, смелость и риск.
Теперь попробуем холодными глазами профессионального охотника Давида вглянуть на проблему «Linux on Desktop»[9]. Вглянуть не с позиции нарцисса («как бы нам привлечь-развлечь разработчиков?», «как бы сделать удобную им модель разработки, чтобы базар строил собор, все не ругались и были счастливы»), а с основной продуктовой позиции, «откуда можно взять пользователей? много пользователей? растущий поток?». Ибо без этого, как не стараться, все получится «криво и не для людей». Пользоваться будут гики из гиков, они же, критикой и пожеланиями, определять решения по UX. Нужен поток (т.е. не менее чем, скажем 10% от возможных пользователей) более-менее «нормальных» пользователей.
Правда состоит в том, что «девственных» пользователей, практически незнакомых с компьютером/планшетом/смартфоном почти не осталось. Т.е. да, что-то можно (и нужно!) ловить в школах и даже институтах, импринтинг штука мощная, и стратегически мыслящие компании вкладываются в это изо всех сил — сына-первоклассника через пару недель в школе ждут маки (говорят их продавили по всей москве!). Но делать серьезную ставку на «девственниц» — сомнительная брачная стратегия, ну и в любом случае — это инвестиция на десятилетие вперед. Надо бы быстрей.
Посмотрим статистику «иницированных» пользователей: не надо призывать социологов Левада-центра, достаточно просто смотреть на статистику по операционным системам пользователей для какого нибудь крупного вебпортала, например [6]
И что там видно?
- Linux Desktop не дотягивает до процента (≈0.6%-0.7%), ну наверно можно дать процент, если выкинуть мобильные устройства. Что это значит? Например то, массового пользователя еще нет, это в основном очень продвинутые пользователи, гики, фрики, и если слушать самых активных из них, можно забрести в глубокий лес с толстыми партизанами.
- Mac тоже не шибко распространен, это в РФ, на мировом масштабе у него получше, но макюзеры — это убежденные пользователи, это секта, иногда это знак принадлежности к гильдии (дизайнеров/юзабилистов/медийщиков) или
сесоциальной группе. Многие при этом могут пользоваться Windows-приложениями, через Parallel Desktop, но продолжать считать себя избранными. Охотиться на них — бессмысленно.
Остаются ровно две группы:
- Недоинициализированные
- пользовался только планшетом/смартфоном, но вот, понадобилось работать и руками, нужна клавиатура, устройство точного позиционирования (мышь-тачпад), многозадачность. Айпада и просто андроида недостаточно, нужно что-то, попадающее под определение «XXX Desktop Environment»
Гм. не знаю, как оценить, но знаю, что такие есть и будут есть. Огромная ошибка считать, что все, мобильный тренд с планшетами и смартфонами захавает все, включая лептопы! Я убежден, это глубокая ошибка, тех, кто по текущему тренду сделал линейную аппроксимацию, и тупой вывод[10] Надо понимать, что «компьютер» — это сейчас «информационное окно + универсальное коммуникационное устройство». Общение, заполнение документов/платежек, заказ в магазине и переписка в форуме, emailы и социальные сети, и даже разумный стриминг фильмов, с возможностью выбора и оценки — это все, все, все про коммуникацию. Удобную, асинхронную коммуникацию, не требующую изоляции (как для общения голосом), с усиленной визуальной частью, в частности → текстовую. Да, когда-то в нее не верили («люди будут набивать телеграммы, ORLY?»), да, ее популяризировал глухой изобретатель Интернета Винстон Серф, но сейчас, ее удобство — это факт. Также факт, что к символьной коммуникации и текстам, эффективно сводится почти все, … но это отдельная тема… «Информационное окно» — это про активное, управляемое пользователем потребление контента, будь это хоть фильмы, ролики, электронные книги или просто 50 открытых вкладок броузера. Характеризуется частыми переключениями (обход дерева ссылок в глубину, ad-hoc запросы), перемотка видео и т.п.
Итак:
- Полноценная клавиатура и устройство позиционирования необходимы для продуктивной работы.
Полноценная — это именно не «сенсорная клавиатура», которая чувствует человека, но лишает его этих самых «сенсов» — ощущений взаимодействия (тчорт, как-то опять про се…), а наоборот, дающее ощущения отдачи, задающая ритм, дающая возможность научится печатать вслепую, со скоростью мысли. Все остальные интерфейсы, хоть голосовые, хоть сенсорные, хоть жестовые — никак не смогут заменить ее даже в стандартной офисной коллаборации. Разве что менеджмент выше среднего сможет успешно коммуницировать тыкая в график-дешборд, и командуя голосом «привет компьютер Подать сюда Ляпкина-Тяпкина! Почему … полимеры…?!», или совсем уже низкоIQшные, выражающие себя только тыканиев в «лайки».
Ох, я бы мог много говорить об различных аспектах оптимальности клавиатурного UX, от чисто энергетического до визуального.
- Лептоп
- мелкая моторика с миниперемещениями пальцев почти без перемещения кистей, взгляд на дисплее, не закрытом и не заляпаном руками.
- Планшет-смартфон
- «Режим боксера», руки на весу, и держат устройство. Взаимодействие — либо ограниченные свайпы (большими пальцами, по прилегающей к краям области) либо длинные тычки или закрывать и пачкать полэкрана.
- Нужна настоящая многозадачность. Т.е. хоть какая-то вменяемая логика переключения, и может даже параллельного взаимодействия с несколькими приложениями (смартфоны точно не...). Ну и вообще, производительность, достаточная для уровня «веб+видео», с параллельным просмотром.
- Размер этого окна не сможет стать меньше 10-12" (если не рассматривать идеи со шлемами), собственно эволюцией более-менее выверен размер бумажной книги, и упасть ниже этого размера без серьезных последствий не выйдет.
В результате, как не крути, получится что-то, похожее на лептоп.
Да, это могут назвать «неопланшетом 2.0» с отстегиваемой радиоклавиатурой, ультрабуком, неважно. Не говоря уже о том, что есть хоть чуть повысить требования к продуктивности, когда коммуникация будет требовать сложной верификации (компилирование кодов, моделирование САПР, сборка документов…) то немедленно получится «обычный» лептоп (даже если он по производительности будете бить какой-нибудь суперкомпьютер из ТОП-500 прошлых лет).
А собственно все концепции UI должны определяться именно форм-фактором устройства!
«Планшетно-смартфонные» интерфейсы также диковаты на лептопах, как и клавиатурно-ориентированные на телефонах.
---
Впрочем, пока стоп о лептопах, это была оценка снизу «представления о минимально разумном компьютере», и я продолжу о них чуть позже.
Ибо, я должен продолжить мысль, и сказать о второй очевидной группе потенциальных пользователей → тех самых 90% Windows-юзеров.
И им есть что предложить, и как раз здесь и сейчас! Несмотря на добротность «семерки» по всем параметрам (особенно в сравнении с предыдущими версиями, от XP и особенно Vistы), есть, как говорится, нюансы, и одна история офигительней другой ©[11].
- Стандартная схема с непрерывным автообновлением Windows (тонкого руления нет, а отключать нельзя из-за постоянных проблем с безопасностью), приводит к неожиданным проблемам в уже настроенной «программно-аппаратной» системе. Все было хорошо, и вдруг:
- Пошли BSODы.
- Стало все тормозить. «Проблемы с DPC» — практически невычисляемое и неизгоняемое проклятие (я сталкивался, несмотря на возню с xperf и кучей системных утилит, диагностику и замену подозрительных драйверов, с перебором всех версий — проблема была неубиваема, а возникла одновременно, с очередным апдейтом на нескольких ноутах).
- Причем настоящей техподдержки нет, есть телефонная поддержка для дебилов по тупым проблемам, и форумы для самоутешения, где даже самые вменяемые (MVP) ничем не могут помочь, кроме как «у меня таже фигня»).
- А решение с перезаливкой системы сталкивается с следующей проблемой — «проблемой привязки» — надо помнить ключи и т.п.
- Не обновляться — не катит, очень неприятный процент уязвимостей именно в ядре системы.
- Весь этот геморрой с ключами-активацией-дистрибутивами-наклейками выглядит адово архаично. Хранить дома КОРОБКИ от софта? Помнить какие-то ключи? Сфига? Бумажные наклейки с голограммами, LOLWHAT? Все это еще и оскобительно для рационально мыслящего пользователя (типа «обязательно наклейте освященную бумажную иконку стратотерпца Николая Вирусоборца»).
- Плюс надежность железа кажется становится все меньше, а риски железа больше (лептоп легче сломать, про*ть, меньше ресурс; HDDшки у меня стали дохнуть чаще SSDшек, кудакатитсямир — не пойму). В результате пользователь офигевает от того, что он не может перенести «свой настроенный Windows-мир» из сломанного лептопа в новый или запасной. Какие такие OEM-лицензии? WTF?
- Управление установкой приложений в Windows — АдЪ и Израиль. Мало того, что нет доверенных путей инсталляции, репозиториев-аппсторов (пока), автоматической инсталляции, так даже масссово нельзя деинсталлировать приложения! Чем пользуются козлы-производители, набивая ноут с Windами адварью, снести которую так геморройно, что многие заливают чистую нелицензионную систему («СборкаЗверь» и т.п.), лишь бы не сидел как дебил, несколько часов с деинсталлятором, нажимая на кнопки «Далее», «Да, уверен», «Да, давайдосвидания» в диалогах. Не говоря уж, о таком возможности, как вести список «мои приложения» и в один клик заливать их на новый компьютер (и соответственно, обновлять и синхронизировать на нескольких машинах). Сейчас это проблему начали решать другие люди, см. например http://allmyapps.com, который мне экономит кучу сил, а в восьмерке будет свой аппстор, но пока — это еще уязвимость.
- Ну и разумеется, entagled
particlesproblems «Вирусы-Антивирусы». Непонятно даже, от кого больше ущерба в глобальном смысле. Ад странных, детских уязвимостей, огромные индустрии отстроенные на синергии багов в системе, бардаком с установкой приложений, «черноящиковостью» практически всего Windows-софта, в результате пользователь сидит с несколькими антивирусами, убивающими производительность его компа в ноль, долбающих ресурс винчестеров, батарей, постоянно пугающих пользователя, но в результате, все равно «Вы незаконно использовали Windows для просмотра порнографии! Перечислите 1000 рублей на ...» → ко мне регулярно приходят соседи с этими проблемами. После перечисления денег[12]. А в остальное время они все время запуганны «Оно пишет надо обновляться! Оно пишет надо купить Pro версию, иначе система не защищена!». Оно орет ночью «вирусная база обновлена». Вечный блин, бой.
Теперь прищуримся, и посмотрим на технику. На каком «десктопе» может «взлететь» Linux-desktop? Краткий ответ — ни на каком. И не надо. Под «desktopом» исторически имелся в виду отдельно стоящий системный блок, с кучей проводов, ну да, обычно он стоит на столе, под монитором или сбоку, ну или в формате minitower собирает пыль под столом. Так вот, атаковать этот класс — бессмысленно. Во-первых, он вымирает.
Жилье и жизненное пространство стоит все больше, использование компьютеров для коммуникации и «информационного окна» становится непрерывным, и внезапно выясняется, что ограничение «все это делать можно только сидя в определенном месте» офигенно неудобное. Часто удобно лежать. Полулежать. Сидеть на кухне, на диване, в парке ну и т.п. И с лептопом, даже гигантских размеров (типа 18.5") все это по-прежнему можно[13], а с дексктопом — увы.
Классический десктоп остается только у тех, кому нужен специализированный софт с максимальной производительностью.
- Разработчики с тяжелым стеком (компиляция огромных объемов). Корпоратив, продукты, ява/сишарп, си.
- Вебразработчикам (руби-питоны) это просто не понять.
- Видеомонтаж
- 3D-моделирование и анимация.
- Тяжелые САПР и т.п.
- Хардкорные игры
Гнаться за этой нишей — тяжело и малоэффективно.
Это профессиональный инструмент, станок, система является мелкой прокладкой вокруг градоообразующего предприятия основного приложения. Кстати, часто такой десктоп даже специально изолируется от возможности установки «обычных» программ.
История из жизни — в свое время, когда я пытался делать видеомонтаж семинаров с помощью стандартных пакетов видеомонтажа, я посещал тематические форумы (свадебные монтажеры и т.п.), с целью прокачать понимание и решить нетривиальные проблемы («А почему XXX Studio не поддерживает Lagarith Codec?»). И был поражен. Ибо условные «свадебные видеооператоры», ничего не понимали в администрировании виндов, у них на все возможные проблемы был один ответ — «Переставь начисто Windows и XXX Studio. Что, у тебя там еще ДРУГИЕ ПРОГРАММЫ? Ты ставил дополнительные КОДЕКИ? Ты сошел с ума!». Еще один косвенный флешбек — этот рецепт напомнило мне 80ые, когда я был аквариумистом (стеллаж аквариумов), рыбы часто болели, я боролся за них, а литература была редкостью. И тогда я на рынке купил книгу по промышленному рыбоводству. Там был большой knowledge-base, c разнообразными описаниями issues («плесень на плавниках, чешую топорщится, жабры вялые»). И одним единственным рецептом — «рыб выкинуть, пруд осушить, продезинфицировать, залить и зарыбить заново».
А теперь такое решение даже не выглядит странным — все-такое, типа коммуникации-документов-развлечений → на лептопе, а тут, настроенная рабочая машина. В офисах, которые страхуются от возможных наездов управления «К» → примерно также, согласованные набор заверенных администратором приложений, никакой самодеятельности по установке, никаких развлечений, ибо повышает вероятность подставиться с чем-то некошерным, от музыки до фотошопа или какой-нибудь игрушки.
А дома, может быть даже наоброт → вебразработка на Ubuntu, а Windows-бокс, набитый графическими картами и адовой системой охлаждения, держится исключительно для игр. Кстати, как раз именно эта область очень даже перспективна → куча Win-игр отлично идет под «Wine+winetricks» или Crossover, лично играл в пятую цивилизацию на убунте.
Плюс тут сторону Linux-а движется Steam, но в целом → тут мало что можно сделать малой кровью, тут все зависит от «замещающих приложений», и все, что можно сделать — ждать их, и поддерживать и пропагандировать, когда они появились[14].
Вот появился Darktable, и появились фотографы, с Linux-ноубуками. Достало управление «К», в регулярных рейдах «за фотошопом» → небольшие типографии и рекламные агенства перешли на Inkscape+GIMP+Скрибус. Но быстро и с нуля ничего сделать нельзя.
Итак, хрен с тяжелыми ящиками, опутанными проводами.
Что же остается? Опять таки лэптопы! Ноутбуки всех размеров, от пятикилограммовых, до нетбуков.
И у них есть специфика, как раз полезная для проникновения «Linux Desktopа»:
- Да, с одной стороны, лептопы обязаны держать «необязательное» для декстопа оборудование, типа WiFi, часто тачскрин, но:
- В отличие от астрономически огромного количества возможных комбинаций самособранного оборудования в desktopах, с непредказуемостью проблем в духе «дорогие товарищи ученые, который год подземный стук», набор моделей ноутбуков (читай «комбинаций железа») вполне перечислим:
- можно оттестировать,
- составить базу знаний проблем, по каждому ноутбуку. Ну даже без громких слов про «базу знаний» — просто проблемы становятся легкогуглимыми по модели ноутбука и краткому описанию, что дает возможность мигом найти какой-то workaround. Вот свежий пример, я ставил линуксы на HP 2730P, и наткнулся на баг с мерцанием экрана. Тут же выяснил, что надо прорываться к свежим ядрам.
- да, это не так шоколадно, как разрабатывать под свою собственную единую аппаратную платформу (эппл — читеры), и не так шикарно, когда все производители из кожи вон лезут, чтобы их драйвера работали под твою ОС (хорошо быть лидером, ага), но даже отрицательный результат → «Не пытайтесь ставить на XXX 1234P» — очень ценная информация.
- В отличие от астрономически огромного количества возможных комбинаций самособранного оборудования в desktopах, с непредказуемостью проблем в духе «дорогие товарищи ученые, который год подземный стук», набор моделей ноутбуков (читай «комбинаций железа») вполне перечислим:
- Реже встречается сильноспецифические устройства (которые все-таки идут платами к десктопам), и высоконагруженные видеокарты — да, с дискретными видеокартами сейчас не айс[15], но народ бьется за решение, и когда они пойдут в массы — уверен, так или иначе упинается.
- Гонка за энергопотребление и вес точно приведет к тому, что SSD будут в каждом ноуте! Не пройдет и года, когда это станет чисто выгодней[16]! А это даст не только огромный буст к производительности, решится автоматом куча UX-проблем. Например, совершенно потеряет смысл гонка за «скорость загрузки», если система будет либо мгновенно просыпаться из памяти, либо, на худой конец, если меняли батарею, за десяток секунд[17] точно вытащит всю память с 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-карт.
И да, при наличие финансовых ресурсов (шатлворт[18], ау!), я бы даже раздавал флешки с двумя разделами — один под пользовательские данные, другой, read-only, под live-загрузчик среднеупакованного линукс-декстопа:
- веб+флеш+ява+офис
- дисковые утилиты и средства восстановления системы (антивинлокеры, чекдиски, бекап-утилиты_
- возможность инсталляции.
Тогда возможно, измученный очередным BSODом или винлокером пользователь вполне согласится на предложение «А может ну его нафиг, поставим основной системой?».
Ну и разумеется, при инсталляции нужно плюнуть на GNU-религию, и плотно набить лептоп, всем, что может понадобится сходу именно лептоп пользователю — драйвера WiFi, 4G-Yota/Megafon, и видеокарточек, «все для удобного интернета» — флеш и ява сходу и сразу.
Блин, я ожидал этого, например от Убунты[19]. И был дико удивлен, что флеш и яву надо ставить, причем тот пакет, который нужен, чтобы ява завелась в броузере, даже не находился в их аппсторе, по ключевому слову «java»[20].
Далее — совместимость.
Нужно сохранить максимум привычностей Windows десктопа — причем для этого совсем необязательно копировать дизайн и названия, пользователю как раз пофиг, как называется кнопка — «Start» или «Computer». Важно — чтобы была концептуальная схожесть, ну и использовались самые удобные UX-метафоры из привычных.
О чем идет речь? Ну например, «метафора рабочего стола с иконками» → есть везде, даже на смартфонах. Она не просто привычна пользователю, она еще очень глубоко правильна и интуитивно понятна, на каком-то очень базовом уровне.
Продвинутые пользователи обычно слегка презирают «обычных» за замусоренный рабочий стол, где из под нагромождения иконок не видно нескучных обоев, но у обычных пользователей это и есть базовое структурирование всего, визуальный майндмап, в котором они раскладывают все, документ ли это или приложение (who cares, это такой «object-oriented UX»), отделяя важное от неважного, рабочее от домашнего и т.п… Даже мой пятилетний сын тут же вьехал в идею, придумав удобную ему систему раскладывания иконок по столу.
Так вот, я обнаружил, что по умолчанию в последнем KDE это выпилено. Чтобы поставить ярлык надо сделать кучу настроек (типа «в типе комнате выберите «папка», и то, там как-то не славабогу). Как это можно было допустить, выпиливание самой базовой метафоры? Не понимаю. Просто не было нигде и ни одного «адвоката пользователя», когда видимо, сами разработчики KDE (разработчикам, запускающим все по ALT-F2, понятное дело, иконки только мешали) выплеснули ребенка с водой.
Тут, может быть надо будет еще порассуждать на тему очень качественных решений по UX в Win7, которые не просто взялись с потолка, тут и идеи Азы Раскина (сына великого юзабилиста Раскина), и куча исследований на тему оптимальных меню-иерархий (линейное заруливает двухмерное, сложные меню с категориями не работают, LRU рулят, линейное с фильтрами быстрого поиска рулит), но это тема отдельной статьи или выступления. Неплохи и остальные классические десктоп решения, типа tray.
Ну и самое главное — если к легким отличиям в UI вполне можно привыкнуть (будет ли стартовая кнопка называется «Пуск» или «Компьютер») — совершенно неважно, можно спорить и привыкнуть к более крупным иконкам (Unity), но вот то, что прошито уже в костном мозге пользователя[21] — хоткеи менеджера окон, например, нужно выставлять по умолчанию, не дожидаясь «у нас все можно настроить». Зачем эти различия, не понимаю. К тому же кнопка «WIN» специально прописалась и поселилась на всех клавиатурах. Т.е. тут нужна мода «WinCompatible», так, что из этих 100500 возможных хоткеев KDE, тот десяток хоткеев винды был с аналогичным («WIN-D» → «показать декстоп», «WIN-E» → файловый менеджер, «WIN←↑→» ← быстро гонять/максимизирвоть окна по декстопу. Личная просьба — типографскую раскладку Бирмана мне.
Ну да, на первый взгляд похоже, что я прошу что-то типа Linux XP, но не нужно копировать все, почти все в виндах так себе. Стилистика, обои, кнопка «Пуск» — все это небось запатентовано, ну и вообще, тут боюсь сработает эффект wikipedia:Uncanny Valley — «похоже на человека винду, но зомби невинда».
Все это лишнее. Иконки/обои можно менять. А вот метафоры и прошитые жесты ввода → это совсем другое. Это кстати относится и к софту → какого хрена даже в Firefox под Lin/Win отличаются некоторые хоткеи?
И конечно, классический рецепт - «Обработать напильником». Адовое количество нестерпимых (хотя и не считаются критическими) багов юзабилити,
заставляющие потерять веру в человечество.
Винды - одним движением можно запретить все стандартные звуковые нотификации[22]. Все, больше никто вас не напугает, вы можете слушать музыку, смотреть фильм, или в ночной тишине сидеть с ноутбуком. Но в нет! Пять лет тянется этот реквест в KDE, и конца и края не видно.
И самый ужас! Оно орет выключаясь, даже несмотря на активированную Mute-кнопку! Нет, похоже просто любит сбрасывать mute cамостоятельно.
Когда я засыпаю, и усыпляю ноут, оно будит всех окружающих! Аааа!
В общем, краткое резюме такое — либо иметь в загашнике сумашедшего миллионера, который спонсирует команду юзабилистов (привет шатлворту), либо не выделываться, и сфокусироваться на том, чтобы сдуру не «выплеснуть ребенка» распространненых и проверенных UX-решений.
Впрочем, для нормальной компании, занявшейся декстоп-линуксом, я бы рекомендовал завести хоть любую простенькую юзабилити-лабораторию. Простенькую — без отдельных комнат с полузеркалами, айтрекеров, и прочей фигни. На самом деле, 95% инфы можно получить просто записью и вдумчивым анализом пользовательских сессий, записанных единой упаковкой (экран, морда, что он нажимает, звуковые комментарии, опционально — вид клавиатуры-мыши). И кстати, такую запись можно делать даже удаленно, так, чтобы юзер был дома, в комфортной среде.
Какую-то попытку описанного я видел на 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 удобней еще на порядок.
Да, я понимаю, что стеки 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, а если пользователь видит, что под любыми системами его файлики в порядке и синхронны, да и вообще нечего бояться их потери, вопрос, на чем работать вообще станет неважным («ну да, тут линукс, а тут мак, а тут еще винда осталась»).
Это было визионерство для так называемых «домашних пользователей», тема, что нужно корпоративным пользователям (вернее, что нужно не самим пользователям, а администраторам, системным и бизнесовым), чтобы проще администрировать оборудование, и заставить юзеров вкалывать по скучным бизнес-процессам, без «вконтактика» и развлечений, ну и без лишних утечек — она несколько другая, хотя у меня и тут есть идеи (за пару десятилетий заказной разработки, я этих самых бизнес-пользователей повидал вволю). Но первичен, имхо, именно «домашний линукс» — если не выйти в этой нише из маргинального процента, в корпоративе ловить будет совсем нечего.
А, и откуда в линукс-теме могут взяться интересные деньги? — Хрен его знает, честно говоря. Но совершенно точно, сначала должны появится пользователи. Раз в десять больше. А там будет видно, что и как можно монетизировать.
Pf-kernel — что это такое и зачем его едят (Александр Наталенко, OSDN-UA-2012) — радикальный продесктопный набор патчей. Вроде как про все хорошее против всего плохого — улучшает и отзывчивость, и потребление памяти, и даже гибернацию. Лично экспериментировать неохота, ибо даже на самых слабых моих линукс ноутах Core2Duo и гига 4 памяти, и проблем планировщика как-то не наблюдал, в отличие от 100500 других проблем. И есть некоторые ламерские сомнения, что можно очень легко «из ничего» что-то улучшить, и ничего при этом не потерять. Сдвинуть приоритеты от nonGUI приложений к GUI - получить торможение где-то на другом уровне (плеер не тормозит, а стриминг через какой-нибудь gstreamer — лагает). Вытащить «нос» по памяти — увязнет хвост по «latency» и т.п.
В общем, мнение мое ламерское, но я готов подождать, когда все это попадет в апстрим крупного дистрибутива. Может в альт? Тогда я бы попробовал, сравнил, у меня есть пачка однотипных ноутов.
Сисадминство и хакерство
Обновление Linux в течение 5 мин (Николай Маржан, OSDN-UA-2012) — живо и весело, небольшое шоу с живой демонстрацией радикального апгрейда системы со сменой ядра. Тут я собственно немного рад собственной перестраховке — ибо организаторы не обеспечили запись скринкаста на ноуте докладчика, и страховка фотоаппаратом вполне спасла ситуацию, все хоть слегка кривовато, но читаемо, весь процесс апгрейда вполне наблюдаем и воспроизводим. Хотя, конечно, скринкаст был бы лучше, ибо тут был не совсем «смертельный номер» — апгрейд системы демонстрировали не на самом ноуте, а в виртуалбоксе.
Ну а по теме — вроде как на дворе третье тысячелетие, и бест-практики — это стада виртуалок, обновляемые поочередно, незаметно для пользователя. Но у докладчика все невиртуализовано, ибо приложения были для VoIP, а виртуализация почему-то вносила лаги и прочее latency, и в результате, они пришли к простой схеме с двумя системными разделами, поочередным обновлением, и переключением через перезагрузку в новый раздел. Моей квалификации недостаточно, чтобы понять — годный ли это лайфхак, совет от КО, или даблфейспалм.
Проблемы безопасности открытых веб приложений (Евгений Докукин, OSDN-UA-2012) — ценнейший доклад, всем смотреть.
Всем смотреть, как не надо никогда выступать.
Фантастический набор антипаттернов:
- Визуальная часть — текстовый документ с 12-поинтовыми серифными шрифтами
- Выступление задом к аудитории, с попыткой (безуспешной) зачитывания своего же документа
- Бессмысленные числа-факты, поданные с пафосной интонацией нетрезвого лектора по астрономии из «Карнавальной ночи» («…Но, стоит нам только взять телескоп и посмотреть вооружённым глазом, то мы увидим две звёздочки, три звёздочки, четыре звёздочки… Лучше всего, конечно, пять звёздочек!…»)
- Остальные выводы и идеи отобраны напрямую у КО.
… а в прочем, посмотрите доклад! В отличие от аудитории:
- Вы сможете прочесть тот самый документ — я, разумеется его приверстал к видео…
- Вы не заскучаете — я ускорил его на 20%, так что лектор сильно, на пару колес, пободрел. В результате, смотрится нескучно, почти как standup-comedy!
- Вы увидите (вторая камера!), как аудитория, постепенно впадает в аут и истерику — четверть зрителей демонстрировало искренний фейспалм, либо реальный LOL.
- Если вы увидите такое на своем докладе — немедленно запускайте заготовленную шутку, и завершайтесь!
Трудности перевода
- Особливості використання запитів в об’єктній СУБД db4o, їх порівняння з запитами SQL (Сергей Компан, OSDN-UA-2012)
- Порівняльний аналіз використання ВПЗ у вищих закладах освіти Білорусі, РФ та України (Григорій Злобін, OSDN-UA-2012)
- Построение HA-кластера «на коленке» (Михаил Бочкарeв, OSDN-UA-2012)
- Построение multi-tenant IaaS-провайдера на базе ПО с открытым кодом (Владимир Мельник, OSDN-UA-2012)
- Приватизируем облако — построение IT-инфраструктуры для малого бизнеса (Влад Панченко, OSDN-UA-2012)
- Firefox OS (Тимофій Бабич, OSDN-UA-2012)
- Макраме из дистрибутивов (Михаил Шигорин, OSDN-UA-2012)
- Скоростной пассивный мониторинг на основе решений с открытым исходным кодом (Андрей Логинов, OSDN-UA-2012)
- ↑ Колеса мыши
- ↑ Отсылка к literate programming, К.О.
- ↑ Да, есть отдельные расширения+сервисы, я использую например Siphon, для синхронизации набора плагинов, но это просто поделка энтузиаста с собственным сервером! А за такими базовыми вещами должна стоять компания и мощная инфраструктура!
- ↑ Некоторых участников там регулярно пробивает на истерику, с матом, сарказмом и даже рэпом
- ↑ Самая большая ачивка для продуктовой IT-компании.
- ↑ C E18n, которое было у меня Window-менеджером и по Red Hat, и под WIN95.
- ↑ Моя страничка из 90х, использовал эту штуку для сбора паролей в нескольких организациях, тогда все было проще, почта ходила по POP3, и такие немудренные фокусы казались эффектными.
- ↑ Cкорее всего это была пастушья праща-трость, судя по «что ты идешь на меня с палкой?» [7]
- ↑ Допустим, мы делаем какой-нибудь BolgenOS в России, и реально хотим, чтобы ей пользовались (а не МСВС «есть-отставить» для военных).
- ↑ Да, движуха с «Ubuntu Raring Ringtail», например. А вот Микрософтовский движ как-раз не такой примитивный, они хотят накрыть все, от смартфона до десктопа, получится ли у них — пока неизвестно, вполне возможно что будет «не рыба ни мясо», клавиатурных пользователей будут раздражать планшетности, а планшетников — остатки десктопности.
- ↑ Да, я знаю стандартный шапкозакидательский дискурс «вендекапеца», и говорю только о том, что выстрадал лично или в личных наблюдениях за окружающими
- ↑ Да, я проверял, они действительно ее смотрели. Причем никакую, найденную в первых строчках поисковиков.
- ↑ У меня есть и такой, проверял. На нем я особенно люблю смотреть лежа комиксы
- ↑ Знакомые, которые пробовали линуксовые стим игры вполне довольны, надеюсь, стим не ограничится убунтов (фиг знает, может у них аффилированность)
- ↑ Я даже не вкуривал, что за бамблби и оптимус, пока сын не забормотал то, что я слышал на линукс-форумах.
- ↑ Не говоря уж о проклятиях со стороны Линуса
- ↑ Ну вот вся память 4000МБ / 300 МБ/c = 13 сек
- ↑ Где какой-нибудь прогрессивный российский олигарх? Хватит спонсировать стартапы с социальными сетями, дайте денег хоть на ProhorovOS, пофиг, как называется дистр, важна сама идея, что винда необязательна.
- ↑ Ну это вроде как общепризнано самый дружелюбный дистрибутив
- ↑ Правильный ответ: «icetea». «Сынок, это нельзя понять, это можно только запомнить». ©
- ↑ Это не гипербола, действительно, исследования энцефалограмм геймеров показывают, что автоматическая клавиатурная активность реально сидит в позвоночнике.
- ↑ Ну, понятное дело, есть дебильные софтины, которые таки проорут в ночи "вирусная база обновлена", но в остальном - все.
[ List view ]Comments
Уж ты-то мог бы и до "ВК РСПС" сократить 8) Спасибо за проделанную работу!
Please login to comment.