c8e741ca41
Поверх байт-в-байт 5a — только фиксы реестра: - §3.14: закрывающий </div> эмитится в КАЖДОЙ ветке media-рендера (раньше несбалансированный div в конце фрагмента авто-закрывался bleach позже). На фрагмент-оракуле изменились ровно 2 кейса (file_unique_id_none, webpage_without_photo); в feed-голденах — чисто РЕЛОКАЦИЯ </div> с конца поста на место сразу после пустого media-div (счётчик </div> не меняется, контент идентичен). Затронуты каналы с webpage-без-фото (theyforcedme без изменений). - §3.13: гард >100MB теперь на ЛЮБОЙ media-объект (не только message.video); collection-only, байты фида не трогает. test_stage5b_media_fixes.py (14 тестов). Полный сюит 427 passed, PYTHONHASHSEED 1/42. Golden строго по §3 (проверял независимо: net-теги 0, только </div>-релокация). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
848 lines
134 KiB
HTML
848 lines
134 KiB
HTML
<div class="message-body"><div class="post">
|
|
Повышение разрешающей способности требует времени и усилий. Поэтому неудивительно, что у большинства идущих по этому пути возникает желание компенсировать затраченные ресурсы. Иными словами, они делают область высокого разрешения своей профессией, продают доступ к натренированной в голове нейросетке.<br><br>Не обладающие разрешением же из-за экономии денег, недоверия (вдруг этот «спец» шарлатан или лжец) или из-за в целом неприятного опыта (стесняешься задавать глупые вопросы, перед врачом надо раздеваться и показывать части тела) пытаются срезать этот путь, воссоздать разрешающую способность малыми силами.<br><br>Раньше этой роли служили всевозможные обучающие пособия, статьи и видосы разного уровня наглости обещаний. <i>«C++ для чайников»</i>, <i>«Быстрое погружение в рейв-сцену»</i>, <i>«На что надо смотреть при выборе б/у авто»</i>, <i>«Фронтенд с нуля до офера в FAANG за 1 месяц»</i>, <i>«Топ-20 трендов веб-дизайна в 20ХХ году»</i>, <i>«Сантехники десятилетиями скрывали от нас этот секрет...»</i>, <i>«Делай так 2 раза в день, чтобы спина не болела…»</i>. Доведенный до предела принцип Парето, обещание дать 80% знаний по области всего за 2 / 20 / 200 / 2000 минут.<br><br>Сейчас это место, конечно, занимают нейросети.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
В оптимистичных сценариях будущего нейросетями как вспомогательным инструментом пользуются как раз обладатели разрешающей способности, у которых хватает компетентности верифицировать результат работы нейросети. Дизайнер превращается в арт-дира и выбирает лучшее направление из предложенных нейросеткой вариантов. Сценарист просит нейросеть переписать диалог и не отстает, пока не получит достойный вариант. Программист не пропускает в прод код нейросети, не соответствующий его стандартам качества. Производительность увеличивается, компетентность и качество остается.<br><br>В реальности получается наоборот: люди чаще пытаются заменить нейросетью обращение к людям с разрешающей способностью, получить своего «мастера в кармане». Но у них не хватает разрешения, чтобы достоверно оценить качество результатов работы нейросети, поэтому проблема с шарлатанами и специалистами-лгунами воспроизводится уже тут. Про мастерство нейросетей убедительно нести чушь наслышаны уже все, достаточно для отрезвляющего эффекта периодически спрашивать о вещах, в которых хорошо разбираешься. Вероятно, с развитием технологии количество чуши уменьшится, и акцент сместится на ложь, когда с переходом ИИ-компаний в стадию «пора пытаться в прибыльность» эффективные маркетологи неизбежно наполнят ответы завуалированной рекламой.<br><br>Обладатели разрешающей способности, конечно, недовольны. Не только демпингом и раздражающими прогнозами о закрытии очередной (их) профессии, но и качеством работы нейросетей, ведь они же видят разницу. Ретушер видит, что у сгенерированной картинки несогласованное освещение. Опытнейший переводчик видит корявость в нейросетевом переводе. Хороший дизайнер видит, что за аккуратным сгенерированным макетом прячется умственная пустота. Нейромузыка бесит музыкантов и ценителей.<br><br>Но остальные такие: «А нам норм!» *косоглазая собачка жпг*. Им не хватает разрешающей способности, чтобы увидеть эту разницу, поэтому причитания программиста об игнорировании в сгенерированном коде лучших практик индустрии воспринимаются как бубнеж испуганного луддита, упускающего власть из своих рук. Да, может код какой-то не такой, но зато он есть, что-то делает и создается магически прямо из-под пальцев. Лучше товар неопределенного качества дешево и быстро, чем вроде как качественный товар нескоро и задорого.<br><br>Да, сшитая портным по меркам одежда будет сидеть лучше, чем фабричные варианты из магазина. Однако к портному сейчас обращаются лишь ценители, большинством это воспринимается как избыточная роскошь для чудиков. Обувной мастер фыркает при виде следов клея на швах кроссовок в магазине, как дизайнер фыркает на неаккуратные кривые Безье и несогласованные толщины линий в сгенерированном логотипе. Это качество не их уровня. Большинству на это плевать.<br><br>Конвейер снова побеждает ремесленников, только в этот раз конвейер не физических товаров, а умственных. И как в случае с одеждой и обувью, средний уровень качества дизайна, музыки, программ упадет, но при этом они станут настолько дешевле и доступнее, что все согласятся на этот размен. Раньше мебель делали на заказ у столяров и передавали по наследству. Теперь стол из Икеи настолько доступен, дешев и недолговечен, что при переезде в новую квартиру его проще выкинуть, чем перевозить.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Что же остается носителям разрешающей способности?<br><br>Можно попытаться втиснуться в сужающуюся прослойку «Долго, дорого, охуенно»-мастеров, которые будут обслуживать ценителей и знатоков, не удовлетворенных ширпотребом. Заказ дизайна сайта у человека будет как обращение к гитарному мастеру за кастомной гитарой. Это, конечно же, станет частью маркетинга: нельзя будет не упомянуть, что приложение было сделано вручную опытными программистами, дух старой школы е-е-е! Уже сейчас публикации творцов сопровождаются повышающим ценность уточнением, что эта всё AI-free, своё натуральное с грядки. Работы <a href="https://www.mrdoodle.com/the-doodle-house">художника Mr. Doodle</a> уже немыслимы без сопровождающего бэкстейдж-видеопруфа, как эти работы были (его ручками) сделаны.<br><br>Другой вариант — попытаться встать во главе конвейера. У фабричных кроссовок тоже есть авторы, создавшие концепцию, предсерийный образец, лекала. Похожим образом кажется естественным этап создания и продажи доступа к кастомным версиям нейросеток, воспитанных на принципах и вкусах кураторов. Если стандартная нейросеть посмотрела на все проекты на Бихансе и выдает такой же средне-предсказуемый результат, то кастомная же версия пройдет дополнительный этап критического отношения к проектам на Бихансе под надзором носителя высокой разрешающей способности.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">745 👁</span> | <span class="date">24/06/26, 02:29:30</span> | <span class="message-id">#2260</span><br><a href="tg://resolve?domain=meow_design&post=2260">Open in Telegram</a> | <a href="https://t.me/meow_design/2260">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<b>Разрешающая способность</b><br><br>У каждого из нас есть своя разрешающая способность, различная от области к области:<br><br>— моя жена отличит плохое исполнение оперной арии от хорошего, для меня же оба будут лежать рядом на полочке <i>«так поют в опере»</i><br><br>— орнитолог умеет распознавать виды птиц, которые для большинства людей — неотличимые <i>«маленькые серые птички»</i><br><br>— кто-то даже по форме светящихся ночью фар способен определить марку и модель авто, для других же машинки отличаются лишь цветом и размером<br><br>— гроссмейстер видит на шахматной доске то, что не видит новичок<br><br>— ценители кофе третьей волны ловят нотки послевкусия и умеют отличать Эфиопию от Кении, для других же весь кофе одинаковый на вкус (будто горсть земли залили кипятком)<br><br>Этот список очевидных примеров можно продолжать бесконечно. Думаю, у каждого из нас есть область, в которой мы видим различия, нераспознаваемые большинством других людей. Наша разрешающая способность в этой области выше. Ну вы знаете, <a href="https://www.youtube.com/watch?v=i9DrGNL_LZ8">Фрукт-фрукт, сиська-сиська.</a> They're The Same Picture точка жпг<br><br>Это как набор рецепторов, по одному на каждую область. Они имеют определенную чувствительность, примерно как улавливающий свет фоторецептор.<br><br>0. На нулевом уровне рецептор слепой и ни на что не способен. Как если дать мне искать пневмонию на рентгеновском снимке грудной клетки.<br><br>1. На первом уровне рецептор однобитный, он может отвечать только <i>«да-нет»</i>, есть свет или нет. Хороший фильм или плохой, вкусный кофе или нет.<br><br>2. На втором уровне рецептор начинает различать уровни интенсивности сигнала. Вместо бинарного <i>«плохо-хорошо»</i> появляется шкала от <i>«очень плохо»</i> до <i>«очень хорошо»</i>.<br><br>3. На третьем уровне рецептор выходит за пределы одной шкалы и уже способен раскладывать сигнал по нескольким измерениям, зрение становится цветным. <br><br>Вместо <i>«классный логотип»</i> — <i>«логотип современный и даже пытается быть в тренде из-за использования гипертрофированных ловушек для краски</i>;<i> спрятанная в форме</i> <i>метафора остроумная и узконаправленная, ведь ее распознают только те кто в теме;</i> <i>форма динамичная</i>, <i>общая серьезность оттеняется игривостью в деталях»</i>. <br><br>Вместо <i>«средний футболист»</i> — <i>«умный и техничный опорник с хорошим ударом, но при этом медленный и ленивый, плохо играет головой, склонен к излишнему риску»</i><br><br>Вместо <i>«мерзавец»</i> — <i>«прекрасный музыкант с природным актерским талантом и харизмой, но паталогический лжец и приспособленец, готовый идти по головам</i> <i>ради славы»</i><br><br>Дальнейшее повышение разрешающей способности идет через увеличение битности шкал и добавление всё новых измерений. В том числе — добавление оси времени, то есть способность распознавать изменение сигнала со временем: <i>«раньше это обладало свойствами А, а теперь уже А*»</i>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Из этого у меня такие выводы:<br><br>1. Разница скорее всего существует, даже если не хватает разрешающей способности ее разглядеть.<br><br>Это источник вечных маленьких культурных сражений в обществе, где большинство высмеивает обладателей некоторой разрешающей способности. Скажем, над дизайнерами смеются из-за их привязанности к продукции эпла (ведь в андроиде/виндовсе/линуксе/хуавее функционала больше и дешевле!), а для тех это <s>ускользающий</s> шанс не кровоточить ежеминутно глазами от взаимодействия с продуктами, сделанными с пренебрежением к дизайну.<br><br><br>2. Стоит доверять советам обладателей высокой разрешающей способности в какой-то области, даже если сам не видишь разницы. <br><br>Это часть возможного пути развития рецепторов: сначала идешь за мастером вслепую, а потом зрение адаптируется, начинаешь различать силуэты. Тем более это имеет смысл, если и не надеешься сам подтянуться в этой области. К советам врача стоит прислушиваться.<br><br>Скажем, я могу отличить Ариал от Гельветики, но какие-то совсем тонкие шрифтовые детали распознать не способен. Но если Илья Рудерман и другие выдающиеся шрифтовые дизайнеры <a href="https://type.today/ru/journal/neo">в разборе гарнитур из Google Fonts</a> объявили какой-то шрифт некачественным, я этот совет принимаю, даже если сам не вижу брак, о котором они говорят.<br><br><br>3. Всегда найдутся шарлатаны, симулирущие наличие повышенной разрешающей способности перед теми, кто ей не обладает.<br><br>Поэтому важна ее верифицируемость. Настоящий аудиофил отличит в слепом тесте прогретые провода из бескислородной меди от вешалки. Матерый сомелье определит регион происхождения вина. Сенсей авторской системы боевого искусства готов <s>получить в табло</s> сразиться с боксером из ближайшей секции. <br><br>Кажется, не для всех сфер такие слепые тесты возможны (может ли театральный критик в каком-то слепом тесте распознать качественную актерскую игру?), поэтому есть альтернатива верифицируемости попроще: признание среди других претендентов на обладание разрешающей способности в этой сфере.<br><br>Любой ученый сможет меня обмануть профессиональной терминологией и отсылками к результатам экспериментов, которые я сам способен воспроизвести только гипотетически (ну нет у меня своего адронного коллайдера), и мне остается только уточнить, прошла ли его статья на эту тему в рецензируемый научный журнал.<br><br>Но этот способ и менее надежный, ведь есть опасность, что вся сфера в принципе шарлатанская, вроде какого-нибудь всемирного совета потомственных ясновидящих.<br><br>А еще человек может обладать разрешающей способностью в какой-то области, но при этом вещать о ней ложь из-за каких-то своих интересов. 9 из 10 стоматологов готовы порекомендовать что потребуется, а консультанту в магазине выгодней продать товар какой-то определенной марки.<br><br><br>4. Повышение разрешающей способности — это не единая траектория. Обладатели одинаково продвинутой разрешающей способности не обязаны быть строго единого мнения. Внутри этой области могут быть разные направления, школы, личные вкусы.<br><br>Сколько раз выдающиеся деятели в какой-то сфере были категорически несогласны друг с другом. <a href="https://ru.wikipedia.org/wiki/Спор_Таненбаума_—_Торвальдса">Спор Таненбаума с Торвальдсом</a> не означает, что кто-то из них самозванец. <br><br>Но надо помнить: доверяя обладателю разрешающей способности в какой-то области (п. 2), ты принимаешь и его взгляд на эту область. <br><br>Если решил начать разбираться в автомобилях с распросов помешанного на них друга, скорее всего он обратит тебя в церковь своей любимой марки. Такой вот синдром утенка, от которого получится избавиться только по мере развития своей собственной разрешающей способности.<br><br><br>5. Можно обладать высокой разрешающей способностью в области, оставаясь в ней только созерцателем, но не наоборот: созидатель обязательно должен обладать разрешающей способностью в своей области.<br><br>Сомелье не обязательно должен обладать винодельней, а аудиофил — паять лампы усилителя. Но винодел не справится без навыков сомелье, а хороший создатель аудиотехники будет еще и аудиофилом. Попытка кинокритика снять свой фильм может добавить ему сочувствия к режиссерам, которых он обличает в рецензиях, но не сильно повысит его профильную зрительскую (созерцающую) разрешающую способность.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Мое любимое произведение о разрешающей способности — документальный фильм <a href="https://www.kinopoisk.ru/film/609155/">«Мечты Дзиро о суши»</a> о японце, который больше 75 лет (к моменту выхода фильма) совершенствовался в одной конкретной области — приготовлении суши. <br><br>Сама область тут лишь декорация, потому что принципы мастера, идущего по пути совершенствования навыков, общие для всех сфер. Поэтому в отзывах на фильм можно встретить и реплику профессионального пианиста <i>«с первых кадров можно смело заменять суши на фортепиано и смотреть уже в таком „транслированном“ виде»</i>.<br><br>Объявляется пауза до конца недели на просмотр этого фильма, после чего продолжу загонять про разрешающую способность.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1248 👁</span> | <span class="date">03/06/26, 22:18:58</span> | <span class="message-id">#2257</span><br><a href="tg://resolve?domain=meow_design&post=2257">Open in Telegram</a> | <a href="https://t.me/meow_design/2257">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2256/AgAD5hlrG6QyaEg/9085c8cb" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Маркетологи добрались и до FAQ. Теперь это не часто задаваемые пользователями вопросы, а дурная пьеса для одного актера, где маркетолог задает себе же выдуманные им вопросы и отвечает на них своими рекламными прокламациями.<br><br>— А правда, что у вас началась весенняя мега-акция «Каждая третья покупка бесплатно*», название которой не является публичной офертой?<br>— Отличный вопрос! Вы правы, действительно, с 1-го числа...
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1492 👁</span> | <span class="date">19/05/26, 23:40:32</span> | <span class="message-id">#2256</span><br><a href="tg://resolve?domain=meow_design&post=2256">Open in Telegram</a> | <a href="https://t.me/meow_design/2256">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2253/AgADPRlrGw_rMEg/aa263e08" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2254/AgADPhlrGw_rMEg/dcfe1e47" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Как вы могли догадаться, Википедия — мой любимый способ прокрастинации. Система учета времени говорит, что на чтение Википедии у меня уходит в среднем 5 часов в неделю. В ответ я ей рассказываю о десятичном времени в революционной Франции и движении глаз саккадами при чтении.<br><br>Надеюсь, другим ценителям такого изысканного тупняка мой кастомный стиль окажется полезным.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">2088 👁</span> | <span class="date">14/05/26, 13:11:03</span> | <span class="message-id">#2255</span><br><a href="tg://resolve?domain=meow_design&post=2255">Open in Telegram</a> | <a href="https://t.me/meow_design/2255">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 no_image 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
Одна из причин, почему веб все еще не проклят окончательно — его относительная открытость. В отличие от приложений, сайты не компилируются в неделимый бинарник, а передают браузерам для выполнения свой исходный код (ладно, только фронтенд). И в эти исходники можно вмешиваться. <br><br>Изменения не ограничиваются использованием адблока. Если заглянуть в эту нору кастомизации глубоко, выбраться получится только обвешанным всевозможными дополнениями, меняющими поведение как браузера, так и отдельных сайтов. Скажем, я в файерфоксе накопил 23 дополнения.<br><br>Но больше всего мне нравится возможность модифицировать стили сайтов под себя, накидывая свой CSS поверх. В пару кликов поправить слипшийся интерлиньяж, поменять шрифт на нормальный или ограничить максимальную ширину текстовой строки — это доступная нам магия веб-инспектора, которую мы не ценим по заслугам.<br><br>Браузерные дополнения вроде Stylus (<a href="https://github.com/openstyles/stylus">https://github.com/openstyles/stylus</a>) позволяют закрепить такой «CSS-десант» за сайтами (чтобы изменения в веб-инспекторе не сбрасывались после перезагрузки страницы), а для обмена кастомными стилями существуют сайты вроде <a href="https://userstyles.world/">https://userstyles.world/</a>. Конечно же, как и на всех сайтах сообществ кастомизаций, 99.95% опубликованных стилей совершенно ужасны, так что энтузиазм перед посещением стоит откалибровать.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2242/AgAD8hJrG3PuKUg/d4576088" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
В 2017 году я опубликовал <a href="https://userstyles.world/style/194/wikipedia-clear-style">свой стиль для Википедии</a> и подробно описал в <a href="https://medium.com/design-pub/css-%D0%B4%D0%B5%D1%81%D0%B0%D0%BD%D1%82-%D0%B2%D0%B8%D0%BA%D0%B8%D0%BF%D0%B5%D0%B4%D0%B8%D1%8F-16cd911399ea">статье на Медиуме</a> мотивацию принятых решений.<br><br>За это время стиль установили 16 723 раз. Однако с тех пор сначала англоязычная, а недавно и русскоязычная Википедия сделали редизайн, из-за чего мой стиль стал работать фрагментарно. <br><br>Можно похвалить Википедию за появление в новом дизайн базовых настроек стиля (размер шрифта, ширина текстовой колонки, поддержка темной темы), благодаря чему статьи стали выглядить сноснее. Однако мне этого недостаточно, и я вновь взялся перенастраивать всё под себя.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2243/AgADIxZrG5ReKUg/84a4e9cb" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Настало время для нового CSS-десанта на Википедию!<br><br>Стиль: <br><a href="https://userstyles.world/style/28062/wikipedia-clear-style-for-new-design">https://userstyles.world/style/28062/wikipedia-clear-style-for-new-design</a><br><br>Устанавливается через браузерное дополнение Stylus: <br><a href="https://github.com/openstyles/stylus">https://github.com/openstyles/stylus</a> <br><br>Моя мотивация не изменилась с предыдущего подхода, поэтому в этот раз статьи с описанием хода мысли не будет, можете перечитать предыдущую:<br><a href="https://medium.com/design-pub/css-%D0%B4%D0%B5%D1%81%D0%B0%D0%BD%D1%82-%D0%B2%D0%B8%D0%BA%D0%B8%D0%BF%D0%B5%D0%B4%D0%B8%D1%8F-16cd911399ea">https://medium.com/design-pub/css-%D0%B4%D0%B5%D1%81%D0%B0%D0%BD%D1%82-%D0%B2%D0%B8%D0%BA%D0%B8%D0%BF%D0%B5%D0%B4%D0%B8%D1%8F-16cd911399ea</a>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Ну и сразу оговорюсь:<br><br>— Стиль подразумевает, что в визуальных настройках Википедии вы уже выбрали крупный шрифт и широкую ширину (там так и написано), саму колонку этих визуальных настроек свернули в кнопку с иконкой очков, аналогично главное меню свернуто в кнопку-бургер.<br><br>— Стиль проверялся на русскоязычной и англоязычной Википедиях. Даже при одинаковом дизайне в них есть небольшие различия в верстке и названиях css-классов, потребовавшие мелкие доработки. Как всё будет выглядеть в других языковых разделах — я не знаю, надеюсь что нормально.<br><br>— То же самое можно сказать и про всевозможные служебные страницы, главную страницу и т.д. — я настраивал стиль только с оглядкой на страницы статей.<br><br>— Настраивал всё под себя — свой размер экрана и браузер, скрывал неиспользуемые мной элементы страниц и т.д. Как это всё работает за пределами файерфокса — без понятия, могу только помолиться за унификацию веб-стандартов и солидарность рендер-движков браузеров.<br><br>— Хотя страницы Википедии довольно стандартизированы, всё равно там встречается несчетное количество всевозможных шаблонов, а много где стили элементов страниц просто тупо захардкожены в аттрибуте style. Я старался чинить всё что встречал, но наверняка существует какой-нибудь шаблон <i>«Генеалогическое древо тракторов серии Кировец»</i>, который от моего стиля развалился. <br><br>— CSS-десант не всесилен, это не полноценный редизайн, далеко не все желаемые изменения получилось реализовать. Где-то я останавливался на стадии <i>«ладно, на реализацию моей задумки ушло уже слишком много времени и грязных CSS-хаков, пусть останется так»</i>.<br><br>— Если я убрал нужный вам элемент или сделал что-то не по вкусу — вы можете накинуть свой CSS-десант поверх моего стиля! Или просто форкнуть мой стиль и поправить его под себя. Или написать мне о том, где я не прав и что в стиле стоит изменить.<br><br>В довесок еще немного пар скриншотов «было — стало»:
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2245/AgADJhlrGw_rMEg/a25f0524" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2246/AgADJxlrGw_rMEg/63e2db45" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2247/AgADKhlrGw_rMEg/e3e0de0c" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2248/AgADKxlrGw_rMEg/ce2e5617" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2251/AgADOhlrGw_rMEg/751f6aad" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2252/AgADOxlrGw_rMEg/ff1268cf" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1337 👁</span> | <span class="date">14/05/26, 13:10:50</span> | <span class="message-id">#2241</span><br><a href="tg://resolve?domain=meow_design&post=2241">Open in Telegram</a> | <a href="https://t.me/meow_design/2241">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2240/AgAD_RVrGyumAAFI/0d33abe7" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Недавно заметил появление нового вида описания. Текст своей обстоятельностью и форматом списка мимикрирует под первый тип (вот перечислили конкретные изменения), но если начать вчитываться в пункты, то оказывается, что это просто классическое «всё стало стабильнее, быстрее и красивее» из третьей категории размазали на много строк.<br><br>Оно мутирует!
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1474 👁</span> | <span class="date">09/05/26, 17:28:14</span> | <span class="message-id">#2240</span><br><a href="tg://resolve?domain=meow_design&post=2240">Open in Telegram</a> | <a href="https://t.me/meow_design/2240">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2239/AgAD9RVrGyumAAFI/8391f87d" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Издателей мобильных приложений можно поделить на несколько категорий в зависимости от того, кто там отвечает за написание текстов в описании релизов. Вот они на скрине сверху вниз:<br><br>— Разработчики сухо перечисляют конкретные изменения, возможно даже просто копируют названия закрытых тикетов из таск-менеджера. Олдскульный формат, встречается всё реже. Больше распространен у небольших приложений, где основатели еще не делегировали написание списка изменений.<br><br>— Описание отдали на откуп сммщикам, и они там гоняются за призраком авиасейлза: шутки-прибаутки, немношк графомании, обязательно упомянуть актуальный мем или инфоповод. Понять суть изменений из подобных текстов тяжеловато, но такой задачи перед авторами и не стоит, ведь изменения в приложении — только еще один повод спозиционировать себя как продвинутую компанию, которая тебя понимает и с которой можно на «ты» (йоу!).<br><br>— Написание текста релиза отдали менеджеру, а у того нет времени перечислять все эти мелкие изменения, за которые всё равно не дадут премию. Поэтому в поле описания релиза копипастится неменяющаяся годами формулировка вроде «сделали хорошо и убрали плохое, чтобы всем было еще лучше». Возможно, при составлении фразы тоже привлекали сммщика, но плз давай только без мемов и инфоповодов, текст и через три года должен смотреться ок. На что-то осмысленное формулировка меняется только на время Большого Запуска.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1337 👁</span> | <span class="date">09/05/26, 17:28:05</span> | <span class="message-id">#2239</span><br><a href="tg://resolve?domain=meow_design&post=2239">Open in Telegram</a> | <a href="https://t.me/meow_design/2239">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2238/AgADLBlrG17tmUs/1193a5ee" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Сколько не убеждай себя, что цифровой мир сейчас настолько же ценный, как и реальный, а всё равно физическое воплощение сделанного ощущается особенно. Место на стене, на полке, в грузовике, на складе не бесконечно, появляется некоторое трение, преодоление которого ощущается как доказательства ценности, минимальный знак качества. Поэтому попадание сделанной работы в продажу реального физического магазина воспринимается совсем не так, как просто карточка цифрового товара в онлайн-магазине.<br><br>Раньше я гордился, что зин-версия <a href="https://kefiijrw.com/hypochondria/">рассказа «Ипохондрия»</a> какое-то время продавалась в книжном магазине «Подписные издания»: <a href="https://www.podpisnie.ru/books/ipokhondriya/" target="_blank">https://www.podpisnie.ru/books/ipokhondriya/</a><br><br>А теперь горжусь, что наша акварельная карта мира продается в крупнейшем лондонском магазине карт и глобусов Stanfords:<br><a href="https://www.stanfords.co.uk/the-world-painted-9786000664251" target="_blank">https://www.stanfords.co.uk/the-world-painted-9786000664251</a> <br><br>(хотя, насколько я понял, это всё же в основном онлайн-продажа, но несколько экземпляров всё же на месте будет)
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1862 👁</span> | <span class="date">30/04/26, 17:48:15</span> | <span class="message-id">#2238</span><br><a href="tg://resolve?domain=meow_design&post=2238">Open in Telegram</a> | <a href="https://t.me/meow_design/2238">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
ура, теперь опять можно постить всякую мелочевку!
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2234/AgAD3BdrGy-RMUs/fca5bbb4" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Какой вывод о погоде можно сделать, взглянув на подобный таймлайн? <br><br>По мне так всё очевидно: в 12 часов будет дождик, потом два часа без осадков, потом снова польет. <br><br>Этот ответ неправильный. На самом деле тут иконки погоды работают как залипающий заголовок в списке с горизонтальным скролом.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<video controls src="http://test.example.com/media/meow_design/2235/AgADUqQAAi-RMUs/5c16b8b0" style="max-width:100%; width:auto;height:auto; max-height:400px;"></video>
|
|
</div>
|
|
<br>
|
|
То есть отсутствие тучки с дождем означает не отсутствие дождя, а то что погода в эти часы не изменится по сравнению с объявленной до этого. <br><br>Наверное, дизайнер не хотел спамить иконками одинаковой погоды и решил отмечать только моменты изменения погоды. Но это неочевидно с первого взгляда и периодически путает даже знающего принцип работы этого таймлайна пользователя (меня).
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2236/AgAD6xdrGy-RMUs/0979f790" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Напрашивается решение с добавлением иконкам динамизации, чтобы они могли занимать сколько угодно слотов, растягивались на много часов. <br><br>Но тогда уже зазоры между иконками могут восприниматься как дополнительная информация о погоде. Например, о короткой паузе в осадках между 14:00 и 15:00.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2237/AgAD-hdrGy-RMUs/909e8b98" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Так что следующий шаг в этом направлении — непрерывное полотно-таймлайн визуализации погоды. <br><br>Хотя с ясной погодой такое провернуть будет сложнее, чем с пасмурной: тучки растягиваются гораздо лучше солнца.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1005 👁</span> | <span class="date">20/04/26, 19:48:52</span> | <span class="message-id">#2233</span><br><a href="tg://resolve?domain=meow_design&post=2233">Open in Telegram</a> | <a href="https://t.me/meow_design/2233">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
Меня пожурили, что я на канале кормлю семечками <i>«а-ха-ха, какой-то дизайнер лоханулся»</i> вместо открытия каких-то глубинных глубин дизайна.<br><br>После этого я подвис больше чем на месяц, так как постить всё как обычно было уже как-то неловко, а глубинные глубины требуют время на созревание формулировок (если только не делегировать графоманию гптшкам).
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Если помните, я тут иногда загонял по поводу того, как остаточные знания математического образования засушились в моей голове аналогиями и моделями, через которые я вижу мир и дизайн в частности:<br><br><a href="https://t.me/meow_design/504" target="_blank">https://t.me/meow_design/504</a> <br>Написание статьи как поиск эйлерова пути в ориентированном графе из тезисов<br><br><a href="https://t.me/meow_design/1057" target="_blank">https://t.me/meow_design/1057</a> <br>Создание интерфейса как решение системы уравнений-ограничений<br><br>В этот раз я хочу поделиться параллелью между дизайн-процессами в компаниях и двумя математическими методами нахождения минимумов/максимумов — методом градиентного подъема (на самом деле спуска, но не важно) и методом имитации отжига.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<a href="https://ru.wikipedia.org/wiki/%D0%93%D1%80%D0%B0%D0%B4%D0%B8%D0%B5%D0%BD%D1%82%D0%BD%D1%8B%D0%B9_%D1%81%D0%BF%D1%83%D1%81%D0%BA"><b>Метод градиентного подъема</b></a> — это способ достичь максимума какого-то показателя, двигаясь в сторону наибольшего роста.<br><br>Очень упрощенно алгоритм можно описать так:<br>— Из текущего положения делаются небольшие шаги в разные стороны.<br>— Среди этих шагов фиксируется тот, который дал наибольший прирост.<br>— Процедура повторяется до тех пор, пока существуют шаги, дающие хоть какой-то прирост. <br>— Поздравляю, вы великолепны и достигли вершины!
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Сложно не заметить, что метод практически дословно описывает стратегию некоторых компаний A/B-тестированиями прокарабкаться вслепую в прекрасное будущее. <br><br>Похожим же образом в «социалистических соревнованиях» все показатели любой ценой должны были расти, пятилетка за три года, удвоение удоев и вот это всё. <br><br>Так что жесткий мир больших корпораций с их завязанными на KPI премиями объединяет с идеологическими авторитарными системами общая установка: график любой ценой должен идти вправо вверх, и лучшее решение в любой момент времени — то, которое дает наибольшее «вверх»!
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Но, во-первых, такой метод является «жадным», потому что поощряет сиюминутный рост без оглядки на последствия. Премия-то вот родненькая, только <s>руку протяни</s> показатели выполни, а дальше уже как-нибудь разберемся. Мой любимый пример возможных последствий: <a href="https://ru.wikipedia.org/wiki/%D0%A0%D1%8F%D0%B7%D0%B0%D0%BD%D1%81%D0%BA%D0%BE%D0%B5_%D1%87%D1%83%D0%B4%D0%BE">Рязанское чудо</a>.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Во-вторых, такой метод является «близоруким», так как им можно найти только локальный максимум. Любой ближайший холмик станет ловушкой, потому что для достижения еще большей вершины придется спуститься с холмика вниз (запрещено! график должен идти вправо и вверх!) или уметь прыгать очень далеко (навык не развит, маленькими шагами как-то привычно и безопасней) без каких-либо гарантий моментального успеха (показатели упали! вернуть всё назад и наказать виновных!).
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2228/AgADnhRrG02zKUs/98c9a2ad" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Я пытался найти какую-то поясняющую иллюстрацию, но они все показывают поиск минимумума (ведь метод на самом деле называется градиентного <i>спуска</i>), а я рассказывал на примере поиска максимума показателя. <br><br>Но так даже наглядней, ведь поиск минимума градиентным спуском можно связать с гравитацией (только если отключить инерцию): шарик с холмика скатывается в ближайшую лунку.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2229/AgADJRZrG02zIUs/d955eaab" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
В двумерном случае всё еще очевидней: движение возможно только влево или вправо. Ближайшая ямка оказывается ловушкой, поэтому на дерганой местности с множеством локальных минимумов такой метод малополезен.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2230/AgADJBZrG02zIUs/2c5fef94" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<a href="https://en.wikipedia.org/wiki/Simulated_annealing"><b>Алгоритм имитации отжига</b></a> — другой метод поиска максимума. Он вероятностный, то есть не дает гарантированного результата, но позволяет искать не только локальный максимум (ближайший холмик), но и глобальный (самую высокую вершину).<br><br>В этом методе оцениваются последствия прыжка на произвольную дистанцию. Если значение в новом месте больше, то этот прыжок фиксируется. Но даже если показатели в новой точке хуже, то с некоторой вероятностью такой прыжок тоже допускается. И эта вероятность принятия ухудшающих решений со временем уменьшается.<br><br>Выглядит это как-то так. Здесь температурой обозначается вероятность перескока на худшую позицию по аналогии с выстраиванием атомов металла в кристаллической решетке во время процесса <a href="https://en.wikipedia.org/wiki/Annealing_(materials_science)">отжига</a>, в честь которого и назвали метод.
|
|
<br>
|
|
<div class="message-media">
|
|
<video controls src="http://test.example.com/media/meow_design/2231/AgAEnwACTbMpSw/c7164aca" style="max-width:100%; width:auto;height:auto; max-height:400px;"></video>
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Так в основном работают дизайн-студии. В самом начале ищутся самые разные подходы к задаче («концепции»), оценивается их перспективность. Какая-то из концепций выбирается за основную, но по мере работы еще возможен перескок на другую перспективную концепцию, даже если в первой итерации она выглядит сырой и менее проработанной, чем уже достигнутый результат текущей концепции. Со временем по мере работы над проектом вероятность таких масштабных смен концепций уменьшается, допускаются всё меньшие и меньшие изменения, чтобы проект сошелся ко сроку.<br><br>Поэтому важно, чтобы дизайнер на начальном этапе работы над проектом успел пощупать сильно отличающиеся варианты решения, не зацикливаясь сразу на первом пришедшем в голову. Опыт дизайнера позволяет чувствовать перспективность разных направлений и меньше метаться, но страх сделать большой шаг в сторону и непоколебимая привязанность к «я сделялъ»-варианту из-за <a href="https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D0%BD%D0%B4%D1%80%D0%BE%D0%BC_%D1%83%D1%82%D1%91%D0%BD%D0%BA%D0%B0">синдрома утёнка</a> ограничивает перспективы. Так получится забраться только на ближайший локальный холмик.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1051 👁</span> | <span class="date">19/04/26, 11:55:56</span> | <span class="message-id">#2222</span><br><a href="tg://resolve?domain=meow_design&post=2222">Open in Telegram</a> | <a href="https://t.me/meow_design/2222">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2215/AgADehVrG0cHKEk/fb682c2e" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Ужасная инфографика турнирной сетки, прекрасный образец для препарирования дизайнерских ошибок.<br><br>Это очередной наглядный пример, как попытка линиями-заборчиками отделить элементы друг от друга приводит к обратному эффекту — линия склеивает элементы, так что в первых двух колонках тяжело понять, какие команды играют друг с другом: например, ПСЖ из-за линии больше прилип к Галатасараю, чем к Монако.<br><br>Эти линии, обрамляющие пары команд, еще зачем-то остались и в следующих трех колонках, когда уже и разделять ничего не надо, просто будто семечек насыпали.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2216/AgADfxVrG0cHKEk/ae1fa383" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Если просто убрать эти линии, избыточная визуальная нагрузка пропадет. И сразу станет понятна причина, почему к этим линиям вообще прибегнули: дизайнер не знает про теорию близости или просто поленился придвинуть играющие команды друг к другу.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2217/AgADghVrG0cHKEk/fd8ccf87" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Сделаем это за него. Теория близости заработала, пустое пространство — лучший разделитель.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2218/AgADhRVrG0cHKEk/0e07626f" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Чтобы в линиях-перемычках было больше пользы, пускай они идут не от пары команд, а от конкретной команды, вышедшей в следующий раунд. Всякие умники по форме перемычек сразу смогут распознать победы андердогов над фаворитами, ну а для остальных эту будет просто тропинкой команды по турниру. Соответственно, справа в несыгранных еще этапах в этих черных линиях пока нет нужды, там и так понятна иерархия (опять же благодаря теории близости).
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2219/AgADhRVrG0cHKEk/c0664a41" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2220/AgADehVrG0cHKEk/c0e85fdc" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
стало — было
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1238 👁</span> | <span class="date">01/03/26, 23:14:33</span> | <span class="message-id">#2215</span><br><a href="tg://resolve?domain=meow_design&post=2215">Open in Telegram</a> | <a href="https://t.me/meow_design/2215">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 no_image 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2213/AgADwBhrG_PL0Eg/321c660f" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Фигма не так давно добавила поддержку вариативных шрифтов, для этого в выпадайку начертаний добавили пункт <i>Variable font axes</i>. <br><br>А еще в Фигме кучу параметров можно контролировать через переменные, и для этого в том же меню существует пункт <i>Apply variable</i>.<br><br>Доля случаев, когда я с первого раза правильно выбирал из этих двух пунктов: слишком маленькая!<br><br>Это примерно как обновленные иконки сервисов гугла: да, там есть разница и при вдумчивом изучении понятно, что есть что, но в суете рутины решение принимается автоматически, не сфокусированным сознанием, а фоновой мозговой деятельностью на основе триггера <i>«тут есть слово Variable, жми»</i>.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2214/AgADwRhrG_PL0Eg/88659f66" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
А потом заходишь в продукт Адоба, а там дизайнер нашел самое подходящее место для новой кнопки <i>Save to Adobe cloud storage</i>.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1603 👁</span> | <span class="date">21/02/26, 23:16:19</span> | <span class="message-id">#2213</span><br><a href="tg://resolve?domain=meow_design&post=2213">Open in Telegram</a> | <a href="https://t.me/meow_design/2213">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
К моему удивлению при нажатии на кнопку Get приложение спокойно скачивается и устанавливается. Но при попытке открыть установленное приложение начинается самое веселое:
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<video controls src="http://test.example.com/media/meow_design/2211/AgADKpsAAhJUIUg/12590bf4" style="max-width:100%; width:auto;height:auto; max-height:400px;"></video>
|
|
</div>
|
|
<br>
|
|
Эпл вспомнил, что я не вышел регионом, и открывает какой-то попап. Сам попап как охранник, который не понимает, почему его позвали и в чем проблема, но раз сказали выпроводить человека, то чего тут разбираться.<br><br>Поэтому максимально неконкретными формулировками «Cannot Connect. The page couldn't be loaded» меня просят покинуть <s>территорию</s> приложение. <br><br>В качестве умиротворяющего средства мне предлагают попытать счастья еще раз, но само приложение понятия не имеет, поможет ли это как-то. <br><br>Поэтому кнопка Retry просто с красивым изингом моргает экраном. Но эта обратная связь даже щедрая, потому что кнопка капитуляции Cancel же просто ничего не делает.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Чувство абсурдности происходящего нарастает. Бесполезный неинформативный попап, ничего не знающий о настоящих причинах проблем (даже я знаю: регион не тот!), бесконечно предлагает попробовать бесполезные решения, в которые он сам не верит, и не может нормально обработать прерывание сценария кнопкой «Cancel».<br><br>И в качестве кульминации оказывается, что всё это окно по какой-то неимоверной причине (хотя мы можем догадаться об этих причинах: веб-технологии внутри приложения) имеет невидимый вертикальный скрол! А-а-а-а-а.<br><br>Про такое уже можно говорить That's so Apple.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1738 👁</span> | <span class="date">05/02/26, 18:13:58</span> | <span class="message-id">#2210</span><br><a href="tg://resolve?domain=meow_design&post=2210">Open in Telegram</a> | <a href="https://t.me/meow_design/2210">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2204/AgAD-BJrGxJUIUg/ccab3941" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Сегодня уже классическая рубрика «документирование деградации Эпла». Я сначала хотел ограничиться одним финальным экраном, но тут весь пользовательский сценарий кривой, так что пробежимся по всем шагам.<br><br>Вот я в своей наивности решил попробовать анонсированную недавно Apple Creator Studio. Нашел нужную страничку на сайте эпла и на ней заветную кнопку «Try it free». Ура, еще и месяц бесплатно!
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2205/AgAD-hJrGxJUIUg/08463963" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Меня редиректит на какую-то веб-версию Апстора, которая непонятно для чего нужна — она сама ничего не умеет, только предлагает пройти дальше в полноценный Апстор нажатием на кнопку «View in Mac App Store». <br><br>Зачем нужен был этот шаг и почему меня сразу не переслали в Апстор — непонятно.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2206/AgAD_BJrGxJUIUg/4626d118" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
В Апсторе меня встречает ожидаемый попап, что я не вышел регионом и ничего не получится, App Not Available.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2207/AgADARNrGxJUIUg/34d69625" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Но при закрытии попапа меня встречает продающий блок всё той же Apple Creator Studio, хотя мне только что объяснили, что она мне не доступна. Правая рука не договорилась с левой.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2208/AgADFBNrGxJUIUg/6b453914" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Жму на этот банер и попадаю на продающую страницу, которая разбавлена кнопками установки конкретных приложений. Они снова выглядят как вполне доступные, про ограничения региона ничего не говорится. <br><br>Хотя тут уже вместо бесплатного месячного триала речь идет об In-App Purchases — покупке внутри приложений. По мне так полная версия на триальный период и бесплатная усеченная версия с возможностью платного апргрейда — это разные сущности, но тут их то ли перепутали, то ли сознательно перемешали.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">2196 👁</span> | <span class="date">05/02/26, 18:13:50</span> | <span class="message-id">#2204</span><br><a href="tg://resolve?domain=meow_design&post=2204">Open in Telegram</a> | <a href="https://t.me/meow_design/2204">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<video controls src="http://test.example.com/media/meow_design/2202/AgADpqAAAlegcEs/07522ae1" style="max-width:100%; width:auto;height:auto; max-height:400px;"></video>
|
|
</div>
|
|
<br>
|
|
А вот и новинки темных паттернов подъехали. Это на Хабре банер прилип к низу экрана и перекрывает текст статей. <br><br>Главная мутация-инновация тут в том, что просто крестиком банер не закроешь — на его место сразу встает другой, вон они там справа собрались в очередь, уходящую в фейд. Самых нетерпеливых, кто попытается просто серийно накликать закрытие сразу всех банеров, ожидает коварный главарь уровня — последний банер по трагической случайности чуть большей длины (ну надо же как-то занять пустое пространство справа, сами понимаете, некрасиво получается), из-за чего крестик убегает из-под курсора.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Можно не сомневаться, что скоро это решение станет повсеместным. Маркетологи поглядывают друг на друга, боясь первыми <s>охуеть на новом уровне</s> использовать новый темный паттерн и словить на себе весь гнев интернета — из pr-отдела могут постучать. Но когда находится первопроходец вроде Хабра, этот ход уже на совещаниях преподносится как «норма рынка, нельзя отставать».<br><br>Здесь как с постепенным поднятием температуры в котле: изменения должны быть инкрементальными, чтобы негодование у большого количества пользователей не превысило порог, после которого отправяются изливать гнев в соцсети.<br><br>Поэтому крестики пока еще не появляются в случайных углах банеров и не убегают от курсоров, до этого надо еще несколько мутаций-инноваций.<br><br>И только маркетологи крипто-беттинг-вебкам-казино громко и добродушно хохочат, поглядывая на эти робкие шаги «легальных» маркетологов. Им-то даже не надо скрывать своем презрение к пользователям.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1744 👁</span> | <span class="date">19/01/26, 21:39:18</span> | <span class="message-id">#2202</span><br><a href="tg://resolve?domain=meow_design&post=2202">Open in Telegram</a> | <a href="https://t.me/meow_design/2202">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 no_image 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
Может кто-то помнит, как шесть лет назад я уже <a href="https://t.me/meow_design/736">проворачивал этот трюк</a>. Тот 2019-й год я просуществовал в прямом смысле бомжом (то есть без определенного места жительства), скитался по миру от Амстердама до Сингапура, полтора месяца катался по транссибу и месяц гулял с рюкзачком по Камчатке — в общем, планка разнообразия происходящего каждый день в том видео была задана очень высокая.<br><br>Спустя шесть лет желание покидать зону комфорта как-то поубавилось (сколько тут комфорта осталось, чтобы от него еще и отказываться добровольно), а после вынужденных путешествий добровольные уже манят меньше. В общем, это я так предупреждаю, что в этот раз повторяющихся видов, тупо закатов из окна офиса и снятого уже из кровати перед сном потолка вышло куда больше. Меньше ярких событий, который мозг бы всё равно запомнил, больше текстуры повседневности.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1903 👁</span> | <span class="date">13/01/26, 15:43:42</span> | <span class="message-id">#2201</span><br><a href="tg://resolve?domain=meow_design&post=2201">Open in Telegram</a> | <a href="https://t.me/meow_design/2201">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<video controls src="http://test.example.com/media/meow_design/2200/AgADEI4AAvs8OUs/6cfb91f2" style="max-width:100%; width:auto;height:auto; max-height:400px;"></video>
|
|
</div>
|
|
<br>
|
|
Большой бумажный календарь — это олдскульный вариант. Лента фоток, скриншотов и видосов на телефоне — более современная аналогия, но она тоже подвержена диспропорции: триста фоток с концерта на выходных и две — за следующую рабочую неделю. Поэтому для фиксации прожитого без игнора повседневности, для создания засечек на каждом дне можно вписаться в авантюру с ежедневной записью секундного видео. Это тяжелее и требует выработки привычки, так как, в отличие от календаря, там нельзя заснять видос задним числом, но в качестве награды получаешь 365-секундное видео «Как я провел этот год». <br><br>У меня прошлый год получился таким.<br><br>(на ютубе, если удобней: <a href="https://www.youtube.com/watch?v=34BRXb26rUc">https://www.youtube.com/watch?v=34BRXb26rUc</a>)
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1759 👁</span> | <span class="date">13/01/26, 15:43:31</span> | <span class="message-id">#2200</span><br><a href="tg://resolve?domain=meow_design&post=2200">Open in Telegram</a> | <a href="https://t.me/meow_design/2200">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2199/AgADLBJrG06LMUs/208dd639" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Когда я тут раз в год выкладываю заготовку календаря на следующий год, я иногда дополнительно загоняю, как благодаря этому календарю можно не только планировать будущее, но и фиксировать прожитое.<br><br>Обычно в памяти оседает только самое-самое — путешествия и еще парочка ярких событий (можете проверить себя вопросом «что произошло в моей жизни в 2017-м году») — а за их пределами время сглаживается в одно монолитное «летят года...». <br><br>Откровения старших людей о том, что с возрастом время субъективно идет быстрее и года проносятся как-то уж слишком стремительно, кажется, связано просто с постепенным укреплением и доминированием в жизни ритуалов и привычек, избеганием новизны, желанием сохранить статус-кво. У памяти становится всё меньше зацепок — ярких моментов — которые помогут размечать ось времени, отличать один год от другого.<br><br>Конечно, можно заставлять себя вырываться в хотя бы микро-путешествие каждые выходные, жонглировать хобби, раз в год менять место жительства и может еще и работу — ярких моментов для памяти будет предостаточно. <br><br>Но даже без такого агрессивного выталкивания себя из зоны комфорта можно помочь памяти в создании маленьких засечек на оси времени. Для этого достаточно фиксировать простую повседневность. <br><br>Не обязательно вести развернутые олдскульные дневники, это больше инструмент рефлексии, достаточно мелких пометок в пару слов на календаре (как на фотке), скриншотов экрана, ежедневных фотографий и видео без избегания фиксации рутины и бытовухи. Магия в том, что такие зацепки являются индексом в массиве полноценных воспоминаний о том дне: слова-ключики разворачиваются в полноценный дневник памяти, прожитое время снова оказывается детализированным. А если индекса нет, то только и остается ждать, как сборщик мусора зачистит воспоминания, о которых уже ничего не напомнит.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1403 👁</span> | <span class="date">13/01/26, 15:40:31</span> | <span class="message-id">#2199</span><br><a href="tg://resolve?domain=meow_design&post=2199">Open in Telegram</a> | <a href="https://t.me/meow_design/2199">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2198/AgADCQtrG3RdMEs/9bab439d" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Создатель сравнительной таблички явно поленился морочиться с иконками крестика и галочки, решил вместо них использовать буквы Х и V.<br><br>Но буквы слишком похожи друг на друга, при общем взгляде не удается быстро считать различия между продуктами.<br><br>Вместо Х достаточно было оставить пробелы, а вместо V тогда можно было бы написать понятное Yes или какие-то продающие уточнения, как это делает эпл в своих сравнительных табличках. <br><br>Да даже тире сработало бы лучше:<br><br>V X<br>V —
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1279 👁</span> | <span class="date">12/01/26, 17:37:32</span> | <span class="message-id">#2198</span><br><a href="tg://resolve?domain=meow_design&post=2198">Open in Telegram</a> | <a href="https://t.me/meow_design/2198">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
у канала недоступны комментарии и реакции кроме одной заготовленной для каждой публикации. Это даже не совсем понт: просто при создании канала таких штук в телеграме и не было, а когда комменты и реакции всё же подвезли, я просто решил оставить всё как есть. Но вопрос, надо ли их добавлять, раз в несколько лет всё же возникает.<br><br>про реакции всё понятно: придуманные самому себе абсурдные ограничения развлекают меня давно. Когда-то в своем инстаграме я держал ровно сто фотографий (при желании опубликовать что-то новое надо было выбрать, что удалить взамен) и маниакально выдерживал равенство между количеством подписок и подписчиков. Ну вы знаете, сначала при ходьбе не наступаешь на швы плитки, а потом этого уже не хватает и придумываешь себе новые загоны. Хорошо, что пока еще не начал сортировать все чипсы в пачке по размеру перед тем, как их съесть.<br><br>с комментариями ситуация сложнее: открытие комментов будто бы неизбежно приведет к возникновению какого-то сообщества и, следовательно, суеты модерации: как бороться со спамерами; как отличать продвинутых ai-спамеров от просто интернет-сумасшедших; как cделать, чтобы интернет-сумасшедшие не отпугивали осмысленных; как противостоять троллям и хейтерам, если я заслужу их появления, и надо ли это делать; надо ли пытаться формализовать правила поведения в комментах или просто сносить всех неугодных; и вообще я за анархию, диктатуру или еще какой формат в своих комментах. В любом случае это будет отвлекать, я наверняка буду реагировать на появления каждого коммента, а не просто мирно забывать о канале между публикациями.<br><br>в общем, свои соображения я высказал, теперь ваше мнение. Не голосование, но опрос:
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-poll">📊 Poll: Комментарии к публикациям<br>1. буду читать и писать<br>2. не интересует<br><br>→ Vote in Telegram 🔗<br></div>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-poll">📊 Poll: расширенные реакции к публикациям<br>1. как же я люблю выбирать из реакций наиболее точно передающую мой эмоциональный отклик<br>2. оттенки одобрения не имеют значения, но я требую возможность ставить публикациям клоуна с какашкой!<br>3. всё это лишнее<br><br>→ Vote in Telegram 🔗<br></div>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1605 👁</span> | <span class="date">02/01/26, 15:48:45</span> | <span class="message-id">#2195</span><br><a href="tg://resolve?domain=meow_design&post=2195">Open in Telegram</a> | <a href="https://t.me/meow_design/2195">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 poll 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2187/AgADYQxrG76huUo/97cf3ec8" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Возрастное ограничение «Для взрослых» (или просто 18+) настолько сильно укоренилось как эвфемизм для связанных с сексом штук, что при его использовании в прямом смысле может возникнуть когнитивный диссонанс. <br><br>Вот на сайте Лего наборы конструкторов можно фильтровать по возрастным категориям, и заголовок со словами «Toys», «18+», «Adults» на мгновение вызывает удивление <i>«Лего теперь еще и секс-игрушки выпускает?»</i>.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2188/AgADCg1rG76huUo/60a5fd7f" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
На сайте Икеи есть два вида стрелок: с хвостиком в контурном кружке означает ссылку «Узнать больше», а без хвостика в черном кружке листает карусель карточек. <br><br>Пока не увидел обе рядом, первую тоже воспринимал как листалку и пару раз недоумевал, почему меня перекидывает на какую-то другую страницу. <br><br>Требование усвоить разницу между двумя видами стрелок для нормального пользования сайтом слишком строгое.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2189/AgADTQ1rG76huUo/5cc5de2a" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
На том же сайте Икеи иконки у кнопки добавления в избранное и у ссылки изучения списка избранного выглядят одинаково. Тоже пару раз путался и жал не на ту.<br><br>Так лучше, чем если бы у них были разные метафоры, но всё же лучше бы их немного визуально развести: чуть изменить одну из иконок (сделать у верхней стек из сердечек?), подписать что-нибудь из них или хотя бы визуально обозначить разницу между кнопкой и ссылкой.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2190/AgADag1rG76huUo/ee834831" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Сервис онлайн-заметок Paper от дропбокса жалуется, что в него перетягивают слишком большой файл. <br><br>Ребят, может вы всё же сами загрузите файл в Dropbox и вставите сюда ссылку? <br><br>Вроде бы весь смысл и конкурентное преимущество сервиса в том, что вы часть дропбокса, и в теории это означает, что пользователям не надо искать внешние ресурсы для загрузки тяжелых файлов, всё автоматически подгрузится. Ну синергия, бесшовное взаимодействие, экосистема, вот это всё. Но нет, не в этом случае.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2191/AgADbA1rG76huUo/152dd75d" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Страница оказалась слишком длинной для суммаризации. <br><br>Ну так я поэтому и решил впервые прибегнуть к суммаризации, потому что это была адская графоманская простыня. Короткие статьи я и сам умею читать по диагонали. <br><br>Вероятно, ИИ обретает сознание и теперь тоже может реагировать «да ну нахер» на сложные задачи.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2192/AgADcA1rG76huUo/70ddbdcf" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
А вы не можете сами проверить, активировал или нет? <br><br>(да, уже активировал, это письмо бесполезное) <br><br>Один запрос в базу данных для фильтрации писем перед отправкой, ну камон.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2193/AgADcw1rG76huUo/5c817ae3" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Странная страничка после нажатия на ссылку «Отписаться от рассылки» в письме. <br><br>Тут где-то потерялась кнопка? Или просто корявая формулировка в заголовке? Я в итоге отписался или нет?
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2194/AgADjw1rG76huUo/7807947e" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Инстаграм настолько не хочет, чтобы люди вместо алгоритмической ленты пользовались старой-доброй «посты в хронологическом порядке и только от тех, на кого подписан»-лентой, что старается запрятать ее в наименее очевидные места. <br><br>Сейчас это пункт «Following» в меню, появляющимся при нажатии на логотип-заголовок инстаграма. Даже признак существования этого меню — галочка-выпадашка — скрывается при открытии приложения. Вероятно, чтобы потом меню можно было выкинуть с объяснением «Им никто не пользовался».<br><br>Так скоро появятся сборники чит-кодов в приложениях <i>«Чтобы сразу перейти к оформлению билетов мимо всех темных паттернов, в главном меню нажмите вверх-влево-А-А-В-вниз»</i>.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1376 👁</span> | <span class="date">01/01/26, 17:45:51</span> | <span class="message-id">#2187</span><br><a href="tg://resolve?domain=meow_design&post=2187">Open in Telegram</a> | <a href="https://t.me/meow_design/2187">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
Еще в подкасте меня упоминают по имени Серж Николаев, и это, пожалуй, достойно неинтересной байки.<br><br>В Бюро удаленный формат работы всегда был базой, а основным средством коммуникации в 2013 году был скайп. Аккаунт там я завел за четыре года до Бюро, и при регистрации скайп казался мне каким-то солидным западным бизнес-сервисом а-ля нынешний линкедин. Поэтому вместо никнеймов, привычных для эпохи анонимного интернета и форумов, я тогда впервые решил использовать свое имя.<br><br>И то ли из-за слишком распространенной пары имя+фамилия такой никнейм был уже занят, то ли опять же ради удобства вымышленных «западных партнеров» из выдуманного мной фрилансерского будущего я решил поменять имя на ближайший международный аналог. В общем, в скайпе у меня был юзернейм serj.nikolaev и, конечно же, за прошедшие с тех пор 16 лет я ни разу не общался по скайпу с иностранцами.<br><br>Хотя в бюрошном бейскампе я зарегался уже по обычному имени, никнейм в скайпе на созвонах всё же чаще мелькал перед глазами, и бюрошники обращались ко мне по имени Серж.<br><br>А я и так был застенчивым, а тут еще моя первая работа дизайнером и сразу в Бюро — синдром самозванца владел мной безгранично. Я даже в школе не поправлял новую учительницу, которая решила называть меня Коленькой, что же говорить про Бюро! Сергей, Серж, да хоть Сергуня — уж Артему Горбунову виднее.<br><br>Больше нигде и никогда я этот вариант имени не использовал, ни разу не представлялся им, нигде кроме Бюро ко мне по нему не обращались. Поэтому его упоминание, как на недавнем подкасте, неизменно вызывает у меня волну бюрошных флешбеков. Как будто кто-то упомянул мою подпольную партийную кличку из прошлой жизни.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Другая особенность бюрошной рутины 2013—2014 годов: на созвонах в скайпах принципиально не использовали камеру — общение только голосом. Бюрошники, конечно же, знали друг друга лично, но вот мне как новичку многие коллеги были знакомы преимущественно по голосу и малюсенькой аватарке. Как выяснилось позже, это было взаимно.<br><br>Так, однажды вместо работы из дома я решил съездить с ноутом поработать из бюрошного Коворкафе. Там я встречаю Макса Ильяхова, с которым мы как раз тогда работали над шаблонами журнала «Главбух» (<a href="https://bureau.ru/projects/glavbukh-print/)." target="_blank">https://bureau.ru/projects/glavbukh-print/).</a> Я с ним здороваюсь (но не представляюсь, мы же вроде как работаем вместе, каждый день созваниваемся!), сажусь за свободное место и открываю Индизайн верстать макеты журнала. И только потом Макс по увиденным у меня на экране макетам понял, что я это я, и мы поздоровались уже полноценно.<br><br>В общем, Бюро в моей памяти — это синдром самозванца и голоса из скайпа, которые называют меня Сержом.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1279 👁</span> | <span class="date">22/12/25, 15:22:40</span> | <span class="message-id">#2185</span><br><a href="tg://resolve?domain=meow_design&post=2185">Open in Telegram</a> | <a href="https://t.me/meow_design/2185">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
</div>
|
|
<br>
|
|
Илья Бирман в последнем выпуске своего подкаста вместе с Мишей Нозиком обсудили исследование, которое я проводил для внедрения изменений в шрифт Карт (<a href="https://t.me/meow_design/2090)." target="_blank">https://t.me/meow_design/2090).</a> <br><br>Фрагмент начинается с 56:45.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-forward">--- Forwarded from <a href="https://t.me/ilyabirman_channel">Канал Ильи Бирмана (@ilyabirman_channel)</a> ---</div>
|
|
<br>
|
|
<b>Думаем дальше № 51 — «Три варианта апокалипсиса» c Мишей Нозиком<br></b><br>С Мишей Нозиком обсуждаем хороший дизайн, хороший маркетинг, хорошее исследование (!) и пару вопросов по нейросетям.<br><br>0:00 — Миша оказался против горизонтальной прокрутки на мобиле<br>7:06 — Обсуждение: аналогия с теоремой о попапах, когда подойдёт, топ дизайнерских костылей<br>20:20 — Критерий хорошего дизайна<br>27:43 — Разбираем на примере полководцев, учителя русского языка, авиакомпании и чего-то ещё. Репутация и долгосрочное планирование<br>45:29 — Про маркетинг в бюро <br>52:41 — «Пипл хавает» против «дизайна для дизайнеров»<br>56:45 — Яндекс исследовал размер строчных букв в шрифте на картах<br>1:03:01 — ЧатГПТ и непонятная кнопка «Скачать»<br>1:13:26 — Как нейросеть решила убить человека<br><br><a href="https://podcasts.apple.com/us/podcast/думаем-дальше/id1744862171">Эпл</a> · <a href="https://www.youtube.com/playlist?list=PLl7kvlp_qh0j9uzQGU2ws4DkBWdbjY1_d">Ютюб</a> · <a href="https://music.yandex.com/album/29069497">Я.Музыка</a> · <a href="https://thinkon.mave.digital/">Мейв</a><br><br>Но лучше подписаться по РСС в подкастном приложении:<br><a href="https://cloud.mave.digital/51724">https://cloud.mave.digital/51724</a>
|
|
<br>
|
|
--- Forwarded post end ---
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1187 👁</span> | <span class="date">22/12/25, 15:22:09</span> | <span class="message-id">#2183</span><br><a href="tg://resolve?domain=meow_design&post=2183">Open in Telegram</a> | <a href="https://t.me/meow_design/2183">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 fwd 🏷 no_image 🏷 link 🏷 mention 🏷 foreign_channel 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2178/AgADTw1rG-5j-Uk/d96efdcb" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
2. Часто на россыпь точек жалуются, что очень тяжело попасть курсором и особенно пальцем в отдельный объект, а вот при кластеризации кругляши получаются большими, попасть легко. <br><br>Скопление точек может <i>вести</i> себя как кластер, визуально оставаясь скоплением точек: при нажатии на точку оценивать количество других точек поблизости в области погрешности тапа и в зависимости от этого выделять точку или призумиваться для уточнения выбора.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2179/AgADUg1rG-5j-Uk/26c8bcb5" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
3. Иногда кластеризация уместна, когда минимальная визуализация объекта (точка) имеет недостаточную ценность по сравнению с большой и «богатой» карточкой кластера.<br><br>Например, на карте фотографий необходимость уместить узнаваемую (то есть не супермелкую) фотопревьюшку может оказаться более значимым фактором, чем желание показать место каждой сделанной фотографии. <br><br>Но не просто кругляш с числом!
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2180/AgADVg1rG-5j-Uk/bdc42b23" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
4. Кажется, для современной IT-индустрии показ сотни точек на карте — это какой-то мега-вызов на грани возможностей, необходимо тужиться всеми гигафлопсами, и то не факт, что устройство не загорится. <br><br>Поэтому некоторые сервисы вроде каршерингов отвергают кластеризацию, но ограничивают границу показа объектов, например, какой-то воображаемой окружностью вокруг центра города или текущей геолокации.<br><br>Мне кажется, это еще хуже: кластеризация вводит неопределенность, а обрезание выдачи же прямо лжет, что на севере и юге карты нет точек, хотя они там есть. Надо хотя бы явно показать область демонстрации точек, сделать ту воображаемую окружность явной.<br><br>А вообще, кажется, это тот случай, когда простая задача необъяснимым образом оказалась непосильной для IT-индустрии из-за череды поворотов не туда на архитектурных развилках. Ну так нельзя, чародеям Computer Science надо собраться и обсудить, как показывать точки на карте за полигональное время, не дожидаясь квантовых компьютеров.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2181/AgADXQ1rG-5j-Uk/e6cab9f7" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
5. Часть сервисов вроде airbnb фильтруют выдачу по каким-то своим алгоритмам: объекты не кластеризуются и не обрезаются по границе области, а выбивают друг друга. По призуму в район с одним объектом рядом внезапно могут вырости еще несколько, скрываемых на масштабах до это.<br><br>Это решение уже относится не к информационному дизайну, а ко всяким идеологически-продуктовым решениям по отбиранию у пользователя контроля над контентом и подсовыванию вместо него «умной» выдачи. <br><br>В общем, это та же алгоритмическая лента соцсетей, только на карте.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">995 👁</span> | <span class="date">15/12/25, 04:30:35</span> | <span class="message-id">#2178</span><br><a href="tg://resolve?domain=meow_design&post=2178">Open in Telegram</a> | <a href="https://t.me/meow_design/2178">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2177/AgADOwtrG1l7AAFK/4cb75f34" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">980 👁</span> | <span class="date">15/12/25, 04:29:44</span> | <span class="message-id">#2177</span><br><a href="tg://resolve?domain=meow_design&post=2177">Open in Telegram</a> | <a href="https://t.me/meow_design/2177">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2175/AgADNA1rG-5j-Uk/669c6ecf" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Ну ладно, давайте еще проговорим отдельные моменты: <br><br>1. Да, переизбыток точек может привести к тому, что за ними становится тяжело разглядеть карту. В <a href="https://habr.com/ru/articles/268621/">статьях</a> о <a href="https://webmap-blog.ru/yandex-maps/klasterizaciya-metok-na-yandeks-kartax-dva-resheniya">кластеризации</a> показывают такие абсурдный примеры.<br><br>Конечно, визуализация объекта должна подбираться под плотность выдачи заранее или «на лету»: в плотных местах ужиматься до микроточек, в просторных раскукоживаться более богатой визуализацией (например, с какой-то дифференцирующей подкатегории иконкой).<br><br>А если вы пытаетесь вывалить миллион объектов на квадратный сантиметр, то тут проблема с целепологанием визуализации, кластеризация тут будет выглядеть столь же абсурдно:
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2176/AgADNQ1rG-5j-Uk/0188ee13" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1030 👁</span> | <span class="date">15/12/25, 04:29:29</span> | <span class="message-id">#2175</span><br><a href="tg://resolve?domain=meow_design&post=2175">Open in Telegram</a> | <a href="https://t.me/meow_design/2175">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2173/AgADMQ1rG-5j-Uk/02b48533" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Или вот закладки в maps.me — кайф же. Нет никакой проблемы в том, что закладки залезают друг на друга: они так показывают плотные места.<br><br>Рядом я прикинул, как бы выглядели эти закладки с кластеризацией. Вместо полезной карты — бессмысленное облачное спортлото в отрыве от карты, но зато кругляши не лезут друг на друга!
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2174/AgADMg1rG-5j-Uk/e0b1dd3c" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1057 👁</span> | <span class="date">15/12/25, 04:28:36</span> | <span class="message-id">#2173</span><br><a href="tg://resolve?domain=meow_design&post=2173">Open in Telegram</a> | <a href="https://t.me/meow_design/2173">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2172/AgADLw1rG-5j-Uk/8195462e" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
И на контрасте: насколько же щедрыми информацией выглядят карты, где не постеснялись вывалить все объекты сразу. <br><br>Не возникает вопросов, где есть объекты, а где их нет.<br><br>Плотность точек считывается глазами автоматически без необходимости ее кодировать каким-то цветом или цифрами.<br><br>Характер распределения точек тоже считывается сразу: тут они в основном сложились в линии с увеличенным разбросом в области от Италии до Тайланда.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1007 👁</span> | <span class="date">15/12/25, 04:27:58</span> | <span class="message-id">#2172</span><br><a href="tg://resolve?domain=meow_design&post=2172">Open in Telegram</a> | <a href="https://t.me/meow_design/2172">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2171/AgADIQ1rG-5j-Uk/00edb757" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Вот самый абсурдный из встреченных мной примеров, вроде бы это карта точек продаж на сайте какой-то компании.<br><br>Есть ли точки продажи в Польше? А в Великобритании? А вот кругляш 43 на Сардинии включает в себя какие-то точки из Туниса? Или вот кругляш на юге Испании заключает еще что-то из Марокко? Есть ли какая-то особенность распределения точек, они кучкуются в крупных городах или распределены по странам равномерно?<br><br>На эти и еще десяток подобных вопросов ответ один: «хз, надо призумиться и посмотреть, на какие точки распадутся кругляши». <br><br>Взамен этого мы знаем количество точек внутри каких-то неопределенных областей. Информация, близкая к бесполезной.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1012 👁</span> | <span class="date">15/12/25, 04:27:28</span> | <span class="message-id">#2171</span><br><a href="tg://resolve?domain=meow_design&post=2171">Open in Telegram</a> | <a href="https://t.me/meow_design/2171">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2170/AgADHA1rG-5j-Uk/3acf4e68" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Время признаться: я терпеть не могу кластеризацию. Это когда распределенные по карте объекты объединяются в мега-кругляши с уточнением количества объектов внутри.<br><br>Информационная плотность от такого решения резко снижается, взамен появляется неопределенность.<br><br>Значит ли что-то расположение крягляша? Да не особо, это какая-то усредненная позиция вложенных в него объектов, конкретно в этом месте может и не быть ничего.<br><br>Как далеко может оказаться реальное положение объекта относительно впитавшего его кругляша? Неизвестно, может неподалеку, а может и где-то далеко, это как алгоритм кластеризации решит.<br><br>Где наибольшая плотность объектов, а где их мало? Ну сиди считывай цифры с кругляшей и сравнивай друг с другом, хорошо еще если цветовое кодирование кругляшей введут в зависимости от количества объектов внутри (как на этом скриншоте).
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1203 👁</span> | <span class="date">15/12/25, 04:27:06</span> | <span class="message-id">#2170</span><br><a href="tg://resolve?domain=meow_design&post=2170">Open in Telegram</a> | <a href="https://t.me/meow_design/2170">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2167/AgADkg1rG3-34Ek/c3d971c6" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Два производителя всевозможных кронштейнов и подставок выбрали на своих сайтах совершенно разный подход к описанию продукции в выпадающем меню Products.<br><br>На первом скрине компания картинками и понятными словами объясняет, что у них бывает: вот если надо к столу прицепить, а вот если проектор повесить.<br><br>Вторая же компания огорашивает сухим перечнем всевозможных <i>Крутых Слов</i>, которые их маркетологи подобрали для... да непонятно даже для чего, хотя бы как-то намекнули, что речь идет о кронштейнах. За этими <i>Крутыми Словами</i> HALO и AURA могли бы скрываться и спиннинги, и марки термопасты.
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2168/AgADkw1rG3-34Ek/e88aef25" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
Но не утверждаю, что первые сделали всё правильно, а вторые совершили ошибку. Просто мне как нубу первый сайт оказался более удобным. Возможно, второй производитель сознательно целится в узкопрофессиональную аудиторию неслучайных людей, которые наизусть знают разницу между NOVA и ECLIPSE, и разжевывать основы проходимцам вроде меня им просто не надо. Эпл на своем сайте тоже в меню не объясняет, что Mac это такие компьютеры.<br><br>Хотя пункт <i>Продукция</i> в главном меню почти всегда стоит попытаться поменять на более конкретные слова, описывающие продукцию конкретной компании: Бильярдные столы, Крепеж, Шины, Кронштейны...
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1356 👁</span> | <span class="date">12/12/25, 01:20:42</span> | <span class="message-id">#2167</span><br><a href="tg://resolve?domain=meow_design&post=2167">Open in Telegram</a> | <a href="https://t.me/meow_design/2167">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link 🏷 no_image 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
</div>
|
|
<br>
|
|
Принтфул не с первой попытки, но всё же был побежден. Ссылка для заказа:<br><br><a href="https://www.printful.com/product-template/96522850/7d45fba179b4135458b0d112249c3b12" target="_blank">https://www.printful.com/product-template/96522850/7d45fba179b4135458b0d112249c3b12</a>
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1812 👁</span> | <span class="date">02/12/25, 22:14:38</span> | <span class="message-id">#2166</span><br><a href="tg://resolve?domain=meow_design&post=2166">Open in Telegram</a> | <a href="https://t.me/meow_design/2166">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
И ссылка, если хотите, чтобы календарь кто-то напечатал за вас:<br><a href="https://printdirect.ru/storefront/shared_info/9447582" target="_blank">https://printdirect.ru/storefront/shared_info/9447582</a><br><br>тут еще должна была быть ссылка на printful с доставкой по всему миру, но у него настолько ужасный интерфейс, что я просто не понял, как добыть эту ссылку.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1608 👁</span> | <span class="date">02/12/25, 11:26:56</span> | <span class="message-id">#2164</span><br><a href="tg://resolve?domain=meow_design&post=2164">Open in Telegram</a> | <a href="https://t.me/meow_design/2164">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image 🏷 link </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<div class="document-pdf" style="">
|
|
<a href="https://t.me/meow_design/2160" target="_blank">[PDF-файл]</a></div>
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<div class="document-pdf" style="">
|
|
<a href="https://t.me/meow_design/2161" target="_blank">[PDF-файл]</a></div>
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<div class="document-pdf" style="">
|
|
<a href="https://t.me/meow_design/2162" target="_blank">[PDF-файл]</a></div>
|
|
</div>
|
|
<br>
|
|
</div><br>
|
|
<br><br>
|
|
<div class="post">
|
|
<div class="message-media">
|
|
<div class="document-pdf" style="">
|
|
<a href="https://t.me/meow_design/2163" target="_blank">[PDF-файл]</a></div>
|
|
</div>
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1646 👁</span> | <span class="date">02/12/25, 11:26:12</span> | <span class="message-id">#2160</span><br><a href="tg://resolve?domain=meow_design&post=2160">Open in Telegram</a> | <a href="https://t.me/meow_design/2160">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 merged </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
Я был уверен, что чуть раньше осенью уже выкладывал традиционный календарь на следующий год. А оказалось, что это было год назад. Вставьте сюда свой любимый депрессивно-экзистенциальный стикер.<br><br>Без лишней графомании, всё как обычно (а если непонятно — прочитайте <a href="https://t.me/meow_design/1911">прошлогодний анонс</a>):
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1442 👁</span> | <span class="date">02/12/25, 11:26:06</span> | <span class="message-id">#2159</span><br><a href="tg://resolve?domain=meow_design&post=2159">Open in Telegram</a> | <a href="https://t.me/meow_design/2159">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 no_image </div></div>
|
|
<hr class="post-divider">
|
|
<div class="message-body"><div class="post">
|
|
<div class="message-media">
|
|
<img src="http://test.example.com/media/meow_design/2158/AgAD_Q1rG7RTaUk/94bbb09d" style="max-width:100%; width:auto; height:auto;max-height:400px; object-fit:contain;">
|
|
</div>
|
|
<br>
|
|
Мы уже давно ушли из той эпохи веб-дизайна, где все ссылки было принято подчеркивать для однозначной трактовки интерактивности элементов сайта. <br><br>Условные дизайнеры-визуалы тогда победили интерфейсников, ведь без подчеркиваний страница как картинка выглядит чище, и пофиг, что семантическая структура сайта становится менее очевидной. <br><br>В качестве оправдания они говорили, что на современных сайтах всё интерактивно, или что и без подчеркиваний очевидно, какие элементы являются ссылками.<br><br>И вот мы оказались в мире, где веб-дизайнер в списке фич чередует черный, голубой и серый цвета только потому, что побоялся мрачной монотонности десяти строчек черного текста. Нет, голубые строчки не являются ссылками, а серые строки не являются задизейбленными или второстепенными. Прост дизайн такой. <br><br>Перед тем как начать нарушать правила, неплохо бы сначала про эти правила узнать.
|
|
<br>
|
|
</div><br></div>
|
|
<div class="message-footer"><br>
|
|
<span class="views">1526 👁</span> | <span class="date">30/11/25, 14:26:50</span> | <span class="message-id">#2158</span><br><a href="tg://resolve?domain=meow_design&post=2158">Open in Telegram</a> | <a href="https://t.me/meow_design/2158">Open in Web</a>
|
|
<br><div class="message-flags"> 🏷 link </div></div> |