Позднее Ctrl + ↑

On my love to Opera

This post has moved.

Following my post on the topic in Russian, Opera’s Vadim Makeev asked me to reproduce it in English so that other guys from Opera could fully enjoy it. So here are some screenshots from my dear Opera browser, which I’ve been using for years, and have just switched from to stupid Safari a couple of days ago. Safari sucks, as well as any other browser, but at least it looks good.

Пост нежной любви к Опере

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

Вот так Опера сообщает, что есть обновление:

Пост любви к Опере

Обратите внимание на всё: копирайтинг, порядок и расположение кнопок, наличие кнопки Help. Но особое внимание обратите на обгрызанное свечение у кнопки Install Now.

А вот так выглядит процесс обновления:

Пост любви к Опере

Тут тоже полный кайф везде: скорость скачивания апдейта указана с точностью до десятой доли килобайта; прекрасный кастомный прогрессбар с фирменным бликом и процентами посередине, написанными чёрным по тёмно-синему (опять же, с высокой точностью); «Time remaining: 1 second» вместо «1 second remaining»; очаровательный подбор кнопок, главная — Cancel.

Но особый шик в том, что это окно — изменяемого размера:

Пост любви к Опере

Это уже из какой-то немножко другой версии (видите, тут наиболее наркоманская кнопка называется Minimize To Toolbar).

Но не обновлениями едиными занимаются норвежские мегадизайнеры. Вот, например, окно, сообщающее о том, что Опера упала:

Пост любви к Опере

Предприняты все меры, чтобы напугать пользователя случившимся. Всё не влезает, снизу очень мило подписи к радиокнопкам выровнены по центру (им надо это запатентовать!).

Кстати, по умолчанию выбрана кнопка Send Report, что является преступлением против человечности: и так браузер обвалился, а тут ещё я должен какой-то отчёт отправлять. Вроде бы очевидно, что если вам нужен отчёт, то отправляйте его там где-нибудь в фоновом режиме и заткнитесь. При этом если на кнопку нажать, то в браузере открывается страница, которая имитирует отправку отчёта, но на самом деле он не отправляется. То есть как: я ждал самое долгое минуты 3-4, процесс отправки не завершался, поэтому я закрывал всё нафиг. Может, там проектное время отправки отчёта 15 минут, надо просто подождать было? В любом случае я приучился жать на Do Not Send Report.

Иконка зачётная, но если вдуматься: это ж надо было задизайнить собственную иконку для падения браузера! Это весьма важная часть пользовательского экспириенса.

А ещё Опера — уникальное приложение. После падения оно умудряется делать невероятную вещь. У меня иконка Оперы в доке слева была всегда. Так вот, после падения, в правом конце дока начинала радостно прыгать новая Опера, а та, которая слева, оставалась незапущенной. Как так может быть — ума не приложу, но Опера может всё. Поэтому после падения Оперы всё время приходилось удалять старую иконку из дока, а новую двигать на её место.

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

Зато Юнайт есть!

Автобан

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

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

  • <что угодно> детектед;
  • <что угодно> доставляет;
  • <что угодно> внезапно;
  • <что угодно> толсто;
  • <что угодно> такое/такая/такое/такие <что угодно>;

Ещё у сетевых клоунов есть манера обращаться к собеседнику в третьем лице вместо второго, например, они пишут «Автор мудак», потому что им слабо написать «ты мудак».

Загадка выпадающих списков

С выпадающими списками какая-то хрень: все стремятся внутри них объяснить, что в них нужно что-то выбрать. На кнопках никто не пишет «нажмите кнопку». В полях ввода никто не пишет «впишите имя». Но какого-то чёрта по всему интернету встречается эта лажа, когда, например, написано «Страна» и рядом выпадайка, в которой написано «Выберите страну».

Пользователи: «Знаем, как работает выпадайка, видали. Не лохи летят».

Промо-микс: Соник-алгебра

Первый пситрансовый промо-микс:

Промо-микс: Соник-алгебра

В миксе я собрал несколько фулоновых по форме, но прогрессивно-атмосферных по содержанию треков разных лет (2004—2009). Такое мне бы не пришло в голову играть в клубе, это транс больше для ушей, чем для ног.

Ссылка на Промодиджей — вот она.

Урлопарсер и урлогенератор в Эгее

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

Раньше как было: все урлы были прописаны в файле .htaccess в виде инструкций мод_реврайта. Даже не буду показывать, на это было больно смотреть. Помимо, собственно, зависимости от мод_реврайта это создавало ещё кучу неудобств. Например, добавление новой страницы означало изменение хтакцесса. Поскольку у меня было автообновление, то движку приходилось править собственный хтакцесс, из-за чего к нему нужен был доступ на запись.

Теперь урлы разбирает сам движок; если реврайта нет, то в урле появляется ?go=, а остальная часть не меняется. Поэтому движку, во-первых, не нужен мод_реврайт, а во-вторых не нужно ничего менять в хтакцессе при добавлении новых страниц. Тут выяснилась приятная деталь: оказывается, мод_реврайт был единственным, что привязывало движок к Апачу; Эгея прекрасно работает и на nginx, и на lighttpd (на русском эти названия непередаваемы).

Разбор урла заключается в том, что любой урл преобразуется в название функции-обработчика, называемой candy (режим или служба в моей старой терминологии; сейчас ещё появились аджакс-обработчики как отдельный институт) и массив её параметров. Например, урл этой заметки /2011/04/25/1/ преобразуется вот во что:

$candy = 'e2m_note'

$parameters = array (
  'year' = '2011',
  'month' = '04',
  'day' = '25',
  'day-number' = '1',
)

Дальше специальный фильтр проверяет, залогинен ли пользователь, а если нет, то можно ли ему выполнять эту candy (смотреть на заметку можно всем, а вот редактировать — только мне, вот смотрите). Если можно, то e2m_note () вызывается для генерации контента страницы с массивом $parameters в качестве параметра. Сама она не интересуется урлом и просто собирает заметку по этим параметрам.

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

e2_compose_url ('e2m_tag', array ('tag-urlname' => $tagrec['URLName']))

На самом деле это означает «сгенерировать урл, переход по которому вызывал бы e2m_tag (array (’tag-urlname’ => $tagrec[’URLName’]))».

Итого, профит: независимость от мод_реврайта, Апача; гибкость в настройке урлов, независимость урлов от кода, который их обрабатывает; более высокая пуленепробиваемость кода. Когда-нибудь в следующей серии расскажу про шаблонизатор.

Рим

Наконец-то я дописал рассказ о Риме и несколько переделал главную, стало нарядно.

Хаус

Все нормальные ребята знают, что слово «хаус» пишется с буквой „с“ на конце: «Доктор Хаус диагностировал передозировку текхауса у посетителя „Кофе-хауса“». К сожалению, какая-то неведомая сила (тупость?) заставляет многих людей, включая авторов логотипа «Кофе-хауса», передавать букву s, которая читается в данном случае как [s], русской „з“.

Антон Шеин прислал сенсационное фото: «Кофе-хаус» в чеках пишет себя через „с“:

Кофе Хаус Эспрессо и Капучино Бар

Правда, после слов «кофе-хаус» идёт Бессмысленность и Слова Набор. В неравной борьбе русский язык уступил маркетологам и юристами. Тем, кто разучился составлять из слов предложения, подсказываю: по-русски будет «Эспрессо- и капучино-бар „Кофе-хаус“» или лучше «Бар эспрессо и капучино „Кофе-хаус“».

Ну, про дефис-то я вообще молчу.

Фейстайм

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

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

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

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

Подчёркивание в логотипах

Известно, что логотип должен быть ссылкой на главную страницу сайта. Не менее известно и то, что текстовые ссылки надо подчёркивать. Это значит, что в логотипах с текстом текст должен уметь подчёркиваться. Уже при придумывании логотипа нужно это учитывать, показывая его в двух вариантах (в простом и ссылкой). А некоторые логотипы должны уметь даже краситься в синий цвет:

Подчёркивание в логотипах
Ранее Ctrl + ↓