Как стать автором
Обновить

Комментарии 79

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

©благодарные пользователи улучшателям дизайнов интерфейсов

Мой личный список гребанных улучшателей для которых нужен отдельный котел в аду:
— Создатели нового интерфейса GMAIL
— Создатели нового интерфейса Skype
— Создатели нового интерфейса ImhoNet (кстати, отток посетителей после редизайна был такой, что проект после этого умер)
… а рядом на отдельном вертеле вращаются разработчики интерфейса MS Azure у которых конопочка resize изменяет server size и отправляет сервуак в перезагрузку немедленно, без подтверждений…
Эта ситуация, когда изменения ради изменений, а не для решения какой то проблемы.
Мой личный список гребанных улучшателей для которых нужен отдельный котел в аду:

Skype Skype еще раз Skype!
Не знаю ни одного человека которому новый скайп стал удобней или понятней.

зы
и пожалуйста, подскажите как настроить спелчекер для нового скайпа?
Я перестал пользоваться Skype))))
Недавно записывал ребенка в детский сад через гос услуги со слабого ноута c 8гб озу. Это треш и угар. Там тоже педиктивный интерфест. Как только начинаешь заполнять поле с паспортными данными интерфейс сразу говорит что надо пройти проверку и заполнить паспортные данные в другой форме и радостно ресует разноцветный болт — это просто пропаганда курения какая-то. Интересно сколько операций выполнил процессор чтобы просто заполнить десяток текстовых полей.
Надеюсь на сайтах никогда это не увижу.
Если я не ошибаюсь, в ВК подобная штука уже давно есть — предсказывает ссылку на которую хотите кликнуть и начинает предзагрузку соответствующей страницы заранее. Чем плохо? А по поводу примеров автора статьи — это всего-лишь примеры, и это совсем не означает что этой штуке нельзя найти удобное применение
Такие вещи гораздо лучше предсказываются по карте кликов, а еще лучше по customer jorney. Грубо говоря голая статистика (если она конечно есть по этому пользователю) без всяких нейронок работает намного лучше.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Проще: по клику сразу запускаем прогресс-бар либо просто просто «крутилку». Всё, отклик есть, спокойно ждём.
НЛО прилетело и опубликовало эту надпись здесь
Это лишь эксперимент, но порядок величин примерно такой: полная сборка 40KB, из них 35KB — нейронная сеть с обвязкой для использования.

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

В таком случае люди, отличающиеся от средней выборки, вообще не смогут воспользоваться сайтом. Сеть будет предсказывать так, как должен поступить в среднем в такой ситуации. Если ты не знаешь, как двигает мышкой средний пользователь, можешь вообще не добраться до нужного элемента — всплывающие подменю не пустят. Например, на первой картинке как добраться до области под выпадающим меню? Слева это возможно, справа — может не выйти.

Это уже проблема обучения. Если это большой сервис с постоянными пользователями, паттерны поведения каждого конкретного человека можно получить поизучав его действия в течение какого-то времени, а затем, дообучив алгоритм, уже показывать ему «предиктивный» вариант интерфейса. Нуу, в теории.
И экспириенс, который он получил ранее станет играть с ним злую шутку. Вчера ему надо было нажимать эту кнопочку а сегодня он просто мимо провёл указатель.
Вполне возможный сценарий развития событий, да.
Но опять же, статистика подскажет, что система работает неверно, если кнопку «подсветили», а пользователь не нажал. Маячок, что нужно до(пере)обучить.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

Способ нехило отсеивать неугодных в воронку)

так как сокращает путь до покупки

Нужно не движение мыши предсказывать, а желаемый товар. Сразу его показать на экране, добавить в корзину, снять денег с карты и доставить. Если сеть предсказала неверно — не страшно, клиент оформит возврат.

НЛО прилетело и опубликовало эту надпись здесь
Предиктивно доставлять содержимое корзины курьером до подъезда, а в случае, если он не закажет – разворачиваться и уезжать?
Это же (ну, почти, даже на сайт заходить и в корзину класть ничего не нужно, сразу доставляют) уже есть: ходят «представители чего-то» и вещают: «Сегодня у нас акция, вы платите только за доставку...».
Может он ещё за меня и порно смотреть будет???
Если серьёзно — не нужно. И так бесит кнопка «наверх» которую подхватили все кому не лень. Спасибо хватает.
Особенно когда эта кнопка в браузере и без того есть.
?? Подскажите, что за кнопка такая?

например, в Я.браузере можно было кликнуть по самой вкладке, и он проматывал страницу вверх. По второму клику — обратно вниз.

Ну в хроме такого нет.

Вообще, я так понимаю, в любом браузере можно нажать Home и он отмотает страницу на самый верх, но это не будет работать, если фокус на каком-нибудь текстовом поле.
Также, если рука на мышке, то до клавы тянуться надо. Проще нажать на кнопку scroll to top. Короче, я не вижу в этой кнопке ничего плохого.
Рука на мыши буквально означает, что массовый веб очень плохо адаптирован для работы с клавиатурой.
Возможно, с этим я не спорю. Я говорю про то, что есть много пользователей, которые вообще шорткатами не пользуются — для них такую кнопку и делают.
Home на клавиатуре.
Кнопка «Наверх» оч выручает когда с ноутбуком в кресле или на диване. Ибо чтобы подняться нужно расфокусироваться тачпадом (и при этом умудриться не купить или не перейти куда-нибудь), найти в полумраке Home или скролить/накликивать прокрутку (не у всех тачпад может в скролл). А тут навел и жмакнул.
это нужно не в вебдизайне/интерфейсе, а в шутерах!
Это нужно внедрять в повседневной жизни. В системе слива унитаза, в регулировке температуры душа, на ручки газовой плиты. Дизайнеру — дизайнерский быт!
А я поддержу автора.

В опервых очень интересная идея и хороший proof of concept.

Во вторых может быть для кнопок и перебор, но в некоторых местах, таких как менюшки показанные в демо, может оказаться безумно удобно. Чем то похожий подход используется в хороших менюшках когда пользователь срезает углы по пути в сабменю чтобы оно не закрывалось (ну там просто невидимые треугольники и задержки).

В общем спасибо за статью и демо! Respect!
Пожалуй я тоже поддержу, но осторожно…
С одной стороны, конечно, вовсе не хочется чтобы менюшки выпадали как хочется _им_.
С другой, если алгоритм будет ненавязчивым, аккуратным и проработанным, (а главное с возможностью его отключить кому мешает), то почему бы и нет?
И опять нейронные сети там, где достаточно основ геометрии и помазать конечным автоматом. Есть приложения типо Google App Maker и прочие конструкторы, там «предсказывать» какие элементы нужны пользователю, может пригодится, но и там нейронные сети не нужны.
Идея интересная, но…
Из всего перечисленного перечисленного реальный интерес представляет только наведение.
Когда Вы ничего не сделали и ничего не выделилось — вам пофиг.
Когда Вы ничего не сделали и что-то зачем-то выделилось — это раздражает.
Можете пособирать кейсы пользователей сайтов с поломанным user-select. Особенно если Вы с телефона сидите. Нажал на кнопку — выделился текст кнопки. Тапнул на экран чтобы снять выделение — сработала ссылка и вы перешли на другую страницу. После N-ного раза возникает неконтролируемое желание разбить девайс об голову ответственного за верстку этого чуда. Случайные клики из той же оперы.

А для расчета предполагаемой точки остановки курсора использовать нейросеть — перебор.
Да, согласен — ошибку первого рода надо держать в районе нуля и потом уже пытаться уменьшить пропуски. Не сработало — не так страшно, как лишнее событие.

А для расчета предполагаемой точки остановки курсора использовать нейросеть — перебор.

Скорее всего можно сделать это аналитически, да, нейросеть как самый быстрый в реализации способ — собрал статистику, обучил и вперед.
Где-то видел похожую задачу с диаграммами Вороного.
имхо идея оч классная! Но как многие тут пишут, иногда предсказание некорректное, отчего появляется раздражение. Возможно станет легче если отмену предсказанного действия делать быстрее. Например если в демо водить под меню курсором по горизонтали, пункты меню постоянно срабатывают, а потом висят довольно долго. Может быть стоит проверять предсказание при остановке курсора.

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

Почему вообще их до сих пор никто не сделал?

Страшно же, все на тебя смотрят, и телефон смотрит, и лэптоп.

а сколько это энергии кушать будет например у меня в телефоне? вычисления вот эти вот все… даже если я зашел просто на посмотреть?

С тач-интерфейсами именно данные методы неприменимы, движения пальца вне контакта с экраном не отследишь. А для лэптопов/десктопов на первый взгляд выглядит не обременительно, по крайней мере тестовая реализация.

Так ведь основная задача большинства сайтов теперь - не показывать вам рыбов, а продавать!

Идея интересная, но только для дизайнера интерфейсов и разработчиков. Для бизнеса, не думаю, время на ресерч, на разработку на обучение нейронной сети, за это кто-то должен платить, а в конечном счете выхлопа с этого ноль. И пользовательский экспириенс, на мой взгляд не предсказуем, кому то менюшки будут открыватся чуть заранее, кнопочки подсвечиваться только при мысли о них, а кому то наоборот, выпадающие элементы не вовремя закроют контент интересный пользователю, что то не то выделится, что то не то подсветится. Вообщем такое. А статья тем не менее интересная, спасибо автору.
Как вариант использовать такое для оптимизации. Типо делать прелоад действия, но для UI, идея ок но сложно сделать нормально и выхлоп сомнительный
А если под дропдауном есть какой-то контент, на который пользователь хотел нажать, поэтому и подвел мышку? А вы ему сразу дропдаун показываете?
С учетом базовой гигиены интерфейсов между между кнопкой и дропдауном должно быть определенное пространство. В идеале этой дистанции должно хватать чтобы разделить зоны, где пользователь собирается остановить курсор. В любом случае алгоритм предсказания должен это учитывать при настройке параметров того же фильтра частиц или скользящего среднего.
С учетом базовой гигиены интерфейсов между между кнопкой и дропдауном должно быть определенное пространство.

Тогда зачем вообще дропдаун, если можно просто вывести сразу весь контент и не сворачивать?

Вот был ютуб. Нормальный, вроде, сервис — смотришь видео, рядом другие видео по теме, по завершению просмотра текущего можно либо выбрать следующее, либо подождать пока автоплей вытянет первое из списка. Хочешь слушать русский рок — пожалуйста, открываешь одну песню, слушаешь одну за другой песню. Надоело, решил переключиться на американскую попсу — пожалуйста, будет тебе теперь список попсы. Решил расслабиться и посмотреть пару роликов «РЖАКА-АБАССАКА-ЛУЧШИЕ ФЕЙЛЫ 2014» — пожалуйста, посмотри, ктож тебе что-то не так скажет?

Но! Такой подход же не современный! Нужна нейросеть! И чтоб обучалась на пользователе!!! Сказано — сделано. Внедрили сеть, покрутили параметры, посмотрели, наверняка, что показатели средних просмотров выросли, довольные обмыли премию. А вот для простого прослушивания музыки сервисом стало совершенно невозможно пользоваться, так кого это волнует? Если ты пару раз послушал одного исполнителя, то тебе его под всеми видео и будут советовать. Решил послушать что-то другое? Хренушки — что бы ты терперь не выбрал, максимум через одно видео заботливая нейросеть вернет тебя на старого исполнителя: «Ты же так любишь эти три песни? Давай я тебе их по кругу весь день, каждый день, в любой точке мира и под любое настроение крутить буду!». Зато вот случайный ролик, в который ты случайно зайдешь один раз, дизлайкнешь и закроешь на первой минуте будет всплывать в рекомендациях ещё пару недель — вдруг все-таки передумаешь и решишь досмотреть? Пытаюсь сейчас свалить куда-нибудь ещё, пока не возненавидел окончательно всю музыку, что когда-либо слушал.

Короче, я это к чему? Хватит пихать нейросети везде, где не попадя!

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

Вполне вероятно задачу анализа поведения по движению курсора можно решить и аналитическими методами. Но это уже совсем другой уровень и исследований и реализации. В этом смысле рекурсивная нейросеть здесь — самый быстрый в реализации способ. Естественно с учетом использования готовой библиотеки.
Я вот не пойму у ютьюба редизайн окна уведомлений. Раньше было удобно — список сообщений, которые ответили тебе на комментарий под видео. Открываешь — показывается весь список комментариев уже промотанный до ответа, и с открытым полем для ответа на него. Удобно.

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

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

Проблема не в нейросетях.
Честно говоря вообще плохая идея. Почему? Потому что сеть говорит что делать. Вдруг я захочу открыть на сайте другую вкладку, но не смогу, потому что в каком то интернет магазине после того как добавил в корзину чайник, 70% пользователей пошли искать памперсы и мне будет открывать выпадушечку с марками памперсов, но я хочу купить телефон и тд. В итоге мой юзер экспириенс превратится в борьбу с интерфейсом сайта, который надо научить под меня еще. Зачем это надо?
Все так, сложно спорить, видится разве что два аргумента в защиту. С бОльшей вероятностью, вы окажетесь в числе 70% и останетесь довольны такой отзывчивостью. Ну и, конечно, инициатива магазина не должна быть такой навязчивой, чтобы открывать выпадающее меню в области фокуса внимания, а несколько небольших ссылок внизу экрана, например, уже не так страшны, даже если промазали с предсказанием.

В любом случае это уже совсем другая задача анализа тематики, а не механики движений.
Соглашусь. И думаю что в будущем подобные решения, может частично, будут внедряться. Уже есть модуль предсказатель для предзагрузки страниц, который пытается предсказать какую страницу пользователь откроет. Guess JS.
Первый коммент писал утром, по этому только критика)) Спасибо за статью и интересное исследование!
Идея прикольная!

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

А вот на десктопах было бы круто. Можно было бы использовать совместно с meta preload/prefetch. Например, в фоне уже начала бы грузиться страница, прежде чем пользователь нажал на кнопку/ссылку перехода. Тем самым снимается вопрос о раздражении пользователя — даже если произошёл промах предсказания, пользователю это ничего не стоит, кроме траффика. А возможный профит от более быстрой загрузки, думаю, все понимают.
Самое интересное начнется, когда под меню будет какаято ссылка.
и ее уже нажать будет невозможно НИКОДГА
Теоретически (в идеальном мире разработчиков интерфейсов) эта ссылка должна «полуактивироваться» раньше, чем элемент меню, но в реальном мире что-то пойдёт не так (у неё не будет такого обработчика или область срабатывания окажется перекрыта «более важной» областью от меню).
Или можно очень медленно перемещать мышь.
Сайтов с такой фичей и сейчас полно
Идея замечательная – только отклонились в сторону выполнения за пользователя действий, который он сам бы хотел выполнить, например открытие меню. А чего пользователь точно не хочет делать – ждать. Поэтому я бы имея такой арсенал в руке сделал бы предикативную подгрузку компонентов и данных в интерфейсы – только повёл рукой в сторону селекта, а он уже сам данные внутрь себя подгрузил. Не к селекту вёл – ничего страшного, без этой технологии он либо не загрузился бы вообще, либо всё равно бы загрузил данные, которые не нужны. Google научили свой AMP рендерить только данные, которые видны на экране – удобно и производительно. Так почему бы не пойти дальше и не ограничиваться только информацией о видимой области, почему бы не подружать и рендерить элементы страницы, основываясь на нейросетях?
В образовательных целях интересно, но в практическом применении я вижу только одну перспективу. Перспективу спалить себе пятую точку от подобного функционала на сайтах. Далеко ходить не надо — возьмём ВК. Я прям вижу как веду курсор в новостях к полю написания новой новости, а мне поверх него открывается музыка, например. А учитывая расстояние между шапкой поля ввода и мою скорость движения мыши — думаю, мне будет не так важно, откроется у меня та-же музыка (в случае если я всё-же хочу открыть её) спустя 0.1 или 0.099999999999
Лучше бы задумались о том, чтобы сайты работали в нормальных текстовых браузерах (или хотя бы браузерах без JS)
и на работу ездить на конях!
Кто-то еще пользуется текстовыми браузерами? Siriously? O_o
Siriously

У вас в вашем не-текстовом браузере спеллчекер уже не работает? Seriously?
А по теме — таки да, текстовый браузер гораздо удобнее графического в 40-50% случаев даже сейчас, в эпоху JS и CSS, ибо нормальная работа с клавиатуры, околонулевое потребление памяти и возможность делать «дизайн» (конечно, условный) всех страниц одинаковым и красивым.
Ничего себе консерваторы в комментариях. Мне идея того, что менюшки будут реагировать на движение, а не только положение, представляется очень полезной. У меня на телефоне стоит клавиатура у которой слова набираются без отрыва пальца. Если интерфейс будет на столько отзывчив, что можно будет обучится выбирать один из тысячи пунктов жестом, открытием подменю без клика, без замирания, и даже немножко заранее, это здорово.
На заре интернета сайты не искали ...

ах как же было хорошо, клик на колёсико это новое окно, простой клик — переход, а сейчас жмешь кнопку не работает, жмешь другую кнопку… а тут js скрипт криворукий писал..., и так постоянно, даже на популярных сайтах нет единой логики, даже habr.com грешит, что сильно расстраивает…
НЛО прилетело и опубликовало эту надпись здесь
Не очень понятно, зачем автор использует фильтр частиц в линейной задаче предсказания. Здесь отлично будет работать фильтр Калмана. При этом он будет точнее и вычислительно эффективнее.
В целом идея интересная, но на мой взгляд лучше ее использовать не для интерфейса, а для скрытых от пользователя действиях, как выше уже говорили.
То есть пользователей можно будет идентифицировать по паттернам использования интерфейсов, класс.
тут есть над чем подумать
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории