Я в интернете

РСС    Джейсон-фид

Есть автоматические трансляции в Тумблер и Же-же. Если не работает, напишите мне: ilyabirman@ilyabirman.ru.

Избранное

Позднее Ctrl + ↑

Бонусы списываем, копим?

Большинство супермаркетов постепенно перешли со скидок на бонусы. То есть ты покупаешь, и тебе какой-то процент потраченной суммы сваливается в виде «бонусов» на карту. И потом можешь их потратить в этом же магазине.

Бесит, что на кассе всё время спрашивают: «Бонусы списываем, копим?». Владельцев супермаркетов, конечно, можно понять. Кого невозможно понять, так это чудаков, которые предпочитают бонусы копить. Нахера их копить, блин? Если вам нравится раздавать бесплатные кредиты, так чего мелочиться, почему бы вам не основать сразу Банк Щедрости? Будет куча желающих воспользоваться вашими уникальными услугами.

Ясное дело, списываем.

Ссылка по теме: Вам сколько пакетов?

Темы оформления в Эгее 2.4

Так, ну первые баги беты новой Эгеи я починил — спасибо всем храбрым ребятам, кто рискнул поставить её. Теперь рассказываю про штуку с темами оформления.

Как в принципе работают темы в Эгее

С точки зрения ядра, всё, что идёт наружу (ХТМЛ, ЦСС и Джаваскрипт) — это «тема оформления». Чтобы отдать любую страницу, ядро готовит данные и отдаёт их в шаблон main.tmpl.php. Шаблон может использовать другие шаблоны, подключать стили и скрипты — это уже его заботы, ядру безразлично, как именно он генерирует страницу.

Есть только момент, связанный с наследованием. Ядро пытается использовать main.tmpl.php из папки вашей темы (/themes/yours/main.tmpl.php). Если файла нет, то берёт из родительской (допустим, из системной: /system/theme/main.tmpl.php). Когда main.tmpl.php вызывает, допустим, footer.tmpl.php, ядро, снова, сначала ищет такой файл в используемой теме, потом в её родительской и так по цепочке вплоть до системной темы.

Это позволяет делать одну тему на основе другой, переопределяя только то, что нужно. Ещё разные подробности о темах оформления есть в документации.

Что изменилось и почему

Ядро как раньше отдавало все данные в main.tmpl.php, так и сейчас отдаёт. Логика наследования тоже осталась прежней.

Но поменялась сама организация комплектных тем, и то, кто из них чего откуда наследует. Раньше в системной папке /system/theme/ лежала «Классическая» тема, то есть стандартная тема оформления Эгеи. Остальные темы лежали в /themes/*/ и наследовали от системной. Получалось, что любая ваша тема неизбежно наследовала от «Классической» и описывалась не в формате «хочу так», а в формате «хочу не так, как в „Классической“, а вот так». У «Классической», хоть она и весьма нейтральна, есть своё мнение по некоторым вопросам. При этом не опираться на неё совсем — невозможно, потому что в ней живёт вся логика фронтенда.

В новой версии «Классическая» тема переехала в /themes/classical/ и больше не претендует на основу всего. Системная же тема, живущая в /system/theme/, теперь выглядит совсем голой, это такая тема «без дизайна», но со всей логикой. Она навязывает вам намного меньше своей воли.

Теперь все комплектные темы (включая «Классическую») содержат по одному шаблону — layout.tmpl.php. В нём определён весь ХТМЛ-каркас темы. Все остальные шаблоны с мелочами определены в системной. При этом по-прежнему ничего не мешает в своей теме переопределить любой шаблон, как и раньше, просто новая конструкция помогает в большинстве случаев отделаться одним файлом.

Соответственно, чтобы создать свою тему, вам теперь не нужно в большинстве случаев вообще ходить в папку /system/theme/ и смотреть, как там что устроено. Вы просто копируете приглянувшуюся папку из /themes/, называете как вам нравится и меняете в ней всё по вкусу.

Как прикрутить свою старую тему к Эгее 2.4

Лучше переделать тему по новым правилам, но есть хак чтобы быстро воткнуть старую.

Темы, написанные для 2.3 оказываются несовместимы с 2.4 только потому, что они рассчитывали на другую иерархию, наследовали от старой системной или другой комплектной темы. Поэтому, если взять родительскую тему (темы?) из старой, то всё заработает. Если у вас не сохранился дистрибутив Эгеи 2.3, скачайте его.

Возьмите системную тему оформления из Эгеи 2.3 (папка /system/theme/) и положите новой в /themes/system_2_3/. Теперь откройте файл вашей темы theme-info.php. Используете ли вы какую-то другую тему из Эгеи 2.3 в качестве основы для своей с помощью поля based_on?

Если нет, то всё просто: значит ваша тема основана на системной теме Эгеи 2.3. Тогда в ваш theme-info.php допишите:

'based_on' => 'system_2_3',

Если да, то из дистрибутива Эгеи 2.3 вам нужно будет взять ещё и ту тему, на которой основана ваша. Предположим, это «Просторная». Тогда надо взять папку /themes/spacious/ из старого дистрибутива и положить в /themes/spacious_2_3/, а в вашей теме прописать так:

'based_on' => 'spacious_2_3',

Но это не всё. Сама-то «Просторная» из 2.3 основана на системной из 2.3, поэтому эту связь тоже придётся прописать. Зайдите в /themes/spacious_2_3/, откройте её theme-info.php и допишите там:

'based_on' => 'system_2_3',

Теперь вы восстановили всю иерархию зависимостей тем оформления, которая у вас была раньше.

Есть ещё одна проблема: в старых Эгеях использовалась фича ПХП под названием short_open_tag. Эта опция позволяет в качестве тега ПХП-кода использовать краткую форму <? ?> вместо длинной <?php ?>. В новой Эгее я от этого отказался, потому что от этого с какого-то перепугу отказался в последних версиях сам ПХП. Но темы, которые вы взяли из старого дистрибутива используют короткую запись. Соответственно, вам надо либо во всех файлах заменить <? (но не <?=) на <?php, либо, если вы используете более старую версию ПХП, которая ещё поддерживает short_open_tag, включить эту фичу в Эгее (для этого откройте .htaccess из корня и исправьте там в обоих местах short_open_tag off на short_open_tag on).

Почему это всё хак и лучше так не делать? Как минимум потому, что в новых темах много чего причёсано и появились радости типа затухания подсветки ссылок. Если вы воткнёте всё старое, то это потеряется. Ну и потеряется смысловая часть фронтенда, появившаяся только в новой версии, например, блок «Популярное», социокнопки, подсветка синтаксиса. Так что рекомендую потратить полчаса и переделать свою тему по новым канонам, чтобы она наследовала от новой «голой» системной.

Правильное время съёмки у фотографий

Я люблю, чтобы у фоток в метаданных было правильно прописано время съёмки. Но я никогда в жизни не полезу разбираться, как настраивать часы на фотике (да и если бы это было легко делать, я бы всё равно забывал). Вместо этого я фотографирую часы в поездках — благо, их полно на транспорте, да и на улицах многих городов — а потом корректирую время фоток по ним.

Правильное время съёмки у фотографий

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

Это секундное движение, а главное — оно не требует никакой дисциплины: время можно прописать в любой момент, когда понадобится. Вот я сегодня искал какую-то фотку из старой своей поездки, 2005 года, а там время неправильное. Быстро нашёл часы (благо, всякие табло я фотографировал всегда), всё подправил.

Прикольно, когда в каком-нибудь кадре попадаются часы случайно, а у тебя время кадра соответствует времени на этих часах, хотя ты и не по ним подкручивал:

Правильное время съёмки у фотографий

Да, конечно, фотик должен сам знать текущее время безо всякой настройки, как телефон. Но мой пока не знает.

Чайник и шайба

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

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

О треках South London и Nia

Ранее я писал о своих треках с первого альбома:

Пришло время написать о следующих треках.

Вообще, так фулон делать не было принято тогда, когда я его писал (где-то в 2005 году), но мне хотелось попсовости и мелодичности. Я освоил фишку с выделением в звуках синтезаторов частот, характерных для человеческого голоса, поэтому у меня там такой механический голос по-очереди произносит разные гласные. 3:19 хорошая вот штука. А в 4:52 типа поезд отправляется со станции метро (ну а чё) и начинается главная тема, которая мне до сих пор нравится. 6:24 теперь все вместе! Бас такой смешной, надо бы переделать как-нибудь, что ли.


А это вот мой главный поп-хит той поры. 1:22 глупая мелодия раз. Вообще, этот трек родился из большой зависти к Андрею Вахненко, который на альбоме Synsun: Symphonic Adventures (2004) сделал совершенно невероятный трек Zygote. В 2:27 уже первые признаки этой зависти. В 2:53 ещё одна глупая мелодия, а в 3:35 — вариации на её тему. Это всё такая веселуха. В 4:38 я сосредоточился и начал готовиться к тому, чтобы отомстить Андрею. В 4:52 выступает великолепный Игорь Кириллов, рассказывающий в эфире программы «Намедни» Леонида Парфёнова о первом антитеррористическом законе путинской эпохи. 5:46 поехали.

Слушайте.

Когда-нибудь доберусь с такими рассказами до своего второго альбома, там всё серьёзнее.

Одноногие женщины и туалеты

Главная тайна графического дизайна навигации в общественных местах — это одноногие женщины на пиктограммах туалетов. Такая фигня встречается по всему миру:

Опасность

Важное дизайнерское слово opacity не переводится на русский язык: у нас нет антонима слову «прозрачность». Иногда говорят «непрозрачность», но с этим словом трудно иметь дело.

В бюро всю жизнь используется термин опасность: «Давай сделаем тулбар чуток поопаснее». Рекомендую.

Профессиональные докладчики

На последнем 404фесте я рассказывал про схему метро, и про неё же я говорил до этого на УВДЦ прошлой зимой. К сожалению, тогда в Челябинске не сняли видео, а я хотел, чтобы рассказ сохранился, поэтому пошёл на сделку с совестью и рассказал ещё раз. До сих пор стыдно за то, что не подготовил что-нибудь новое.

А есть «профессиональные докладчики», которые ездят с конференции на конференцию и рассказывают одно и то же. Такой докладчик сообщает: «Я немного дополнил свой доклад» или «Я изменил порядок примеров». Как будто доклад — это что-то, что можно полировать всю жизнь.

К двадцать пятому разу доклад будет бесподобен, каждая фраза будет отскакивать от зубов, все шутки будут оттестированы, а слайды будут такими, что хоть выставку устраивай. Только нахрен он кому будет нужен? Все, кому интересно, уже посмотрели твоё прошлое видео в интернете.

Кстати, пользуясь случаем, даю ссылки на все свои доклады:

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

Сама идея «нового доклада» — нонсенс. Если ты едешь на конференцию, но твой доклад не «новый», то нужно честно сказать, что у тебя нет доклада. Поэтому, кстати, меня бесполезно звать на конференции за месяц до их начала — я не умею делать доклады так быстро.

Тонкое подчёркивание через бордер

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

Это всё удивительные усилия, направленные на ухудшение результата.

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

Просто напишите слово на бумаге и подчеркните его. В голову же не придёт прижимать его к нижнему краю букв или разрывать.

Секрет квакающих сигнализаций

Некоторые автолюбители ставят сигнализацию на свои корыта, чтобы всем вокруг трепать нервы. Когда такой персонаж жмёт на кнопочку на пультике, машина квакает один раз или два. Один квак означает, что машина закрылась, а два — что открылась. Это очень легко запомнить, потому что в слове close один слог, а в слове open — два. Собственно, поэтому так и квакает.

Благодаря этому знанию, я могу делать более полноценные выводы о происходящем вокруг. Когда за окном я слышу «ква», я понимаю: какой-то урод припёрся. А когда я слышу «ква-ква», я понимаю: какой-то урод сваливает. Если бы я не знал про open и close, то я бы просто думал: вот урод.

Потому что нормальные машины открываются и закрываются не издавая звуков. И когда мимо них произжает мусоровоз тоже не орут. А в идеальных машинах даже двигатель звуков не издаёт.

Ранее Ctrl + ↓