Евгений Степанищев

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

Как избавляться от прилипал-торговцев на улице

Фразу из небольшого рассказа с форума Алекса Экслера надо заучить:

В меня как-то такой орел вцепился на улице, «мы дарим вам замечательный шведский светодиодный фонарь»… Я изрядно развлекся. Фонарь взял, сказал спасибо, я принимаю подарок, сунул его в сумку и пошел.

Он несется рядом, «но подождите, подарок в том, что он продается в три раза дешевле, чем в магазинах, я не успел рассказать вам все условия, предлагаемые нашей фирмой…» А я спокойно и радостно ему объясняю: «Договор дарения — реальная сделка, заключенная в момент ее исполнения. Вне зависимости от суммы, этот договор может быть заключен в устной форме, поскольку исполняется в момент заключения. Ваша фирма в Вашем лице сделал мне оферту, я ее акцептовал и принял подарок. Право собственности на передаваемую по договору вещь, если о ином не договаривались, или иное не предусмотрено законом, переходит в момент фактической передачи вещи. Т.е. фонарик — уже моя собственность, мне больше ничего не надо от его фирмы и от него лично. Я очень благодарен. Ни о каких условиях договора не могло и речи идти, посколькудоговор дарения не может быть заключен под условием, о чем прямо указано в гражданском кодексе. Если он считает, что я незаконно отнял у него вещь, мы можем зайти по дороге в милицию, и он составит там заявление с указанием всех подробностей происшествия. Если милиция ничем ему не поможет, то его фирма сможет обратиться в суд с иском ко мне об истребовании фонарика…» и т.д

После 15 минут такого общения, когда мы дошли до моего офиса, я увидел, что парень ужу чуть не плачет. Стоимость-то с него точно бы удержали… Пожалел, отдал фонарь, порадовался счастью на его лице.
13 комментариев
9 сентября 2008 18:47

Комиксы: заяц ПЦ и его воображаемые друзья

ПЦ! (24.06КБ)

Продолжаю делиться комиксами, которые я люблю. У Линор Горалик есть отличнейший комикс «Заяц Пц и его воображаемые друзья: Щ, Ф, грелка и свиная отбивная с горошком». Рекомендую.
6 комментариев
9 сентября 2008 15:41

Microsoft взялась серьёзно за браузер: IE8

Microsoft серьёзно взялась за стандартизацию своего браузера. В блоге IE появилась статья, где рассказывается о дальнейших шагах по преобразованию браузера. Например, все расширения CSS будут теперь начинаться с префикса («-ms-»), как того требуют стандарты. Причём речь идёт не о нововведениях (IE7 уже поддерживает свойство «-ms-interpolation-mode» с префиксом), а о существующих свойствах. К примеру, «zoom» будет теперь называтся «-ms-zoom».

Хорошая новость: фильтры будут! только теперь они будут называться «-ms-filter» и выглядеть как обычное свойство, взятое в кавычки. Т.е. для указания прозрачности (загибайте пальцы) мы будем использовать: opacity (CSS3), -moz-opacity (старые FF), -khtml-opacity (старые Konqueror), filter (IE ниже 8) и -ms-filter (IE8 и выше).

Для сайтов, которые переделать невозможно (из-за объёма или запущенности), остаётся возможность использовать Compatibility View (режим обратной совместимости).
4 комментария
9 сентября 2008 14:54

PHP: compliler_halt_offset

Малоизвестная возможность PHP, появившаяся с версии 5.1 — аналог секции DOC из Perl. Позволяет создать специальную текстовую секцию в конце файла скрипта, откуда можно будет читать данные, например, туда можно поместить страницу помощи к программе или какие-то метаданные.

Секция начинается вызовом специальной конструкции __halt_compiler(), всё, что дальше этой строки интерпретатор не считывает и не выполняет. Смещение, по которому начинаются данные за конструкцией, доступно через константу __COMPILER_HALT_OFFSET__. Почему нельзя было сделать константу, указывающую на файловый ресурс (по аналогии с STDERR) для меня загадка.

Использовать можно, например, так:
echo file_get_contents(__FILE__, null, null, __COMPILER_HALT_OFFSET__);

// the end of the script execution
__halt_compiler();Hello, world!
На печать программа выведет строку «Hello, world!».
4 комментария
9 сентября 2008 14:43