технологическая снисходительность имеет в интернете две стороны. Она хороша, потому что именно благодаря ей мы имеем такое невероятное проникновении информационных каналов в нашей жизни, и такую простоту самовыражения. Она плоха, потому что плюсы её приобретены серьёзными усилиями веб-разработчиков, вынужденных предусматривать всевозможные ошибки «клиентов». Это, в свою очередь, ощутимо тормозит прогресс: сравните современные компьютерные игры и высшее достижение браузеров — скруглённые уголки
обиднее всего, что бизнес в этой ситуации ничего не может сделать для её улучшения. Убедить клиента обновиться практически невозможно, а отказаться от поддержки глюков тоже нельзя, не рискуя потерять больше трети дохода. Единственным выходом остаётся традиционное средство манипуляции — запугивание. Впрочем, тут приходится действовать осторожно, чтобы сведущие коллеги не подняли тебя на смех. Поэтому пугают обычно потерей денег и данных. Первые уже часто используются посредством компьютеров, а вторые в компах хранятся
конечно, нельзя сказать, что таким подходом paypal делает для веб-стандартов больше, чем кто бы то ни было, но всё равно это будет иметь очень, очень значимые положительные последствия
вообще многие продвинутые языки имеют готовые инструменты для работы с собственным синтаксисом, по сути позволяя программе разобрать даже собственный код, и еще раз его откомпилировать, например. Вершины тут, наверное, достиг лисп, но и в некоторых других аналогичные вещи работают неплохо.
давайте посмотрим на задачу создания шаблонизатора. Он должен взять шаблон, распарсить его, сделать подстановки и, возможно, некоторые другие примитивные действия. Ключевое слово здесь «распарсить». Зачем мучиться, создавая новый, если у нас уже есть готовый парсер, который работает с самим языком? Благо перл довольно гибкий, а в шестой своей версии так и невероятно гибкий. Берем этот парсер, и используем его для создания хорошо структурированных шаблонов. Примитивный пример:
template simple => sub {
html {
head {}
body {
p {'Hello, world wide web!'}
}
}
};
нет, я не говорю, что это идеал, но сама идея мне очень понравилась : )
когда хабр пал под мощью Чёрного Властелина из-за глупого XSS, я пожурил разработчиков за непрофессонализм, на что Мио ответил чем-то невнятным. Я понял его слова так, что эта дырка была случайной, а вообще они защищаются от такого рода атак. Ладно, может быть.
но сейчас сомнений уже нет, потому что по хабру разошёлся аналогичный «Хабра-Кадабра Вирус», распространяющийся теперь уже через личные сообщения — в них не эскейпится //onclick=. Ай, молодцы!
говорят, два переезда равны одному пожару. У меня с этим не так плохо, и даже в реальном мире я переезжаю достаточно легко. Что уж говорить о виртуальности : )
когда-то давно, лет десять назад, я начинал с традиционного mail.ru. Незатейливый адрес arttreg@mail.ru прослужил мне несколько лет, но при первой возможности я его заменил на atregoubenko@gmail.com.
гугл делает очень неплохие продукты. Недаром аякс в их веб-почте повел за собой нестройные ряды яваскриптеров в дванольное будущее. А уж интеграция с джаббером и сохранение истории чата на сервере наряду с почтой — просто гениальное решение. Однако, как бы команда gmail ни старалась, побить по скорости хорошие специализированные настольные приложения им не под силу. А интеграцию с ними они сделали не очень хорошо. Например, не рекомендуется проверять почту чаще, чем раз в 10 минут. И работа с IMAP у них реализована, мягко говоря, средненько, что я тоже ощутил на собственном опыте. Нет для меня полного счастья на гугле…
вообще-то сразу после приобретения домена arty.name мне захотелось иметь почту на нём. Настроить редирект с me@arty.name — небольшая проблема, однако потом общение всё равно продолжается уже между гугловыми логинами. Google Apps мог бы решить проблему, если бы давал возможность мигрировать на него почту и историю чатов, но нет, не сложилось и с ним.
из-за всех этих причин долгое время у меня было два почтовых адреса. Как ни странно, последней каплей стал выход imap у gmail. Познав малую толику прелестей нормального почтового протокола, я тут же захотел большего, и немедленно выпил завёл себе собственный почтовый сервер.
без геморроя, конечно же, не обошлось. Не буду распространяться о проблемах с пермиссиями, о кольцевых редиректах (хотелось сохранить жизнь обоим адресам), и своевременном костыле для моего сервера в опере. Но в итоге я добился всего, чего хотел: дома и на работе я использую почту из оперы, а для гостей и истории чатов остался веб-интерфейс.