Избранное

Позднее Ctrl + ↑

Нью-йоркское метро

Я вам показывал уже нью-йоркские автобусы, теперь начал разгребать метро. Там сотни фоток, но я начну с обзорной заметки, а когда-нибудь потом углублюсь в детали.

Типичный вход — просто тёмно-зелёная лестница в тротуаре:

Под названием станции написано направление — аптаун и Бронкс. Если тебе в даунтаун, вход по другую сторону Бродвея.

Нетипичный вход — огромный вестибюль на 42-й улице и Бродвее:

У нью-йоркского метро есть логотип, но его мало кто видел. Настоящий идентификатор — чёрная навигационная полоска с цветными кругами:

Или даже с одним кругом. Красота и польза:

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

Над пристёгнутым великом — тактильная версия вывески:

Внутри висят схемы автобусов и метро, карта окрестностей и список планируемых ремонтов:

Форма турникета помогает понять, с какой стороны проходить — не приходится писать «проходите слева». Это тоже дизайн:

Типичная платформа. Ни фресок, ни барельефов, только металлоконструкции:

Когда станции называются коротко, подписывать их можно на квадратиках. Не заблудишься.

Над путём висит информация о движении поездов:

Снова: информация разнородная, но выглядит всё чётко.

Здесь вот пишут, где можно будет пересесть на поезда E, M, 7:

Есть переход к платформам в аптаун:

Очень красивые поезда с американским флагом и номером:

См. также автобусы.

Внутри поезда. Схема линии висит поперёк вагона:

Вывеска с названием станции:

Много где сохранились старые названия, выложенные плиточкой:

Табличенька:

Красивый инфосос:

Адские турникеты на выход:

Фотографии из поездки в октябре 2018. Во всех заметках про путешествия снизу есть поиск дешёвых авиабилетов. Слетайте в Нью-Йорк!

Ещё Нью-Йорк:

Ещё метро:

Эгея 2.9

Готова Эгея 2.9 (сборка v3553) со значительной переписью старья под капотом, фоткой в «Настройке», тёмным режимом, входом через ВК, менюшками и подкастами (для платных пользователей). Эта заметка повторяет анонс беты, но с меньшим занудством. Хотите подробнее — читайте анонс беты.

2.9 — необычный релиз, такой «Снежный барс» среди Эгей. Я стремился к наведению порядка под капотом во многих местах движка, так что новых фич не очень много. См. заметки про альфу, альфу 2, альфу 3, альфу 4, бету и бету-2.

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

С последней беты фичи, связанные с подкастами, стали доступны только в платной версии, а также улучшилась совместимость с ПХП 7.4. Теперь в качестве обложки подкаста используется обложка страницы тега, используемого для подкаста, и только если её нет — фотография автора блога.

Настройка и темы

Теперь можно отсюда управлять картинкой блога, которая показывается в кружке рядом с названием слева сверху:

Можно перетащить файл, а можно ткнуть в большой кружок, и тогда появится обычный диалог выбора файла. Как и в предыдущих версиях, фотографию можно перетащить и напрямую в маленький кружок в углу (но если ткнуть в маленький кружок, перейдёшь на главную).

Эта фотка теперь автоматически используется в качестве фавыконки и эпл-тач-иконки.

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

В темах «Простая» и «Акут» появилась поддержка системного тёмного режима. То есть при переключении тёмного режима в ОС, блоги с этими темами будут тоже переключаться в тёмный режим. Если такое поведение вам не нужно, снимите галку «Поддерживать Тёмный режим»:

На этом скриншоте ещё видно новую галку «Показывать счётчики просмотров». Счётчики появились в 2.8, но их не все полюбили; теперь можно выключить.

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

Ещё в подвал «Настройки» вернулась ссылка на открытые сессии. Для меня самого загадка, зачем и при каких обстоятельствах я её убирал. Ещё там могли не показываться айпи-адреса при определённой конфигурации сервера, теперь показываются.

При изменении настройки соединения с базой теперь выводятся конкретные сообщения об ошибке, а не просто «перепроверьте параметры».

Менюшки

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

И загруженными картинками:

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

Нормальная обработка фейлов

Благодаря большой переписи слоя общения с базой данных, если с доступом к базе возникли проблемы, Эгея больше не сыпет гору бессмысленных ошибок на страницу, а показывает аккуратный лимон:

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

Благодаря большому рефакторингу фронтенда, Эгея теперь умеет выводить аккуратные сообщения об ошибках при неудаче с аджакс-запросами:

Информативные подробности ошибки при этом попадают в консоль браузера, так что отлаживать такие проблемы станет проще. Раньше в случае неудачи с аджакс-запросом Эгея могла просто молчать или выводить какой-нибудь восклицательный знак где-то в незаметном месте.

Также стало проще включить ведение лога. Если вы мне пожалуетесь на необъяснимый баг, я смогу быстрее получить от вас лог и попытаться понять, в чём дело. (Поддержки движка по-прежнему нет, так что в общем случае помочь я вам не смогу.)

Практически всё, что касается фронтенда (включая настройку аватарки, новые менюшки, эти сообщения об ошибках и исправление кучи багов) сделал Женя Лазарев — мегаспасибо Жене!

Подкасты (для платных пользователей)

Теперь Эгею можно использовать для подкастов, правда поддержка этого сделана на уровне прожиточного минимума. В коде РССа теперь вставляются теги enclosure с аудиозаписями, если они использованы в заметке, и добавлены разные ещё теги, которые нужны для подкастов: язык, автор, описание. На обычную работу РСС это не влияет.

Чтобы сделать подкаст на Эгее, нужно завести какой-то тег, который будет стоять у всех заметок-выпусков. В каждую такую заметку должен быть загружен мп3-файл с выпуском. Например, вы выбрали тег «подкаст». В редакторе тега пропишите тегу нормальное название в урле (например, «podcast») и заполните поля «Заголовок страницы» и «Описание» — они станут названием и описанием подкаста.

У меня это выглядит так (на описание пока забил):

Теперь выпуски подкаста, как любые заметки по тегу, живут на его странице с урлом ваш-блог/tags/podcast/, а урл ваш-блог/tags/podcast/rss/ можно скормить любому подкастному приложению, и оно будет скачивать и играть выпуски. Этот же урл можно отдать Эплу, чтобы добавить подкаст в каталог Айтюнса.

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

Другие подкастные поля для Айтюса вроде категории и наличия ненормативной лексики теперь можно настроить в конфиге через атрибуты rss_itunes_categories_xml (сюда надо прям XML-код атрибутов в формате Айтюнса) и rss_itunes_explicit (yes или no). Эти параметры — глобальные для блога. Если вы хотите публиковать несколько подкастов на разных тегах, вы не сможете прописать им разные значения этих атрибутов.

У меня прописано так:

$_config['rss_itunes_categories_xml'] = (
  '<itunes:category text="Arts">'. "\r\n".
  '<itunes:category text="Design" />'. "\r\n".
  '</itunes:category>'. "\r\n".
  '<itunes:category text="Society &amp; Culture">'. "\r\n".
  '<itunes:category text="Personal Journals" />'. "\r\n".
  '</itunes:category>'. "\r\n".
  '<itunes:category text="Technology" />'. "\r\n"
);

$_config['rss_itunes_explicit'] = 'no';

В результате в Айтюнсе мой видеоблог-подкаст выглядит так:

Разметка фрагментов аудио

Вместо обычного аудиоплеера Жуэль с Эгеей теперь идёт продвинутый Жуэль Про. Это значит, что вы можете теперь пользоваться его контролами. Скажем, вы выложили подкаст и хотите обратить внимание читателей на конкретный фрагмент, как я делал недавно в заметке о подкасте про многозадачность на Айпаде:

В редакторе заметки это выглядит так:

[play] http://traffic.libsyn.com/atpfm/atp363.mp3 363: The Floor is Lava

<span class="e2-audio-seek jouele-control" data-href="http://traffic.libsyn.com/atpfm/atp363.mp3" data-type="seek" data-range="1:24:55...1:31:24">Разговор про Айпад начинается с 1:24:55</span>. Особенно здорово...

Как видите, приходится использовать АПИ Жуэля Про впрямую, в том числе, прописывать полный путь к файлу в атрибуте data-href. Класс .e2-audio-seek я определил в Эгее и использую, чтобы такие ссылки на места в аудиотреках выглядели как кликабельными и подсвечивались, когда эти фрагменты звучат.

Кроме того, появился упрощённый синтаксис для разметки частей длинного аудио, например диджейского микса или подкаста. Пример того, что с этим можно сделать — в недавней заметке о промомиксе «Аудио Санто». Пока играет микс, в плейлисте ниже подсвечен трек:

В редакторе заметки это выглядит так:

[play] http://promodj.com/download/6921656/ Ilya Birman: Audio Santo (Studio Mix)
0:00:00 0:02:44  Analog Pussy: Spooky Loops
0:02:45 0:04:34  Logic Bomb: Skrock
0:04:35 0:06:09  Krumelur: Understatement
...

Каждая строка имеет вид: от, пробел, до, два пробела, подпись. Тут важно, чтобы такие строчки с диапазонами и подписями шли без отступа после самого элемента [play]. Тогда Эгея поймёт, что это его разметка, и вам не придётся вручную описывать контролы Жуэля Про и верстать эту таблицу.

Остальное

Добавилась возможность представляться в комментариях через «Вконтакте» (спасибо Виктору Корейше):

«Роза» научилась английскому словоизменению (спасибо Роману Парпалаку). Кажется, меньше вероятность того, что поиск забудет проиндексировать некоторые заметки (был едва уловимый баг, попытался исправить).

Нисден стал поддерживать прямое указание языка программирования в коде: <code lang="php"> (спасибо Жене Степанищеву).

При редактировании тега теперь можно указать заголовок страницы этого тега. Я уже выше упоминал поле «Заголовок страницы» в связи с подкастами. Это новое поле в Эгее 2.9. По умолчанию в заголовке страницы тега написано что-то вроде «8 заметок с тегом кино». Теперь можно изменить, например, на «Обзоры кинофильмов», сохранив при этом сам тег «кино».

Мелочи:

  • если загрузить файл с русским именем, его имя теперь романизируется;
  • немного изменился внешний вид инсталятора;
  • миграция будет выполняться быстрее благодаря меньшему числу лишних запросов;
  • теперь не только в заметках, но в описаниях тега и блога можно использовать аудио и фоторамы (следствие унификации кода для обработки больших текстовых полей);
  • всем страницам добавлен og:type="website";
  • движок больше не даст запланировать заметку на будущее, если ему не хватает прав доступа к папке user/, и объяснит, что надо его дать (без этого он не сможет сохранить инфу о том, когда нужно будет сбросить кеши);
  • в комплекте теперь идут Лайкли 2.4 с рабочим счётчиком Фейсбука и без Гугль-плюса (спасибо, Николай Рысь);
  • sitemap.xml стал правильнее;
  • теперь можно сделать свой кастомный шаблон для РСС (user/rss/rss.tmpl.php);
  • при редактировании тега, в названии которого были эмодзи, они слетали, а теперь выживают;
  • поправлены всякие другие баги.

Ещё появилась беспилотная инсталляция, но это я для себя просто пишу, чтобы не забыть.

Как обновиться

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

Замените файл .htaccess в корне, папку /system/ и все подпапки в /themes/ (то есть уберите старые, положите новые, а не дозалейте в старые новые файлы).

Имейте в виду, что переделалось всё логирование. Вместо user/log.txt теперь в папке user/logs/ пишутся разные логи, так что если у движка не будет прав, чтобы создать эту папку и файлы в ней, логов не будет. Если у вас всё правильно установлено, таких проблем быть не должно, потому что у Эгеи должны быть полные права на запись всего внутри её собственной папки, но это повод вам перепроверить.

Если вы делали свою тему оформления, посмотрите, что изменилось в комплектной, и аккуратно повторите эти изменения у себя. Также изменились названия некоторых параметров конфига, добавились новые (ваш user/config.php может частично утратить актуальность; сверяйтесь с system/config.php);

Где скачать

Свежий дистрибутив — на сайте движка.

Если вы пользуетесь платной версией и хотите платную 2.9, напишите мне.

О предыдущей версии: 2.8

Американские грузовики в Нью-Йорке

Я вам показывал уже нью-йоркские автобусы. В Америке не только автобусы не имеют ничего общего с европейскими, но и всевозможные грузовики.

Они очень нарядные и гордятся собой:

Разрисованы:

«Либерти» — ну а что ещё должно быть написано на американском мусоровозе?

Ну что-то другое может быть:

Ещё один Мак:

Какой-то вдруг современный мусоровоз:

Хирургического вида:

Просто фура. Фрайтлайнер:

Петербильт. Знаете такого производителя автомобилей?

Ещё Маки. Не знаю, водовоз это или ассенизатор:

Какая-то откачивался, видимо. Фрайтлайнер:

Просто грузовик. Мак:

Самосвал вбок. Кенворт:

Самосвал назад. Мак:

У американских самосвалов невиданная на Руси особенность: верх закрывается отдельной натягивающейся тряпкой, чтобы пыль не летела, видимо. У Петербильта (слева) она убрана, а у Кенворта (справа) — закрыта:

Бетономешалка:

Эвакуатор:

Типичная американская почтовая машина:

Ну и, конечно, пожарная:

Фотографии из поездки в октябре 2018. Во всех заметках про путешествия снизу есть поиск дешёвых авиабилетов. Слетайте в Нью-Йорк!

Ещё Нью-Йорк:

Уличные таблички Чикаго

Моя любимая рубрика.

Красивый симметричный дизайн:

1
2

Тесно:

3

Парные знаки:

4
5
6

К зелёным табличкам с официальными названиями улиц иногда добавляются коричневые с какими-то народными названиями или чем-то в таком духе:

7
8

Это пешеходные таблички, а автомобильные содержат ещё одну строчку с координатами, о которой я рассказывал в заметке «Пять станций метро „Вестерн“»:

9
10
11

Какая-то неведома сила мешает людям писать 0 E и они пишут 1 E:

12

Фотографии из поездки в октябре 2018. Во всех заметках про путешествия снизу есть поиск дешёвых авиабилетов. Слетайте в Чикаго!

Ещё Чикаго:

Ещё уличные таблички:

Старпёрский кофе и бургеры

Люблю я бургеры. А где есть бургеры, если не в Америке?

Когда осенью был в Нью-Йорке, нашёл какое-то хвалёное бургерное место. Помню, что у места были миллионы звёзд и восторженных отзывов во всех приложениях. Чтобы съесть бургер, надо было сначала отстоять очередь. Все официанты были возраста 60+, а интерьер выглядел так, будто ещё деды этих официантов наслаждались лучшими бургерами именно здесь.

Бургер оказался никаким.

И я подумал про кофе. Где пить кофе, если не в Италии? Да хоть где! Чем дальше от Италии, тем меньше дурного влияния вековых традиций. Я не хожу пробовать кофе в старинные кофейни с зашкаливающими рейтингами, ведь хороший кофе — относительно новое явление в мире, и если кто-то всю жизнь варит кофе, потому что ещё его дед варил кофе, доверия ему мало. Скорее всего, он привык пить растворённую кипятком сажу и думает, что это и есть кофе.

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

Ну это как если бы тебе к чашке кофе на блюдце положили пакетик с сахаром.

Короче, не повторяйте мою ошибку, если поймёте, как.

Мой саундклауд

Купил себе про-акаунт на Саундклауде и залил туда своё всё: треки, миксы, подкасты.

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

Из моего советую слушать вот этот плейлист, если вам нравится техно:

Или вот этот, если вы больше по прогрессив-хаусу:

Симфонию я пока не написал.

А, да, подкаст тоже собрал в плейлист начиная с 13-го выпуска (до этого был треш, надо всё переделать):

В общем, фоловьте, лайкайте и репостите.

И зовите поиграть.

Музподкаст № 16: Дарк-пси-прог

Слушайте вот:

РСС-поток для подкастных приложений:

Подкаст ещё можно слушать и комментировать на Промодиджее.

Треклист (многие треки звучат фрагментарно):

  • Analog Pussy: Spooky Loops
  • Logic Bomb: Skrock
  • Krumelur: Understatement
  • Wizzy Noise: Vandalist
  • Triac: Sink (Live Edit)
  • Sensient: Dusty Circuit
  • Analog Pussy: Stomping Crow
  • Cujorius One: Draw The Dot
  • Missing Time: Strange
  • Visual Paradox: Come From God
  • Entropy: The Second Law Of Thermodynamics
  • Block 4: Mainframe
  • Yumade: Le Réel Simplifié
  • Sensient: Madmans Playroom
  • Audiomatic: Trees
  • Analog Pussy: Audio Santo
  • Tristan: Funkrock
  • Aze & Clutch: Azeton
  • Squaremeat: Illegal Operation
  • Analog Pussy: Space Walk
  • Minimal Criminal & Krumelur: Reefer And Barbecue
  • Krumelur: Minimal Animal
  • Sensient: Morehdel
  • Flyh: Untitled
  • Cujorius One: 95.5 Radio Joint
  • Missing Time: Excess End
  • Analog Pussy: Extendet Memorys
  • Sensient: Rhythmic Transposition
  • Bassid: Rise And Shine
  • Cujorius One: Speaker Bite Me
  • Faktor D: Sardine
  • Yumade: Klanguage (Live Mix)
  • Juacques Geleé: Geisterfahrer
  • Trancefeld: Parameter Normal
  • Blowfish: Cycles
  • Electric Universe: Minor Fields
  • Native Radio: Neuromancer
  • Solar Fields: Third Time (T-version)

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

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

Я сто раз убеждался, что если не просто ставишь человеку музыку, а ещё тыкаешь пальцем, шанс, что ему понравится, намного выше. Друзья не раз благодарили меня за то, что помог что-то распробовать (это касается и транса, и классики), и я надеюсь, что кому-то из вас мои комментарии тоже помогут.

Конечно, слушать с комментариями несколько раз — это жесть, поэтому потом я выложу чистую версию.

Навигация в Нью-Йорке

В рассказе об общем впечатлении от Нью-Йорка показывал элемент навигации:

Вот ещё:

У этой системы навигации даже есть название — «Гуляй, Нью-Йорк!» (WalkNYC):

Узкий вариант для узких тротуаров:

Крупнее и с другой стороны:

В метро такие же карты окрестностей:

На картах на транспорте изображён сам транспорт — метро, автобусы:

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

Поближе:

Маршрут автобуса M34 означает, что он идёт по 34-й улице Манхеттена. Удобно!

Клоузап какой-то другой карты с транспортом:

А вот карта на автобусной остановке где-то в гребенях:

Такие же карты используются в велопрокатах:

В рассказе об автобусах Нью-Йорка показывал ещё такую схему автобусного маршрута на остановке:

Совсем другой дизайн. Вот ещё одна:

Вот, кстати, как выглядит сама остановка. В Москве тоже сделали дурацкие вертикальные названия:

А ещё есть какие-то непонятные панели LinkNYC с экраном со всякой городской инфой:

Если к ним сбоку подойти, там такое:

Фотографии из поездки в октябре 2018. Во всех заметках про путешествия снизу есть поиск дешёвых авиабилетов. Слетайте в Нью-Йорк!

Ещё Нью-Йорк:

Произношение некоторых английских слов

В этом выпуске рассказываю, о том, как произносить некоторые английские слова, которые айтишники очень любят произносить неправильно:

Подкаст-версия для тех, кто в дороге:

Упоминаю слова: apple, archive, content, done, none, height, weight, width, variable, image, engine, defer, choir, tier, gear, origin, queue, header, follower, mutable, sortable, svelte, Jason Fried.

Кстати, на подкаст-версию теперь можно подписаться по РСС и слушать в подкастных программах:

https://ilyabirman.ru/meanwhile/tags/podcast/rss/

В Айтюнс-каталог пока не добавил — там надо ещё доработать разное, но по прямому урлу добавляется и работает, попробуйте!

Пожарные лестницы Нью-Йорка

Я говорил, что одна из заметнейших деталей Нью-Йорка — это пожарные лестницы. Вот вам несколько фоток.

1
2
3
4
5
6
7
8
9

Фотографии из поездки в октябре 2018. Во всех заметках про путешествия снизу есть поиск дешёвых авиабилетов. Слетайте в Нью-Йорк!

Ещё Нью-Йорк:

Ранее Ctrl + ↓