[LJ2ME] Подписка на комментарии

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

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

У кого-нибудь есть предложения по этому вопросу?

15 комментариев

Упячка

Упячка (25.82КиБ)

DiBR обнаружил упячку в IKEA! Если вы не в курсе что такое «упячка», то можно, например, начать знакомство со статьи «Упячка и семантическая смерть».

Судя по всему, это чья-то шутка. Я посмотрел статью «Правила чтения в шведском языке» (файл Word, 16 килобайт) Ирины Кемайкиной, слово «Uppäcka» должно читать примерно как «Ыппэкка», где двойные «п» и «к» обозначают долгий звук.

10 комментариев

02.12.2007

Рабочий стол Windows с иконками: Компьютер, Сеть, Корзина, AIMP2, Opera 9, Личник, WebMoney Keeper, Skype; в панели задач открыты Gmail, Firefox, Microsoft Word; время 12:31.
Этот скриншот я делал для проекта «Скринштов.Нет», где выкладывались скриншоты рабочих столов пользователей интернета

Оставить комментарий

Ошибка 80108351 в PSP

Если у вас возникает внутренняя ошибка 80108351 (internal error 80108351) при попытке установить PTF-тему в PSP, сделайте так (рецепт для custom-прошивок):

  • Отключаем плагин IR Shell (если он есть)
  • Вынимаем диск из UMD-дисковода (если он там есть)
  • в Recovery выбираем Advanced -> Format flash1 and reset settings
  • восстанавливаем стандартную конфигурацию PSP
    У меня сработало. Наконец-то могу поставить что-то другое, кроме стандартного оформления. Рецент был найден на форуме PSPx.ru.

Оставить комментарий

ЖЖ от 2007-12-02 22:07:00

Стоило уйти из компании, как её внутренний блог стал филиалом ru_php, где никто не понимает принципов работы PHP и объявляет расхождение собственной теории с практикой «странным поведением», давным-давно описанное в документации, но найденное какими-то извращёнными путями без её чтения, приравнивается к открытию, блуждание в трёх соснах из-за неспособности сделать вывод из двух предпосылок выдаётся за рассуждения и исследования, а пространные портянки надёрганные из говнопостов, подкрепляющие собственные теории о том, в чём нет понимания выдаются за страницы Библии.

Это, конечно же, моё частное мнение.

3 комментария

Custom tags в Internet Explorer

Утверждаю и буду продолжать утверждать, что Internet Explorer — самый недооценённый браузер века интернета, а все более поздние идеи — суть калька технологий, которые в нём уже есть. Ещё одна технология, с которой я познакомился в году 1998. Тогда (впрочем, как и многие сейчас) в качестве «растяжек» для ограничения минимальной ширины контента, использовали так называемый «нуль-gif» — прозрачную GIF-картинку 1x1 пикселей, которая вставлялась внутрь контейнера. Картинке выставлялась нужна ширина и высота, таким образом контейнер не мог «схлопнуться».

Способ настолько популярен, что некоторые веб-серверы, например «nginx» (в модуле http_empty_gif) или 0W (директива EMPTY) умеют встроенные средства, чтобы её генерировать, причём 0W умеет даже менять её цвет.

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

Custom tag — технология в Internet Explorer, позволяющая (в определённых пределах) «придумывать» свои теги. Что-то похожее есть сейчас в браузере «Опера» — можно использовать любое сочетание букв как тег, задав ему произвольный стиль, это хороший ход, потому что какую-то часть тегов можно описать в виде CSS-файла, не заморачиваясь над встроенной обработкой. Скорее всего, это было следствием поддержки «Оперой» WAP-сайтов (кстати, если вы не знали, то попробуйте — «Опера» отображает WAP-сайты!).

В Internet Explorer такой свободы нет, custom tag «работает» только в определённом пространстве имён, но есть и свои, очень существенные плюсы. Если вы не знаете, что такое пространство имён, не расстраивайтесь — на понимании сути это никак не сказывается. В следующем примере префикс «b:», с которого начинается тег и есть «пространство имён», а «xmlns:b» — его идентификатор.

Итак, в те далёкие времена я делал «растяжки» через специально придуманный custom tag «spacer», с появлением в 1999-м году IE 5 и expression в нём (специальные CSS-свойства, позволяющие использовать JavaScript внутри CSS) это стало делать ещё удобнее.

<html xmlns:b="/">
<style type="text/css">
b\:spacer
{
    display: inline-block;
    width: expression(this.width+'px');
    height: expression(this.height+'px');
}
</style>

Слово<b:spacer width="200" height="1"></b:spacer>Слово
</html>

В примере задан тег «spacer» в пространстве имён «b» (поэтому он используется с префиксом «b:», custom tags только так и работают). Я использовал expression в CSS, чтобы свойства новоявленного тега попадали в CSS. В «Опере» такой фокус невыполним, к сожалению, хотя свойство «attr» вполне подошло бы для такой цели, но он работает только с атрибутом «content».

В тех же рамках можно усложнить поведение — добавить значения по умолчанию, новые атрибуты, можно назвать тег для экономии «b:s» , а атрибуты — «w» и «h».

6 комментариев

DLL попадают в ад, а SO — в рай

Когда я установил Windows XP (6.93КиБ)

На блоге «Дурдом 2.0» автор критикует замшелую точку зрения, согласно которой, Windows приходится переставлять каждые пару месяцев. И правда — у меня Windows XP, на компьютере за котором я сейчас сижу, установлен с первого мая 2004-го года, т. е. 3.5 года назад! Это при том гигантском количестве софта, который я на него поставил (большая часть из которого — кривой мусор). При этом uptime — 5 дней, 12 часов, после последнего случайного отключения.

12 комментариев

ЖЖ попал в СУП

Многие уже знают, что российская компания «СУП» купила LiveJournal. Читать российские «мы все умрём» на эту тему забавно, но куда забавнее читать то, что пишут на эту тему американцы. Если уж мы до такой степени не доверяем сами себе, то представьте как они нам недоверяют:

  • «So does this mean our journals and communities are going to be deleted» («Значит ли это, что все наши журналы и сообщества будут удалены»).
    — «YOU SOLD US TO THE FUCKING RUSSIANS?! Hello, waves and waves of spam attacks!» («Вы продали нас долбанным русским?? Здравствуйте новые и новые волны атак спама!»).
    — «Call me paranoid, but I don’t want any Russian Nigerians knocking at my email address» («Назовите меня пораноиком, но я не хочу, что бы какие-то русские принцы Нигерии стучались в мой почтовый ящик»).
    — «omg that can’t be good» («Боже мой, в этом не может быть ничего хорошего»).
    — «THIS IS SO BAD. BAD BAD BAD» («Это очень плохо. Плохо, плохо, плохо»).
    Ну и так далее. Сейчас Смирнов мне написал, что они в комментариях ещё и Чернобыль нам припомнили.

Кстати, узнал оттуда новое для меня выражение «tl;dr» («too long; didn’t read»), вариант нашего «ниасилил».

20 комментариев

Spesta — винтажная система статистики

Выкинул гугловский «Урчин» и поставил смирновскую «Спесту». Все эти Flash-графики у «Гугла» — это очень красиво, но мне не нравится смотреть по нескольку минут на процесс загрузки, а время дорого. Тем более, что большинство инструментов, которые предоставляет эта статистика, мне не нужны, я туда даже не заглядываю.

Четыре совета, если будете ставить «Спесту».

Во-первых, Дима писал её в бородатые времена, так что для работы на нормальном хостинге она требует влюченного register_globals и выключенного error_reporting. В Apache, в файле .htaccess это делается так:

php_flag error_reporting off
php_flag register_globals on

Во-вторых, откройте файл index.php, найдите строку 162 (там выводится значение ТИЦ, в этой строке должно быть слово cycounter), после этой строки добавьте:

echo "<b>Google</b>:<br /><br />
<script language='JavaScript'
src='http://www.mipagerank.com/mipagerank.php/$hosturl?d=2'></script>";

Теперь вы сможете видеть ещё и PageRank вашего сайта.

Совет номер три. Откройте counter.php, найдите строку 150, там определяется IP человека, который к вам зашёл. Определяется несколько… некорректно, да и считает всех с одного IP за одного человека. Чтобы хоть как-то поправить это положение, впишите туда следующее, вместо кода определения IP-адреса:

$ip = $_SERVER['REMOTE_ADDR'];
$fields = array
(
    'HTTP_X_FORWARDED_FOR', 'CLIENT_IP', 'HTTP_FROM', 'HTTP_CLIENT_IP', 'HTTP_CLIENTIP',
    'HTTP_CLIENT', 'HTTP_X_FORWARDED', 'HTTP_X_DELEGATE_REMOTE_HOST', 'HTTP_SP_HOST',
);

foreach ($fields as $field)
if (isset($_ENV[$field]))
{
    $ip .= ' '.$_ENV[$field];
    break;
}

$fields = array
(
        'HTTP_USER_AGENT', 'HTTP_ACCEPT_LANGUAGE', 'HTTP_ACCEPT_CHARSET',
        'HTTP_ACCEPT_ENCODING', 'HTTP_TE', 'HTTP_UA_CPU', 'HTTP_UA_OS', 'HTTP_UA_COLOR',
        'HTTP_UA_PIXELS', 'HTTP_UA_VOICE',
);

$uniq = '';
foreach ($fields as $field)
if (isset($_SERVER[$field])) $uniq .= '~'.$_SERVER[$field];

$ip .= ' ('.md5($uniq).')';

Четвёртый совет — поставьте flock. Нет, не настройку в конфигурационном файле, она ни на что не влияет. Если умеете — поставьте вызов flock после каждого fopen. Если не умеете — ну оставьте как есть.

16 комментариев

Сирены «Титана»

Моё прежнее рабочее место (44.14КиБ)

На фотографии — моё предыдущее рабочее место, где я провёл три с лишним года на посту технического директора. В понедельник буду обживать новые место, в Москве, там уже купили какого-то четырёхпроцессорного монстра (!) мне в качестве рабочей машины. Так что, вероятно, кратковременно пропаду из интернета, не до того будет.

10 комментариев

Новую собаку старым трюкам

Егор Куновский описал способ при помощи которого можно научить Google понимать переходы с Rambler, Mail.ru и других российских поисковых машин. Не знаю, действительно ли Google знает только Яндекс, но лучше сделать это более аккуратным способом. У меня, до того как я убрал Google Analytics было так:

_uacct = "UA-ВАШНОМЕ-Р";
_uOsr.push('mail.ru','rambler.ru','webalta','aport','blogs.yandex.ru')
_uOkw.push('q','words', 'q', 'r', 'text')
urchinTracker();

Первой строчкой указываются адреса поисковых сайтов, второй — параметр в котором указывается поисковый запрос.

2 комментария

PHP2EXE

Решил посмотреть что у нас на старую добрую тему php2exe — т. е. PHP-компиляторов. В последнее время в разговорах всё чаще мелькало упоминание RoadSend PHP Compiler, вот я его решил скачать и скомпилировать свой «Photoshop’s Crap Remover». Эта програмка была написана в 2002-м году для удаления из файлов JPEG лишней информации. Фотошоп тогда очень активно её туда записывал — вплоть до preview, так что было актуально, но и сейчас, бывает, программа пригождается.

Вот этот компилятор я и скачал. Версия 2.9.0, бета. Первое, что я выяснил, когда нашёл где включается режим вывода лога компиляции, инсталлировать надо было туда, куда программа предлагала по умолчанию. Путь «Program Files» вызывает проблемы из-за пробела посередине. Следующая проблема — библиотека для работы с регулярными выражениями в формате Perl породила массу ошибок. Я решил это легко — у меня в программе одно, незначащее регулярное выражение, т. е. я его просто убрал.

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

Вывод: возможно, это огрехи бета-версии, но инструмент нерабочий.

8 комментариев

«Спеста» — винтажная система статистики, часть II.

Ещё несколько советов по работе со «Спестой», предыдущая пачка — в первой части статьи.

Совет пять. Судя по коду, «Спеста» иногда способна пропустить какую-то часть хитов (кстати, у «Spesta 2» тот же недостаток). Для слабопосещаемого сайта это не слишком важно, для сильнонагруженных станет серьёзной проблемой. Для того, чтобы поправить ситуацию, открываем файл counter.php, ищем строки, содержащие «SP_fr ($COUNT_FILE)» и «SP_fw ($COUNT_FILE, $content)». Заменяем их на следующие куски кода (первую найденную строку — на первый, вторую — на второй):

$fp = fopen($COUNT_FILE, 'a+');
flock($fp, LOCK_EX);
fseek($fp, 0);
$conts = fread($fp, filesize($COUNT_FILE));
ftruncate($fp, 0);
fseek($fp, 0);
fwrite($fp, $content);
fclose($fp);

Совет номер шесть. Открываем все PHP-файлы последовательно и в каждый, в начало PHP-кода ставим нижеприведённый кусок. Файл mailto.php удаляем.

$s_addurl = "";

9 комментариев

Ваш собственный OpenID

Многие думают, что OpenID — это что-то невероятно сложное в использовании. Вовсе нет. Давайте я покажу простой и полезный, для тех, у кого есть собственный сайт, пример использования OpenID. Как многие знают, для того, чтобы авторизоваться на чужом сайте, нужно иметь аккаунт на каком-нибудь сервере OpenID — ЖЖ, Li.Ru, MoiKrug, Ya.Ru и т. п. Если у вас есть логин в одном из этих сервисов, то у вас есть OpenID.

Что делать, если вы хотите подписываться у меня в комментариях не как «user.livejournal.com», а как «myblog.sample.com»? Наверное вам нужно будет установить себе на сайте собственный сервер OpenID? Правильно? Неправильно!

В OpenID есть интересная возможность — делегирование. Вы можете попросить другой OpenID-сервер выполнять функции OpenID на вашем сайте, достаточно иметь на этом другом сервере аккаунт. Для того, чтобы использовать эту возможность, нужно просто вставить две строки между открывающим и закрывающим тегом HEAD на первой странице вашего сайта. В одной строке нужно указать ваш OpenID (т. е. сам идентификатор) на другом сервере, во второй — URL используемого сервера.

Вот как это выглядит для сервера myopenid.com (кстати, очень рекомендую его к использованию):

<link rel="openid.server" href="http://www.myopenid.com/server/" />
<link rel="openid.delegate" href="http://ваш_ник.myopenid.com/" />

А вот так это будет выглядеть для Ya.Ru:

<link rel="openid.server" href="http://openid.yandex.ru/server.xml" />
<link rel="openid.delegate" href="http://openid.yandex.ru/users/ваш_ник" />

Так, для Живого Журнала:

<link rel="openid.server" href="http://www.livejournal.com/openid/server.bml" />
<link rel="openid.delegate" href="http://ваш_ник.livejournal.com" />

Для Liveinternet.ru:

<link rel="openid.server" href="http://www.liveinternet.ru/openid.php" />
<link rel="openid.delegate" href="http://http://www.liveinternet.ru/users/ваш_ник" />

Для того, чтобы изготовить эту строку для каких-то других сервисов пользуйтесь универсальным правилом: обычно значение поля «openid.delegate» совпадает с вашей персональной страницей на этом сервисе, а значение для «openid.server» можно взять из исходного кода той же страницы, там должен быть аналогичный тег LINK.

95 комментариев

ЖЖ от 2007-12-07 21:12:00

Читаю состав лекарства «Сульфацил-натрия капли глазные 20%» (два маааленьких тюбика по 1,3 мл). В составе последней строчкой: воды очищенной — до 1 л.

Нанотехнологии уже среди нас!

7 комментариев

А город подумал: ученья идут

На все сайты в домене exler.ru уже несколько дней идёт мощнейшая DDoS-атака. Поэтому сайт может иногда «пропадать». Для тех кто не знает, поясню. DoS-атака — это атака «отказ в обслуживании» («Denial of Service»), когда атакуемую машину заваливают запросами так, что она не справляется с загрузкой или каким-то иным способом добиваются недоступности ресурса (например, атака, при помощи которой добиваются ложного срабатывания системы защиты).

DDoS — это «Distributed Denial of Service» («распределённая» DoS-атака), когда атакующих машим несколько. Атака, по всей видимости, идёт с зарубежный «зомби»-сетей.

Сейчас админы уже успешно справились с отражением атаки, так что если и будут «пропадания», то очень кратковременные.

1 комментарий

Как бы ноги не ошпарить

Новое рабочее место (49.76КиБ)

Я в Москве, это моё новое рабочее место, пока сфотографировать ничего не могу, но от нового компьютера писаю кипятком.

Кстати, у меня наконец-то работают комментарии!

21 комментарий

Easter Ogg

Из HTML5 официально исключены форматы Ogg Vorbis и Ogg Theora (предназначенные для использования проигрывания мультимедия в тегах AUDIO и VIDEO). Против формата выступали фирмы Nokia и Apple.

Напомню корень проблемы: в HTML есть стредство для внедрения рисунков и определены форматы (GIF, PNG, JPEG), которые гарантированно будут показываться во всех графических браузерах, но нет ничего подобного для видео и аудио. Нет единых форматов и средств управления проигрыванием из браузера через JavaScript. С появлением HTML5 ситуация должна быть исправлена появлением тегов VIDEO и AUDIO и введением стандартов кодеков, которые должны поддерживаться всеми браузерами.

Возможно, вместо форматов Ogg, будут использованы H.264 (MPEG-4) для видео и AAC для звука. Аргументы — тот же H.264 выбирается из-за аппаратной поддержки, что очень критично на мобильных устройствах, тогда как для Ogg придётся писать довольно тяжеловестный по размеру кодек, кроме того, есть опасения по поводу патентов на эти форматы, опасаются, что часть формата может быть покрыта неизвестными патентами.

Так же ходят слухи, что основной причиной того, что форматы Ogg исключили, является то, что они не поддерживают DRM (средства для защиты авторских прав), это соображение возникло, большей частью из-за того, что противником форматов Ogg являются именно Nokia и Apple.

9 комментариев

₥₳₪€¥

Отличную расшифровку DRM подсмотрел — «₫¥₲¥₮₳£ R€$₮r¥₡₮¥¤₦₴ ₥₳₪₳₲€₥€₦₮» (искажённое «Digital Rights Management», составленное из знаков валют) . Напомню, что DRM — это технические средства для защиты авторских прав.

Оставить комментарий

Мои ошибки при ведении блога

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

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

Второе. Я убирал заголовки, мне они показались ненужным элементом. Заголовки оказались нужны для RSS, писем с сайта и обособления записей в блоге друг от друга. Благодаря заголовкам пользователь может оценить — тратить ли ему время на чтение текста или пролистать дальше.

Третья. Мне хотелось сделать всё стильно, поэтому я назвал элементы меню единообразно — «пишу», «читаю», «ищу» и так далее. Единообразно, но непонятно, пользователи просто не знали куда идти. «Блог» и «поиск» скучно, но более понятно. Навигация пока ещё моя головная боль — в TODO большой список доделок, но пока на это нет времени, хотя кое-что медленно меняется в лучшую сторону.

Что я не отношу к ошибкам — это отключение комментариев и существующая схема RSS/OpenID. Комментарии я отключал, думаю, по той же причине, по которой их отключал когда-то Дима, просто устал. А схема авторизации через OpenID и подписки через RSS мне кажется верной, туда должно всё и двигаться. Не сайты, которые похожи на швейцарский нож, а поставщики контента с интерфейсом для их поглощения, плюс управление переходами информации с одного сайта в другой, OpenID и свободный экспорт на основе RSS — из этой оперы.

Это уже Web 3.0, новый уровень всемирной паутины, когда интернет работает не на уровне HTTP, а на уровне «сайт» и представляет собой свободноинтегрированные друг в друга сайты.

34 комментария

ЖЖ от 2007-12-15 20:54:00

Вот и я понаехал в нерезиновую! В этой связи вопрос — нет ли у кого-нибудь знакомых, сдающих одно- или двухкомнатную квартиру в Москве недеко (минут 10 пешком — вполне устроит) от какой-нибудь станции метро?

15 комментариев

MSIE6 (MuSt dIE 6.0)

Мне очень нравится проект «UpgradeBrowser», это очень разумный способ снижения доли устаревших Internet Explorer в интернете. Смысл в следующем. Вы устанавливаете у себя на сайте специальный JavaScript-код перед закрывающим тегом BODY:

<!--[if lte IE 6]>
<script type="text/javascript" src="http://upgradebrowser.org/ie6fuck.js"></script>
<![endif]-->

Так же код ie6fuck.js можно скачать себе и вызывать локально. Пользователи Internet Explorer 6.0 и ниже увидят сверху сайта следующую симпатичную надпись:

Через ваш устаревший и небезопасный браузер к вам могут попасть вирусы с сайтов. Обновите его!

Ссылка «обновите его» ведёт на страницу, где рассказывается о последних версиях Internet Explorer, FireFox и Opera. Чисто психологически проще поставить новую версию программы, чем переходить на её аналоги, так что на этой странице очень разумно первым упоминается Internet Explorer 7.0.

Что так же немаловажно, эту панельку можно закрыть (в оригинале справа есть крестик) и она не будет появляться ещё 30 дней. Кстати, она очень напоминает стандартную панель Internet Explorer, так что есть шанс, что многие пользователя подумают, что обновиться предлагает сам браузер.

Я код себе уже поставил, присоединяйтесь к проекту.

24 комментария

ЖЖ от 2007-12-17 12:38:00

Вчера ещё одна PSP (у marat_n) обрела свободу, на этот раз через Pandora's Battery. _dofin_, diiina, ну вы поняли, да? :)

8 комментариев

Блогосфера на gopher'e — все друг друга знают

Помните я про gopher писал? OMG, на этом протоколе есть два блога: gopher://hal3000.cx/1/Phlog и gopher://hactar.net/1/blog. Мне их даже посмотреть нечем — на новой машине я поставил «Оперу», есть Internet Explorer, они gopher не поддерживают. Спасибо Ломакину Илье за ссылку.

6 комментариев

JSSS, JavaScript-based Style Sheets

В своё время, когда браузер фирмы Netscape был лидером на рынке, в нём была поддержка интересной, на мой взгляд, технологии, которая уже при рождении была незаслуженно забыта — «JavaScript-based Style Sheets» (JSSS). Сейчас эту технологию, насколько я знаю, не поддерживает ни один из существующих браузеров, а в те времена я использовал её, чтобы разделить стили для Netscape и Internet Explorer, а сейчас это представляет интерес не больше, чем Gopher.

Итак, в чём суть? Суть та же самая, что и в CSS, разница лишь в представлении. Несколько примеров, думаю, достаточно наглядно покажут суть:

<style type="text/javascript"><!--
    // H1 { color: blue }
    tags.H1.color = "blue";

    // BODY { color: black; background: white }
    with(tags.BODY) {
         color = "black";
        bgColor = "white";
     }

    // H1 EM .reddish { color: red }
    contextual(tags.H1, tags.EM, classes.reddish.all).color = "red";

    /* UL  LI { color: red }
        UL UL LI { color: blue } */
    with(tags) {
         contextual(UL, LI).color = "red";
         contextual(UL, UL, LI).color = "blue";
     }

     // P:first-line { font-style: small-caps }
     tags.P.firstLine.fontStyle = "small-caps";

     // P:first-letter { font-size: 200% }
     tags.P.firstLetter.fontSize *= 2; // 200%
--></style>

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

<style type="text/javascript"><!--
    tags.IMG.width = .50 * document.width;

    evaluate_style() {
        if (visual.colorDepth < 2) {
             bgColor = "white";
             color = "blue";
        } else {  
             bgColor = "black";
             color = "white";
        }
    }

   tag.BODY.apply = evaluate_style()
   tag.ids.headertable.apply = evaluate_style()
--></style>

2 комментария

JavaScript benchmark: Opera 9.50b (build 9694) versus Safari 3.0.4b (build 523.12.9)

Интресно было сравнить скорость JavaScript в Opera и Safari, причём не скорость обращения к DOM или тому подобное, а чистую примитивную математику — циклы, ветвления, операции сравнения, арифметику и т. д. Для этой цели я выбрал свой компилятор языка Brainf*ck в JavaScript и запустил на нём «программу вычисления числа „Пи“» на Brainf*ck.

Результаты:

  • Safari 3.0.4 — 1579 мс.
  • Opera 9.50— 2078 мс.
  • Internet Explorer 6.0SP2 — 2766 мс.
  • Netscape Navigator 9.0.0.5 — 14313 мс.
  • FireFox 2.0.0.11 — 14578 мс.
    Я не очень понимаю почему таких плохие результаты у браузеров на основе Gecko, может, они не используют возможности многопроцессорный машин?

4 комментария

Курсы английского языка от «Британики»

Уже все успели оценить проект «Плохие стихи», рекламирующие курсы английского языка «Британика»? (Осторожно — говорят, трафика потребляет немало). На мониторах 16:9 (и, как следствие, на многих ноутбуках) посмотреть его просто так не получится — отказывается работать. По этому поводу вот вам небольшое колдунство в помощь, всё, что надо сделать — выставить ширину «флеша» в 80%. Вводим в строку браузера, после загрузки сайта:

javascript:void(document.getElementsByTagName('OBJECT')[0].width='80%')

После чего наслаждаемся содержимым.

17 комментариев

Ню-рейв-котятки

Получил большое удовольствие от чтения очень небольшого «славаря масковских модников». «Гопосексуал», «зелёный чай», «котятки». Галкину, которому и спасибо за ссылку, понравились два первых термина, а от меня виртуальный приз получают «котятки», очень характерное слово, буду использовать.

Молодые люди и девушки, в основном, абитуриенты и студенты (хотя попадаются десятиклассницы), которые ходят на вечеринки Idle Conversation и Thriller, одеваются согласно ню-рейверскому дресс-коду, зависают на сайте lookatme.ru и пользуются приведенным здесь вокабуляром. К. — проверенная аудитория, не чета «модному быдлу» (см.). Есть также продвинутая версия К. — тру котятки.

Если не знаете, кто такие ню-рейверы, то на сайте Be-In есть статья «Ню-рейв?» на эту тему. Небольшая цитата оттуда:

Ню-рейверы (35.33КиБ)

Ню-рейверов снова волнует одежда безумных расцветок, пошитая из синтетики в её крайних проявлениях. Барахолка на Удельной примерно с прошлого лета может, как в старину, предоставить наряды для эсид-шапито: салатовые платья, безразмерные пиджаки с подплечиками и на одной пуговице, футболки с зелёно-розовыми микки-маусами или — о ужас! — «экстезийными» смайлами. Попадаются и совершенно катастрофические штуки вроде трудноописуемого ядовито-голубого на первый взгляд купальника, который на деле — цирковое трико. Вне маргинальных секондов в Питере по интересующей теме пока можно найти лишь аксессуары — пластиковые анилиновые пеналы, например, или длинные бусы. «Новый старый» teen spirit, как водится подхватили уже европейские дизайнеры в весенних коллекциях — Жан-Поль Готье, в частности. В любом случае, ню-рейверский тренд уже ясен — фриковый китч пополам с оголтелым урбанизмом, что-то между новой версией порно-шика и сложной эстетикой «гуляй, рванина».

11 комментариев

ТИЦ и ВИЦ

Интересная статья — «Невидимый вИЦ». Вкратце — у Яндекса, кроме ТИЦ есть второй параметр — ВИЦ (взвешенный индекс цитирования), померить его нельзя, а на результат поиска он влияет ничуть не меньше.

вИЦ (взвешенный индекс цитирования) — показатель авторитетности страницы, аналог гуглевского PageRank с точностью до деталей реализации алгоритма расчета. [..]

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

10 комментариев

На улице верстальщиков праздник

Выдержка из статьи «IE 8: On the Path to Web Standards Compliance — ACID 2 Test Pass Complete»:

The IE dev team checked in a bunch of code that included several new features implemented in the core rendering engine that enable IE to pass the ACID 2 test!

По-русски — разрабатываемый IE8 проходит тест ACID2. Для тех, кто не знает — это достаточно навороченный тест, который позволяет определить насколько хорошо браузер поддерживает стандарты (в частности — HTML 4.01 и CSS 2). Например, FireFox 2 до сих пор ACID2 не проходит. Это очень значимое событие. Если Internet Explorer 8.0 после своего выхода вытеснит более отсталые версии этого браузера, то браузеров, не поддерживающих стандарты в достаточной мере в интернете не останется и верстальщики наконец-то вздохнут спокойно.

В исходной статье есть даже видео, где можно наглядно увидеть прогресс в отображении ACID2. Бету обещают в первой половине 2008 года.

19 комментариев

ACID3 pre

Что интересно — тест ACID3 готовится к выпуску. Помимо поддержки CSS он проверяет так же и DOM. Тест пока не готов (пользоваться им нельзя, делать выводы — тоже), но лучше всего его пока проходит «Опера».

2 комментария

Самый высокий из самых маленьких не выше самого низкого из самых высоких

В последнее время меня в комментариях всё чаще толкают переехать на собственный домен. Зачем, о други? Слишком похоже на кустарную домашнюю страничку? Вот великий (не шучу) Леонид Каганов, который сегодня встретился нам с друзьями в метро, хостится на aha.ru. При том, что у него не сайт, а лабиринт, его посещают вполне приличное количество народу и, вроде, никто не жалуется на «кустарное» имя домена lleo.aha.ru.

Смирнов, ты спрашивал видел ли я Ленина. Я Каганова видел!

12 комментариев

ЖЖ от 2007-12-21 14:51:00

Гм… Похоже, я сегодня порю редкостную чушь, даже Смирнов спросил с кем разговаривает.

6 комментариев

Быстродействие JavaScript в браузерах

И ещё раз к теме быстродействия JavaScript. Jeff Atwood произвёл ряд JavaScript-тестов на разных браузерах. В результате получилась любопытнейшая картинка. Расшифровка тестов:

  • 3d — тест на основе библиотеки работы с 3D, написанной на JavaScript (испытывается —
  • быстродействие массивов и чисел с плавающей точкой)
  • access — массивы, свойства объектов, доступ к переменным
  • bitops — битовые операции на целых числах
  • controlflow — циклы, рекурсия, условия
  • crypto — криптоалгоритмы (AES, MD5, SHA1)
  • date — производительность при работе с объектом «Date»
  • math — различные математические операции
  • regpexp — регулярные выражения
  • string — работа со строками
Гистограмма времени выполнения кода в браузерах: Opera 9.5 — 5.4 с, Safari 3.0.4 — 6.6 с, Explorer 7 — 21.2 с, Firefox 2 — 10.5 с.

Хуже все справился IE7, но, если не принимать во внимание операции для работы со строками, он обгонит FireFox, который сейчас занимает предпоследнее место. В комментариях есть тестирование FireFox 3 b2, вцелом он справляется на 23% лучше, чем вторая версия, но на некоторых тестах проигрывает.

11 комментариев

Robots.txt и Яндекс

Яндекс теперь поддерживает маски в robots.txt, т. е. символы «$» и «*» в «disallow» и «allow» (да, теперь ещё и «allow» поддерживается!). Например:

# запрещает '/cgi-bin/example.aspx' и '/cgi-bin/private/test.aspx'
User-agent: Yandex
Disallow: /cgi-bin/*.aspx
Disallow: /*private # запрещает не только '/private', но и '/cgi-bin/private
Disallow: /example$ # запрещает '/example', но не запрещает '/example.html'

Подробнее можно прочитать в соответствующем разделе помощи Яндекса.

Оставить комментарий

Новости о «Блоговаре»: живите долго

Сервер «Блоговара» не отвечает третий день — какая-то серьёзная аппаратная проблема, поддержка пишет «при подключении монитора на него выводится ошибка „No signal“, на Reset сервер не реагирует». «Елены» покупают новый сервер.

2 комментария

Имя Фиксина славься в веках!

На что только не наткнёшься в поисках квартиры в Москве:

Сдам бесплатно отличную комнату в двухкомнатной квартире одной девушке, желательно студентке. Метро Отрадное пешком. Тихий московский двор. Деньги не нужны. Нужна помощь в решении мужских проблем. Мне почти 50 лет, тактичен, неболтлив. Бываю в квартире 1-2 раза в неделю, так что фактически предлагается отдельная квартира. Подробности на сайтеhttp://komnata-laska.narod.ru/ Пишите на почту sansan1966@pochta.ru

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

Оставить комментарий

Nokia E90

Думал, что следующий телефон, который я куплю, будет Nokia E90. Повертел в руках, детально посмотрел, примерился. Ужасное, нереальное гавно, хуже даже, чем N93i. Огромный, тормозной. Если что-то покупать из Nokia в ближайшее время, то только N95 8Gb. Порадовали интернет-планшеты (N800, например). Только мне не нужен интернет-планшет, мне нужно, чтобы оно звонило.

Ждать iPhone 2?

40 комментариев

Поправки к закону о защите прав потребителей

С 12 декабря вступили в силу поправки в Федеральный закон «О защите прав потребителей».

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

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

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

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

Остальное — в статье «Продавцам теперь не отвертеться» с сайта «Век».

10 комментариев

Самизнаете что самизнаетекого

А что, на групповом снимке 2007-го года студии Артемия Лебедева никто не заметил любимое слово Самизнаетекого? Что-то не вижу, чтобы кто-то уже написал про это.

13 комментариев

Космонавт на кафедральном соборе в Саламанке

Космонавт на кафедральном соборе в Саламанке (58.01КиБ)

Из статьи «Salamanca, broasca si cosmonautul…» (текст на румынском):

In ceea ce priveste cosmonautul, legenda e si mai haioasa. Pe la mijlocul secolului trecut s-a lucrat intens la renovarea decoratiunilor exterioare ale catedralei. Un muncitor poznas, influentat probabil de programul spatial, a considerat ca ar fi interesant ca printre sfinti, ingeri, regi, si alte fiinte inutile, sa ascunda si un cosmonaut mititel.

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

Оставить комментарий

Конец вечноживого Netscape

Компания AOL наконец-то решила не играть больше в некромантов и «закопать стюардессу» (см. анекдот). Браузер Netscape наконец-то перестанет существовать, патчи, закрывающие возможные дыры будут выходить ещё до 1 февраля 2008-го года, после чего всем пользователям рекомендуется перейти на FireFox, с которым Netscape роднит общее ядро от Mozilla. Ещё одной головной болью у верстальщиков станет меньше.

9 комментариев

2007 → 2008

Всех с Новым годом!

6 комментариев

← сюда туда →