рубрика web

Горизонтальное и вертикальное выравнивание в CSS

11.08.2013г. // Рубрики: web, Рецепты
css
Очередная закладка на перевод статьи от smashingmagazine на тему выравнивания контента по вертикали/горизонтали посредством CSS: http://habrahabr.ru/post/189696/.
Оригинал статьи: http://coding.smashingmagazine.com/2013/08/09/absolute-horizontal-vertical-centering-css/.

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

Модуль PocketIO - страдания под windows

23.07.2013г. // Рубрики: web, Рецепты, Perl
Bug
На работе появилась интересная задача, для решения которой намеревались воспользоваться Perl-реализацией библиотеки socket.io (версия 0.15 на данный момент). Почему Windows - даже не спрашивайте. Поначалу посчитали, что железяка, на которой будет работать приблуда, заточена под эту ось. Короче, начал активно изучать работу с websockets, благо весьма перспективная технология (давно к ней подбирался).
Запустил прилагающиеся примеры (под линуксом), поэкспериментировал с чатами, почитал разные документации, чего-то понял и приступил к реализации под виндой. На этом счастливая часть эпопеи была завершена. Exampl-ы упрямо не хотели работать как надо. Если точнее - handshake не отдавался сервером. Этот bug воспроизводился и в XP, и в Windows 7.
Длительное ползание по коду отладчиком привело к локализации места - в другом модуле, но этого же автора:
Protocol::WebSocket::Message, функция _append
if (ref $_[0]) {
        $_[0]->read(my $buf, $self->{max_message_size});
        $self->{buffer} .= $buf;
}
Здесь read впадает в прострацию и не выходит из неё, пока не разорвать соединение с браузером. В общем, если автор модуля случайно наткнётся на эти строки, то вот..
Ну а на работе выход нашёлся: фронтенд-напарник согласился на убунту. Как выяснилось, железяка с линуксом смогла заработать ничуть не хуже (были подозрения, что тачпад-интерфейс не заживёт, ан нет).

Опыт использования xml2json-xslt

03.07.2013г. // Рубрики: web, Рецепты
xsl:choose
Потребовался недавно мне в проекте ajax вместе с json-ом, причем ответ сервера мог содержать не вполне проверенные данные. Сам ответ хранился в xml не столько в дереве, сколько в атрибутах. Как выяснилось, эта особенность данного xml оказалась важна при трансформации в json  Читать полностью >
«   

Рубрики