Как работают отложенные публикации в Эгее
Кстати, в платной Эгее есть возможность запланировать заметку на время. Понятно, что у меня нормальный интерфейс выбора даты и времени. Но интересно, что для реализации самой функции отложенных публикаций нужно думать как веб-программист, а я заметил, что это не у всех получается.
Допустим, автор запланировал выход заметки на 15:00. Как добиться, чтобы в 15:00 заметка вышла? Веб-сервер умеет отвечать только на запросы, он не умеет по собственной инициативе просыпаться и что-то начинать делать. И тут почему-то многие разработчики начинают думать в сторону крона — планировщика запуска задач по расписанию.
Эгея должна работать на любом шаред-хостинге, у меня нет возможности настраивать и запускать там произвольные вещи. Но главное, что это и не нужно.
Чтобы заметка вышла в 15:00, в 15:00 ничего не должно произойти, буквально ничего. Потому что что вообще значит «вышла»? Допустим вот сервер может проснуться в 15:00 и начать действовать, что он должен сделать-то? Отправить эту заметку на случайный айпи-адрес?..
Сама фраза «заметка должна выйти в 15:00» означает только одно: на все запросы, сделанные начиная с 15:00 нужно отвечать сайтом, где уже опубликована эта заметка. Если на сайт кто-то зайдёт в 14:54, а потом кто-то в 15:19, то заметку нужно будет показать по второму запросу, вот и всё.
Чтобы это работало, нужно было сделать три вещи. Первая — это дать назначать в качестве даты-времени выхода заметки дату-время из будущего. Вторая — при формировании страниц сайта отображать и вообще учитывать только заметки, время которых уже наступило. Третья — доработать систему кеширования, чтобы в 15:19 сайт не открывался в устаревшем виде из кеша.
Про доработку кеша — в основном блоге:
https://ilyabirman.ru/meanwhile/all/kak-rabotayut-otlozhennye-publikacii-v-egee/
Читатель Андрей Пулин показывает пример окна из Ай-ОСа: «Я пару раз обманулся и нажал Not Now, имея в виду что „нет, спасибо, я с бабушкой на такси в другой раз поеду“. А они, оказывается, предлагали добавить в какое-то саммари».
Я сохранил себе в папку habit, где лежат примеры по теме «Привычка». Люди действуют на автопилоте и воспринимают интерфейс как цельный образ. Читают необходимый минимум, чтобы этот образ сложился. В этом окне заголовок «Болт с бабушкой» — и человек мгновенно жмёт «Не щас». Что там написано посередине — совершенно плевать, никто этого даже не узнает.
Осмысленно выбранные толщины линий делают иллюстрацию понятнее и красивее. Исправляем на примере окна. 3 минуты с семинара курса:
https://www.youtube.com/watch?v=X7mBhTG08xA
Или так :-(
https://vk.com/video286049442_456239413
Сегодня — последний день запись на сентябрьский курс (31 августа — 29 сентября). Всё про курс, отзывы и кнопка записи:
https://bureau.ru/courses/ui-online/
Синхронизация — это сложно (на примере заметок Эпла)
Заметил любопытный баг в синхронизации заметок у Эпла, который иногда приводит к потере данных. Представьте, что у вас есть файл с таким списком, скажем, покупок:
• помидоры
• сыр
• молоко
• колбаса
• орехи
Вы приходите в магазин. Помидоры так себе, нужных орехов нет, остальное покупаете и удаляете из списка, остаётся:
• помидоры
• орехи
После магазина заезжаете на кофе, открываете ноутбук, там ещё старый список:
• помидоры
• сыр
• молоко
• колбаса
• орехи
Вспоминаете, что ещё надо купить сметану, дописываете её рядом с молочкой:
• помидоры
• сыр
• молоко
• сметана
• колбаса
• орехи
Тут ноутбук ловит местный вайфай и синхронизируется. Вхуж:
• помидоры
• орехи
Куда делась сметана? А просто просралась! Видимо у Эпла так устроена логическая модель этих списков, что я удалил «диапазон элементов» и тот факт, что в него позже добавилась сметана, ни на что ни повлиял, диапазон удалился вместе со сметаной? Ну или я добавил сметану в как бы уже удалённый диапазон? Фиг знает, но такую лажу я ловлю уже второй раз.
У нас школа обновилась:
https://bureau.ru/news/2024/schoolx2/
Мы и так лучше всех людей учили, а теперь и ещё лучше будем.
Кладь и убор
Каждый раз, когда слышу «ручная кладь», думаю над словом «кладь»: откуда его взяли? Как происходил процесс сочинения этого термина? Или он возник достаточно давно, когда кладь была какая-то ещё?
«Головной убор» — похоже, из той же серии. Какой ещё бывает «убор»?
Давайте соберём много таких словосочетаний, существительное из которого отдельно не используется. Ну и плюс это будет ещё одна площадка для самоутверждения за мой счёт всех, кто прекрасно знает и использует в повседневной жизни эти слова в других сочетаниях.
Черессубботний схемоулучшательный совет:
https://bureau.ru/soviet/20240824/
Для тех кто спешит:
Писать вверх ногами — плохая примета.
Метро Будапешта: линии 3 и 4 —
https://ilyabirman.ru/meanwhile/all/budapest-metro-lines-3-4/
Полезная ссылка
Иногда публичный интернет подключается через дурацкое окно с смс-подтверждением. Но если это окно потерялось, его хрен снова вызовешь. Или ещё бывает, что интернет затупил, и хочется как-то заново вызвать этот интерфейс и перезайти.
Для этого нужно открыть такой адрес:
captive.apple.com
Я хрен знаю почему и при чём тут Эпл, а ещё загадка, почему Сафари никогда не запоминает его и не предлагает автодописать в адресной строке. Но в любом случае это быстрее, чем выключать и включать вайфай в надежде, что окно вылезет снова.
Чтоб созвучно было
У человека и животных есть встроенная реакция на опасность, по-простому называемая «бей или беги». По-английски это называется fight or flight, то есть «дерись или полёт». Ладно, «или побег» тоже можно представить. Ну или даже «драка или побег». Интерпретировать flight как глагол «сбегать» очень сложно. Я порылся в примерах, и такое употребление кажется очень экзотическим. Короче, я уверен, что эти два слова подобрали просто чтобы было созвучно, а не потому что они точно описывают что-то. И как-то себе объяснили с натяжкой, что в целом они ну туда-сюда подходят.
Ещё на формирование человека влияют среда и воспитание. Обсуждение того, что в какой степени влияет, по-английски проходит под тегом nature or nurture, то есть «природа или воспитание». Английское nurture отличается от русского «воспитания», потому что воспитание слишком буквально, а nurture описывает как бы весь процесс заботливого «выращивания». Но с другой стороны, воспитание включает влияние всего общества, а nurture, как кажется, описывает только влияние родителей и ближайших родственников. Но как ни крути, nature тут, как мне кажется, тоже для созвучности, ведь речь идёт о всех биологических факторах в противопоставление социальным. У животных тоже есть социальные взаимодействия, разве это не nature?
В общем, может, я гоню и чувство языка меня подводит, а в обоих случаях использованы самые точные и подходящие слова. Но то, что они созвучны, мне всё равно кажется глупостью и неудачей, как когда в дизайне случайно выравниваются вещи, которые не должны по смыслу выравниваться. Почему-то американцы очень любят такие созвучия; любят аббревиатуры, похожие на обычные слова; любят изображать тривиальные вещи на графике. А я от этого чувствую, что со мной говорят как с дураком.
Бирман снова великий. В подкасте «Думаем дальше № 23: Отделы дизайнеров с пипетками» он рассказал про концепцию дизайна как эволюции.
Много где, но особенно в больших компаниях, дизайн перестал быть осмысленной, целенаправленной деятельностью (проектированием) и превратился в эволюцию — команда пробует маленькие изменения (мутации), меряет их эффект и оставляет те, которые приводят к положительным изменениям прямо сейчас. Совсем как эволюция!
Вы все знаете миллион таких примеров. Я помню, как Букинг хвастался тем, что в любой момент времени у них одновременно проходит под сотню А/Б тестов, а мы смотрели на это и говорили: ребят, ну очевидно же фигня получается! А они — зато по данным!
Эволюция, очевидно, работает. Проблема в том, что она а) занимает много времени (но это ладно, допустим, у корпораций есть бесконечность времени), и б) позволяет найти только локальный максимум. Скажем, с помощью эволюции невозможно перейти от пропеллерного двигателя к реактивному (пример из подкаста) — каждое изменение должно быть маленьким, локальным и _обязательно улучшать показатели_. Поэтому большие компании никогда не делают новые продукты, а только покупают и развивают их.
Процесс поиска локального максимума иногда приводит к странным «багам». Например, у жирафа гортанный нерв идет от мозга вниз по шее к сердцу, заворачивается за аорту и идет обратно к гортани. Получается 4.5 метра, хотя оптимально было бы соединить напрямую. Просто у других животных шея короткая, и заворачивать или нет нет никакой разницы, а когда шея стало удлиняться, так и оставили.
В подкасте приводится пример Инстаграма — у них сейчас посты в одном месте, сторисы в другом, а рилсы в третьем. При этом периодически одно подмешивается к другому, потому что людям непонятно. Каждый из этих шагов был понятен, но результат — сложная нелогичная каша. Никто ни в какой момент не сел и не придумал, как это все должно работать вместе.
Причины тоже понятны — во-первых, большие компании боятся что-то менять. А вдруг сломаем? Никто же не знает, почему условный Инстаграм на самом деле работает. Просто когда-то сделали, запустили и полетело, а все сделали вид, что так и задумывалось.
Вторая причина — квалификация. Как и в любой профессии, новичков сильно больше, чем опытных дизайнеров, и их всех надо трудоустраивать. Но давать им в руки руль опасно — никто не знает, хорошие из них идеи полезут или странные. Поэтому им ничего на самом деле менять не дают.
Самое веселое в том, что эволюционный дизайн первым заменят нейросети, потому что он прекрасно автоматизируется. Хэй Сири, придумай мне 10 вариантов расположения надписи «3 человека смотрят этот отель прямо сейчас, а осталось всего две комнаты!». Выкладываешь, меряешь, и если что-то выстрелило — мержишь в мастер. Зачем в этом процессе хоть где-то человек? Правильно, незачем.
Будущее полно надежды как никогда.
Думаем дальше № 23 — «Отделы дизайнеров с пипетками» с Мишей Нозиком
С Мишей Нозиком обсуждаем исследования, дизайн против эволюции и боязнь белого листа.
0:00 — Тоска на тему исследований как «основного инструмента продуктового дизайнера»
8:58 — Как Ютюб тестировал новый интерфейс
12:12 — Дизайн и исследования на примере автомобилей
18:34 — В бюро приходят визионеры
23:05 — Про матрицу системы и анализ задачи в бюро
28:42 — Дизайн против эволюции. Дизайнеров всё больше, а дизайна всё меньше
33:55 — Что значит «эволюция»? Докинз и гортанный нерв жирафа
39:40 — Дизайнер перестаёт быть дизайнером и становится «оператором эволюции»
42:52 — Дизайнер как автор продукта
54:21 — Боязнь белого листа. Метод Ильи
59:10 — Метод Миши (обратный)
1:09:16 — Приём минимизировать выразительные средства ради аккуратности
1:12:43 — Мытьё окон, перестановки, работа в четыре руки и что-то там ещё
Эпл · Ютюб · Я.Музыка · Мейв
Но лучше подписаться по РСС в подкастном приложении:
https://cloud.mave.digital/51724
Причина № 143 любить «Оверкаст». Разработчиков, которые способны писать программы, чтобы они весили столько, сколько положено, почти не осталось на этой планете.
Читать полностью…Тупо, когда тебе приходит уведомление, по нему ты переходишь в программу, а программа вообще не в теме, что она там хотела тебе сказать, и долго качает это с сервера.
Разработчики, не ленитесь нормально обрабатывать пуши. По пушу можно не выводить уведомление, а разбудить приложение, скачать всё что нужно, а потом уже вывести локальное уведомление, которое откроется мгновенно.
У меня в конце августа начнётся очередной интерфейсный курс. Я вам периодически выкладываю разные кусочки с семинаров. Но я как-то делал такое кино про то, как вообще проходит курс, вдруг вы не видели:
https://www.youtube.com/watch?v=WXPz9bjRQhQ
Ближайший курс пройдёт 31 августа — 29 сентября. Сейчас −10% из-за ранней записи:
https://bureau.ru/courses/ui-online/
Как у вас Ютюб кстати, работает?
Пытаюсь запланировать публикацию здесь в канале на 2 сентября. Тыкаю-тыкаю, а телеграм это игнорирует. Ни ошибок, ничего, просто не тыкается.
Разобрался: оказывается, нельзя выбрать дату в сентябре, если сверху выбран август. Нужно было нажать сверху справа стрелку вправо, чтобы включился сентябрь, и тогда уже выбрать 2 сентября.
Как вот можно было так напрограммировать? Удивительно.
Кулинкович про нейросети, Харрис про моральную конференцию, Виленская про «сложную звуковую вертикаль», Якубович про то, как быть живым, и Ева Эльфи про что-то там ещё. Что послушать:
https://ilyabirman.ru/meanwhile/all/listening-73/
Кроль и вольный стиль
Есть разные способы плавать: брасс, кроль, баттерфляй. А ещё есть плавание «вольным стилем» — это когда плывёшь как хочешь. Спортсмены всегда хотят кролем, потому что так быстрее всего, но в результате многие думают, что «вольный стиль» — это некое альтернативное названия кроля. На бытовом уровне ошибка несущественная, но случае с Эплом это тупняк на ровном месте.
Нахрена они пишут Freestyle вместо Crawl? Когда я плыву брассом, это я тоже по собственной воле делаю, меня никто не заставляет. При этом я брассом плаваю быстрее, чем кролем.
Кстати, по поводу слова «кроль» к русскому языку тоже есть вопросы. Вот что мешало назвать это «ползком», почему понадобилось иностранное слово, ещё и похожее на какого-то кролика? Удивительно, что русский язык постоянно стесняется собственных слов, они ему все кажутся какими-то неуместными и неудачными всё время, и он пытается взять иностранные слова ровно с тем же значением и как-то подкрутить-изуродовать под себя.
Бирман объясняет, как подавать сложные слайды на презентациях:
https://bureau.ru/soviet/20240827/?utm_source=tg-s-s-s240827-270824
Форма мыла
Мыло имеет форму мыла, чтобы сохнуть. Некоторым хочется положить выпуклой стороной вниз, особенно если мыльница с углублением. В результате в месте касания мыла и мыльницы образуется мерзкая мыльная жижа. Но углубление в мыльнице тоже сделано, чтобы мыло сохло! Нужно положить выпуклостью вверх, чтобы между мылом и мыльницей оставался зазор для воздуха. Кто ж вас ещё жизни-то научит!
Это терминал получения талончиков в челябинском МВД. Там ничего невозможно понять, бесконечный список государственных услуг с названиями по 10 слов, среди которых найти нужную я не смог. А для непонятливых как раз инструкция слева сверху! Читать я её, конечно, не буду.
Во-первых, если вашему публичному интерфейсу нужна инструкция, значит вы не справились с его проектированием. Это не Эксель и не Фотошоп, которые люди пойдут специально изучать, чтобы потом использовать эффективно. Это интерфейс, эффективность которого буквально измеряется в том, насколько его понимает неподготовленный пользователь.
Во-вторых, при размещении инструкций, образцов, расписаний и схем важно учитывать, что люди будут вынуждены проводить некоторое время за их изучением. А значит они должны быть в таком месте, где эти люди не будут мешать другим. Разумеется, не прямо перед терминалом, к которому очередь и так.
Что делать в Токио в середине сентября?
Пришло время для традиционного вопроса.
Что делать в Токио в середине сентября? Куда сходить, на что посмотреть, с кем встретиться, где попить кофе? Где кайфово работать? Буду там первый раз, ничё не знаю.
Забавный спецэффект из студенческой работы: это иконка «добавить фотографию», но кажется, что у фотика есть положительный и отрицательный контакты, и туда можно клеммы нацепить. Или как там это всё называется. Ну вы поняли.
Читать полностью…Выпустили четвёртую часть (из пяти) книги Designing Transit Maps — английской версии «Дизайна транспортных схем». Вышли последние три главы четвертой части: Symbols, The city и Excellence. Новость на сайте бюро на английском:
https://bureau.ru/news/2024/book-metro-details-en/
Покупайте и читайте! Книга просто нереально крутая для всех дизайнеров и вообще любопытных ребят.
И там есть бесплатная демоглава про изгибы.
Английская книга выходит сразу с мобильной версией. Общий прогресс — на последней картинке.
Скиньте англоговорящим коллегам.
Совет Ильи Бирмана:
https://bureau.ru/soviet/20240813/?utm_source=tg-s-s-s240813-130824
Дизайнеры знают, что скруглённые углы просто по радиусам выглядят не круто. Намного круче выглядят углы, выполненные суперэллипсами.
Сейчас на одном там проекте опять возникла необходимость генерить такие формы углов. И теперь меня эти линии везде преследуют, везде их замечаю.
Вот нашёл на даче разделочную доску и сразу мне бросилась в глаза форма. Видимо, в Советском союзе уже умели в суперэллипсы.
Сначала как просили, потом по-своему
Одна из ошибок, которую совершают дизайнеры в работе с арт-директором, выглядит так.
Арт-директор попросил дизайнера что-то как-то сделать. Дизайнер ушёл делать. Пока делал, решил, что получается плохо. Сделал по-своему, принёс показывать арт-директору довольный. Что думает в этот момент арт-директор? «Это не то, что я просил». Арт-директор заново просит дизайнера сделать то же самое. Время встречи потрачено зря.
Когда арт-директор о чём-то просит, он хочет это увидеть (это верно и для любого другого человека тоже). Если дизайнер приносит другое, то это классический пример обманутых ожиданий из теории переговоров. Но главная проблема даже не в этом.
Главная в том, что не произошло движения вперёд. Да, есть шанс, что дизайнер принесёт крутое решение, и арт-директор, увидев его, влюбится и забудет о своей первоначальной идее. Но чаще бывает так: в голове арт-директора по-прежнему есть первое решение, и он по-прежнему хочет его увидеть.
Даже если получается плохо, нужно принести и показать арт-директору. Возможно, это только по мнению дизайнера плохо, а арт-директору нужно именно так. Возможно, дизайнер не понял задумку целиком, и нужно будет изменить что-то ещё. Возможно, получилось действительно плохо и арт-директор предложил ерунду. Ну так он должен своими глазами это увидеть, и тогда, возможно, предложить что-то ещё. Если арт-директор предложил что-то на прошлой встрече, и так и не увидел, что получилась ерунда, то почему он вдруг должен отказаться от этой идеи на этой встрече?
Почему-то в ответ на это иногда звучат переживания о тех самых крутых решениях, которые в такой модели якобы теряются, и о том, что так инициативу и блеск в глазах дизайнера можно случайно убить.
Но ни один нормальный арт-директор не расстроится, если ему принесут крутое решение! Главное приносить его не вместо того, о чём просили, а вдобавок: «Ты просил сделать так, но мне не очень понравилось, и я нарисовал ещё второй вариант, хочу его тоже показать». А если нарисовать оба варианта не хватает времени, то можно хотя бы заранее договориться: «Ты просил сделать так, но я хочу попробовать вообще другой вариант предложить, и твой сделать не успею, можно так?» Заметьте, что даже эта фраза звучит странновато и вызывает встречные вопросы, но тут по-крайней мере есть, о чём говорить, и не будет неприятных сюрпризов потом.
Кстати, дизайнеры, которые умеют удивлять арт-директора крутыми решениями, обычно и с ожиданиями умеют работать.