-
Дизайнеры и фронтендеры
Признаться, я не люблю дизайнеров и фронтендеров. Не лично кого-то, а в массе. Причина проста — эти ребята вечно все ломают. Конечно, эти профессии нужны, однако люди, которые отвечают за интерфейс и при этом ничего не ломают, встречаются раз на тысячу — и это не преувеличение. По моей оценке, наверное один из тысячи дизайнеров или фронтендеров думает о том, чтобы не навредить своими правками. И только потом об изменениях в интерфейсе.
Причина этому проста. Чаще всего дизайнер — обычный сотрудник, который приходит в фирму, а через год-два уходит. Его наняли, он должен что-то делать. Скорее всего дизайнер никогда не пользовался сервисом, который дизайнерит, не имеет представления о том, что нужно клиентам. Он надувает кнопки, перемещает их из угла в угол, делает интерфейс воздушным.
С фронтендером то же самое: это обезьянка, которая не пользуется сервисом и не понимает нужды клиентов. Обезьянка внедряет реакты-редуксы, делает ссылкам onClick, чтобы их нельзя было открыть новой вкладке, словом — занимается ерундой, потому что зарплату нужно отрабатывать.
Простой пример. Сегодня я обновил клиент для VPN. Когда он работает, то в трее висит иконка. Если нажать на нее, выпадет меню, где можно выбрать “disconnect” или “connect”, чтобы по-быстрому отключить-включить текущий сервер. Когда приложение свернуто в трей, оно не отображается в главной панели.
А что после обновления? Теперь в меню только два пункта: “open” и “quit”. Пункт “open” открывает приложение, и нужно тыкнуть кнопку Disconnect. И теперь приложение всегда висит в панели задач, даже если если свернуто в трей.
Разве человек, который поменял интерфейс, не идиот? Ничего, что количество кликов стало больше? Как же не писать проклятия в адрес того, кто на ровном месте создал неудобства? И главное, кто просил?
Другой пример — Модульбанк, услугами которого я пользовался. Это было в ту пору, пока он не вырос: банк был маленьким и эффективным. Звонишь, ждешь два гудка, и трубку снимает живой человек — не бот и даже не голосовое меню.
Долгое время у них было хорошее приложение: быстрое, простое как лопата. Но потом у банка завелись деньжата, и пошло: голосовое меню, графомания в Телеграме, рассылки и в том числе — новый дизайнер приложений. А этот клоун взял и переставил все пункты местами. Например, передвинул шаблоны платежей в историю. Часто бывало, что я открывал приложение и не мог найти нужную кнопку. Искал методом перебора, тыкая все по очереди.
Тому дизайнеру и голову не пришло, что клиенты уже давно пользуются приложением и привыкли к нему. Да, может быть та или иная кнопка выглядит не так, как советует условный Мильчин. Ну и что? Люди-то привыкли! Они в гробу видали Мильчина. Твоя задача — поддерживать и улучшать то, что сделали до тебя, а не строить с нуля.
Главную причину я уже назвал: этот дизайнер не был клиентом банка. Он не был ИП Ивановым, который каждый день совершает платежи, выплачивает сотрудником зарплату, обменивает валюту. Дизайнер сам был сотрудником и отрабатывал зарплату. Вместо приложения у него была установлена демка. Вот в чем дело.
Пример с другим банком. Раньше у них был статичный интерфейс, и каждый счет можно было открыть в новой вкладке. А потом наняли мартышку с реактами-редуксами. Теперь ни одну сущность нельзя открыть в новой вкладке: ссылок нет, по клику вываливаются выпадашки. Приходится дублировать вкладки и прокликивать каждую с начала.
С бекендом такой проблемы нет, потому что существуют протоколы и соглашения. Представьте, что условный Гугл без предупреждения обновил апишку почты. В одно утро отваливаются все клиенты, и Гугл такой — переписывайте. Такого не бывает. Разумеется, иной раз компании ломают апишки, но это случается гораздо реже, чем новый дизайн.
Если дизайнер или фронтендер не хочет, чтобы его ненавидели, нужно всего-то пользоваться продуктом, который дизайнишь, и понимать, чего хотят пользователи — и чего они не хотят. Эти две вещи дают хороший дизайн. Все остальное — отработка зарплаты.
-
Выпадашка под пальцем
Может быть, замечали: открываешь приложение, и прямо под большой палец выскакивает выпадашка. Этим страдают банки, маркетплейсы, всякие Авито. Чаще всего информация нерелевантна: вот тебе загородная недвижимость, хотя я никогда не интересовался. Плати как ИП — да, я ИП, но прекрасно плачу как физлицо. Участвуй в розыгрыше золотого слитка — без комментариев.
Ощущение, что выпадашки работают по принципу “лишь бы что-то показать”. Если прошел таймаут с последнего показа, выскочит что-то еще, причем неважно что. Главное — показать.
Все мы знаем, что в фирмах проводят исследования, и если так делают, значит надо. Мое мнение: эти в кавычках “исследователи” подгоняют систему так, что получаются правильные результаты. Эти результаты показывают начальству, отдел получает больше денег и так по кругу.
Доказательство простое. Во-первых, выпадашка появляется под большим пальцем, а во-вторых, с задержкой. Часто жмешь на нее случайно или в спешке. Например, нужно срочно перекинуть денег на карту ребенку, когда он на кассе, а тут раз — выиграй автомобиль. Нажал и куда-то улетел. Система зафиксировала, что ты перешел, а значит — заинтересован. Просмотр был? Был. Метрики увеличились? Увеличились.
Другой трюк — делать кнопку закрытия ничтожно малой. Видел такое в мобильной версии Хабра. Вся область отвечает за переход, а крестик размером 3x3 мм. Забавно, что даже после перехода баннер не закрывается. Выходило так, что я пытался закрыть, промахивался, улетал на рекламную страницу, возвращался, снова не попадал, и так три раза. С точки зрения системы это три перехода.
Аналитик мыслит очень примитивно. Составляется тепловая карта и туда, где горячо, ставят выпадашки. При этом аналитик уверен, что переходы вызваны искренним интересом клиента. Или он понимает, в чем дело, но врет начальству.
Напоминает ошибку выжившего. Приходят сигналы, но они неверно истолковываются. Помните, повреждения самолетов наносили на схему? Получалась тепловая карта. И только один человек понял, как ее истолковать. Остальные тыкали пальцем и говорили: если здесь много, сюда и фигачь.
Если бы маркетолог спросил пользователя, нравится ли ему, когда на главной два баннера и три тултипа, в ответ ему бы покрутили пальцем у виска. Поэтому маркетолог избегает прямого общения с потребителем. Вместо этого он проводит когортный анализ, строит тепловую карту, считает средний балл в App Store. Все это цифры, а цифры хороши тем, что их можно подогнать в любую сторону.
Мораль в том, что не нужно объяснять глупость умыслом. Три баннера на главной — это глупость. Причины могут быть разными, например нет координации между сервисами, которые показывают выпадашки. Но последствия одинаковы — бардак. Как-то давно я показывал скриншот со StackOverflow: там одна промо-выпадашка закрыла другую. Два дизайнера не договорились, отдел качества не заметил, вот и все. Просто глупость.
Или глупость сегодня тоже считается исследованием?
-
Вставка со стилями (4)
Вот о чем я говорил стопицот раз. Человек пишет письмо, и нужно вставить кусок из какой-то веб-панели. Вот как выглядит результат: идет нормальный текст, потом смена шрифта, кофейный на темно-коричневом фоне, потом синий на черном. Слава богу, после этого снова идет нормальный текст.
Спрашивается, почему вставленный кусок набран другим шрифтом, цветом и с другим фоном? Откуда эта предпосылка? Какими умозаключениями к этому пришли?
Самое ужасное, что это поведение везде по умолчанию. Если человек хочет, чтобы документ выглядел нормально, он должен быть продвинутым: понимать, что такое Paste matching formatting, помнить, сколько служебных клавиш зажимать (две, три, четыре), знать о программах вроде Pure Paste.
Люди, которые программируют поведение как на картинке — когда простая вставка уродует документ — полные отбросы. Других эпитетов у меня нет.
-
Вставка со стилями (3)
В комментариях к прошлой заметке выяснилось, как сделать вставку без стилей. Для меня это настолько важно, что напишу отдельно.
Читатель @snffy дал ссылку на программу, которая делает в точности то, что нужно. Называется Pure Paste. Она прослушивает буфер обмена, и если там форматированная разметка, приводит ее к чистому тексту. Программа поддерживает всякие опции, например что делать со списками, ссылками и так далее. Можно указать программы, чей буфер игнорировать — по умолчанию это Эксель. У каждой опции есть выпадашка с примерами: как было и как будет, если ее включить.
В числе прочего программа чистит ссылки от utm-тегов, трекинговых айди, номеров сессий и остального. Поддерживаются 200 с лишним популярных сервисов и их параметров. Больше нет оправдания тем, кто кидает ссылку с миллионом тегов в адресной строке.
Идея проста и понятна, спрашивается — как же я сам не догадался сделать что-то похожее. Я немного умею в Swift и в принципе бы осилил.
Если вдруг у вас корпоративный Мак, где запрещен AppStore, то программу можно скачать с сайта автора — правда, не последнюю версию.
Удивительно, что на столь специфический запрос нашлась утилита, которая делает в точности то, что нужно. Видимо, на другом конце планеты у автора тоже горела задница от уродской вставки. Приятно видеть, что ты не один такой. Потому что кому ни скажи о проблеме, каждый повторяет как попугай: просто нажми Alt+Shift+Command+V.
Желаю этим советчикам жать по четыре клавиши, пока рука не отвалится от гангрены.
Интересно было пошариться по сайту автора утилиты. У него их несколько десятков — судя по всему, он поставил цель обеспечить себя разработкой. С радостью перевел ему денег, потому что программа замечательная. Другие утилиты автора не пробовал, на это нет времени.
Что ж, еще одной головной болью меньше. Еще одно “преимущество” современных приложений отключено. Вообще, вы задумывались, сколько сил уходит на борьбу с ними? Блокировщики рекламы, блокировщики кук, блокировщики социальных виджетов, блокировка обновлений, отключение уведомлений, всевозможные прокси и noDPI… борьба, борьба, и конца этому не видно. Счастье, что нет-нет да попадется софт, который поставил и забыл о проблеме — хотя бы на некоторое время.
-
Вставка со стилями (2)
Прошлая заметка навеяна вот каким случаем. Я активно переписываюсь насчет одной задачи. Приходится копировать номера сущностей. Я пишу что-то вроде “Джон, пожалуйста проверь, что у сущности 152342662 атрибут
foo.bar
такой же, как и в сущности 2362342623 при условии X”. Разумеется, эти номера я копирую из логов и разных систем. Все они работают в браузере, а значит у них свои шрифты и стили.И получается: фраза “Джон, … что у сущности” выглядит нормально. Потом я вставляю первый айдишник, он зеленый и подчеркнутый. Продолжаю писать — слова “…атрибут
foo.bar
такой же…” тоже зеленые и подчеркнутые. Вставляю второй айдишник — у него большой шрифт и болд. Пишу дальше — слова “при условии X” в два раза больше и вдобавок болдом.Со стороны это выглядит словно писал сумасшедший. Отправить такой текст значит быть полным уродом, заставляя других продираться сквозь кегли, подчеркивания и болды.
Проверил: в меню Edit есть пункт “вставить с текущим стилем”. Нужно всего-то нажать Alt + Shift + Command + V. Так вот: прямо сейчас потренируйтесь. Нажмите одной рукой V и ТРИ системных клавиши. Три, Карл. И это каждый раз, когда нужно что-то вставить.
Что было в голове у клоунов из Teams, которые это писали, я не представляю. Похоже, объяснение простое: люди ищут умысел там, где была глупость. Впрочем, как всегда.
-
Вставка со стилями (1)
Похоже, я никогда не пойму одну вещь. Вот пишешь ты текст в мессаджере или офисном документе. Вставляешь слово из другого документа или браузера. Оно вставляется с сохранением стиля, то есть с другим шрифтом, цветом, начертанием.
У меня вопрос — дальше-то что? После вставки новый стиль не откатывается. Если я продолжу печатать, то весь документ будет в новом стиле. Если я скопирую слово из еще одного документа, стиль опять станет другим, и если печатать дальше, продолжится.
В чем задумка, объясните? Почему в моем документе должны быть стили другого сайта или документа? В чем прикол?
Телеграм, который некоторое время считался адекватным, скатился в эту же яму. Там нет разных шрифтов, но сохраняются начертания (болды и италики). Недавно я писал текст и скопировал термин со StackOverflow, а он был болдом. Телеграм тоже вставил его болдом и не откатил стиль. Печатаешь дальше — все становится болдом. И даже нет кнопки “убрать стиль”.
Вы, конечно, скажете: при вставке зажми Ctrl + Shift + Alt + Command, и оно вставится нормально. А вам не кажется странным зажимать две-три системных кнопки просто для того, чтобы сработало как надо? Может быть, кому нужнен розовый Комик-санс, тот пусть и нажимает?
Словом, может кто-нибудь объяснить, зачем так делают?
-
Журнальный столик
У отелей, гостиниц и съемных квартир есть нечто общее. Точнее, наоборот — кое-чего не хватает, а именно — письменного стола.
Журнальные столики встречаются во множестве. Это убогие поделия не выше колена, от которых ноль пользы и максимум вреда. Пользоваться ими как полноценным столом невозможно. Предполагается, что ты сидишь в кресле, на столике перед тобой — журналы, напитки и гаджеты. На практике до всего этого нужно тянуться, каждую вещь держать в руках, чтобы не брать и ставить по многу раз. Журнальный столик быстро становится пылесборником, а если учесть, что он занимает немало места — хламом.
Журнальный столик банально опасен. Сотню раз было так, что не видишь его из-за своего высокого роста и его низкого. В лучшем случае материшься и жмешь ушибленное место. В худшем легко сыграть в больничку. Дети тоже без конца нарываются на столики, бьют об них бока и пальцы на ногах. Совсем маленькие принимают его за батут: залезают и прыгают по стеклу. Чем это может закончится, ясно всем.
Поэтому когда я заселяюсь в отель или съемную квартиру, отправляю журнальные столики подальше: в шкаф, чулан, на балкон. Если стекло снимается, прячу его под кровать.
Удивляет нелепость ситуации: в квартире якобы два стола, но оба они журнальные, и работать за ними невозможно. Остается работать за кухонным столом, но нужно убрать посуду, крошки, все жидкости.
Как никто другой я понял коллегу, когда подслушал его разговор с эйчаром. Та собирала его в командировку и спрашивала пожелания к квартире. Он ответил: главное, чтобы там был большой письменный стол. Не педерастический журнальный столик, а нормальный стол здорового человека.
Мысленно обнял его и сказал: чел, ты не один такой, я знаю как оно чувствуется.
-
Презентация в Хроме
Только что разговаривал по телефону, объяснял, как открыть PDF-презентацию на компьютере. Ощущения — сплошная гребаная боль.
Во-первых, как бы глупо это ни звучало, на Винде нет встроенной открывашки PDF. На дворе 2025 год, но для этих целей нам предлагают Хром и Edge. Можно пинать Мак за что угодно, но только не за качество коробочного софта. Мак полностью готов к работе: там и мощный PDF-редактор, и почтовый клиент, и что угодно. А на Винде этого нет.
Ладно, нашли комп с Хромом. Открывают PDF и не понимают, как его презентовать — ну то есть чтобы по нажатию стрелочек он не скроллился, а листал страницы. Оказалось, в правом верхнем углу нужно нажать три вертикальные точки, выпадет меню, там выбрать “Present”. Места в тулбаре — хоть самолет сажай. Но дизайнеру опять не хватило места, и он спрятал кнопку по выпадашку.
Спрашивается, почему стоматолог должен разгребать это дерьмо? Ставить на комп Акробаты и Хромы, чтобы открыть формат, которому 30 лет? Почему он должен обшаривать выпадашки в поисках нужной кнопки?
Частично эта заметка перекликается с прошлой про дизайнеров. Причина в том, что дизайнер интерфейса — это обезьянка, которая отрабатывает зарплату. Если бы дизайнер хоть раз что-то презентовал из Хрома, он бы понял, что шариться по выпадашкам неудобно, а нетехнический человек вообще не поймет, что делать.
Микрософт тоже молодцы: в который раз обновляют “Блокнот”, превращая его черт знает во что. А как открыть PDF — ставьте Хром.
Все это вроде как незаметно, но проступает, когда проговариваешь вслух. Натурально, когда говоришь “старт, программы, Хром, перетащи в него файл, потом правый верхний угол, многоточие, презентовать” — понимаешь, какой бред ты несешь.
И пока что не видно, чтобы из этого бреда был какой-то выход.
-
AI и Apple
В определенном смысле мне жаль компанию Apple. Каждый вшивый блоггер пинает их за то, что они отстают в гонке ИИ. Гугл в этом плане, наоборот, на коне: пихают ИИ в каждую выпадашку, в каждую менюшку. У Гугла есть свой браузер, абсолютный монополист, и сегодня он напичкан ИИ-функциями. Фактически Хром — выставка достижений Гугла, витрина всех его сервисов.
Мне жаль Apple, потому что ИИ — определенно не их конек, но их вынудили играть на чужом поле и по чужим правилам. О том, чтобы догнать Гугл, речь уже не идет: тут хотя бы показать что-нибудь. Но пока что все громкие обещания отложены. Стоит ли говорить, что в таких условиях выиграть невозможно.
Меня печалит, что лучшие разработчики Эпла работают день и ночь, чтобы выкатить сырую ИИ-хрень и успокоить инвесторов. Эту хрень я в лучшем случае выключу, либо научусь ее игнорировать. Эти усилия можно было направить в полезное русло: стабилизацию софта и его производительность, например. Но об этом сегодня смешно говорить.
Так, в последнем обновлении Эпл предложил “интеллектуальную” сортировку писем. Разумеется, я отказался, даже не проверяя, что это. Я работаю с почтой 25 лет и за это время сформировал свои правила. Если письма начнут падать не туда, где я их ожидаю, это будет катастрофа. И вообще, почту уже некуда развивать: ей полвека, есть система папок, фильтры, правила. А ведь какой-то бедняга сидел и программировал этот ИИ-бред. Пил кофе, курил сигареты, трекал часы. Жаль человека.
На мой взгляд, борьба на рынке ИИ не принесет Эплу пользы. По-хорошему им нужно ответить чем-то другим, чтобы переломить повестку. Например, выкатить принципиально новый дизайн, причем не скруглить кнопки и добавить воздуха, а придумать что-то принципиально иное. Примерно как в прошлом веке придумали кнопки “копировать” и “вставить”. Это сейчас они в каждом утюге, а тогда стали революцией. Вот и сейчас нужно что-то такого же масштаба. Это может быть и не дизайн, а некое переосмысление того, как человек взаимодействует с устройствами и софтом.
Словом, нужно то, что позволит сказать: ребята, пока вы долбились со своим ИИ, лучшие умы опять всех опередили. Теперь правильно делать так, а не эдак. Лузеры будут скулить, но все равно перейдут на нашу сторону. Так делал Джобс. Справедливости ради, даже с учетом всех искажений продукты у него выходили что надо.
История знает случаи, когда руководитель не ввязывался в текущую повестку, а навязывал свою. Например, товарищ Сталин прекрасно знал, что конкурировать с Америкой в океане он не может, а танки плавать не умеют. Поэтому он сделал ставку на космос и добился там первенства. Американские космонавты в обязательном порядке учили русский язык, он играл в космосе такую же роль, как итальянский — в музыке, а латынь — в медицине. Сейчас это кажется небылицей: представьте, что в айти международным языком стал русский. А ведь на короткий период именно так и было.
Мораль тут простая: нельзя играть против конкурента на его поле. Я бы искренне не хотел, чтобы лучших разработчиков Эпла бросали в ИИ, а остальное делали по остаточному принципу. Эпл должен навязать что-то свое. Других способов выбраться из ямы, в которую они себя загнали, я не вижу.
-
ИИ заменит
Говорят, что ИИ скоро заменит разработчиков. Похоже, это наконец сбылось — вместо человека мне отвечает нейросеть.
Вот как это было: с утра падают билды. Причина в том, что определенный образ качается из Докера слишком часто, и он отвечает с кодом 429: Too many requests. И сообщенька: мол, убавь пыл, горячий ты наш.
Пишу об этом девопсу: Джон, давай перенесем этот образ из Докера в наш репозиторий? Потому что иначе ошибка 429, слишком много запросов к Докеру.
Что же ответил Джон? Иван, я посмотрел документацию, код 429 означает слишком частые обращения. Подожди немного и повтори билд. И заботливая ссылка на сайт Мозиллы со статьей про HTTP-код 429.
Словом, и не поспоришь — да, заменил. Возразить нечем.