
Жеже → Киев
Неделю назад ездил в Киев на программистскую конференцию Symfony Camp UA 2011, но писать про неё не буду, кроме того, что там мне всё понравилось. Если вдруг кому всё таки интересно, то могу пару ссылок оставить, где сие мероприятие расписано более подробно - 451f.com.ua (раз) и tigor.com.ua (два).
Поделюсь несколькими фотографиями из столицы Украины :) Начну с той, что получилась наиболее красивой. Кроме всего прочего, на фотографии обнаружилась ещё одна интересная деталь, но о ней ниже.
Деталь, собственно, ходит и заглядывает по окнам закрытого к этому времени детского садика, его я только на фотках и разглядел. Может быть это и сторож, но уже не узнать наверняка. Снимков я делал несколько штук, на всякий случай, чтобы потом лучший выбрать - так на половине кадров этот некто присутствует :)
jQuery → Ajax
Не прошло и полгода, как технология ajax проникла в мою деятельность :) Здесь, в частности, она применилась к отправке комментариев (не без участия jQuery).
Лучше, конечно, поменьше слов и побольше кода, но читать дальше не советую, так как вряд-ли кто-то увидит здесь что-нибудь новое
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | jQuery(document).ready(function() {
jQuery('#submit').click(function() {
var dataForm = jQuery('#CommentForm').serialize();
jQuery.ajax({
url: '/index/addcomment',
data: dataForm,
type: 'POST',
success: function() {
jQuery('#comments').load('/topic.php #comments > *');
}
});
return false;
});
});
|
JavaScript → HTML5 и IE8
Долго сражался с этим долбанным ребусом. Если вкратце, то внешний вид одного сайта нормально отображался в IE8 и IE7, однако одна единственная страница перекашивалась в указанных браузерах. Средство разработчика, встроенное в IE показало, что на этой злосчастной странице такие элементы HTML5, как <footer>, <article> или <header> самостоятельно "закрывались", т.е. превращались в элементы вида <footer/>, <article/> и т.п. Причём на остальных страницах подобного поведения не наблюдалось.
Гугление привело на страницу с решением, позволяющем включить новые элементы HTML5 в Internet Explorer. Приведу здесь необходимый фрагмент:
1 2 3 | <!--[if lt IE 9]>
<script src="http://cdn.jsdelivr.net/html5shiv/3.7.2/html5shiv.min.js"></script>
<![endif]-->
|
Zend Framework → Аналог Url-хелпера из Zend_View
В своё время меня интересовал вопрос - как вызывать Url-хелпер из контроллера и внутри модели? И если в контроллере это можно было сделать просто, то внутри модели получал только фигу. Однако догадался заглянуть в код самого фреймворка (Zend Framework, если что) - там всё чёрным по белому написано.
Зачем мне вообще это понадобилось? А затем, что пути к страницам этого сайта определены через роуты и если мне завтра вздумается заменить адреса вида example.org/topic/xxx на example.org/shmopic/xxx, то придётся переписывать модели для получения RSS-фида и генерации sitemap.xml, что не есть хорошо.
Железо → Pixus Three 4Gb
Купил недавно отцу такую штуку и играюсь ей уже несколько дней. Решил поделиться информацией, т.к. обзоров маловато в сети, пусть и мой ещё будет :)
Впечатления скорее положительные, если закрыть глаза на некоторые несущественные (для меня, по крайней мере) штуки. Ниже традиционная фотография, без которой запись будет пресная.
Плеер хороший, оправдывает потраченные деньги. С трёхдюймового экранчика вполне можно смотреть видео хоть в дороге, хоть сидя на унитазе :) Причём видео не простое, а HD 720p, которое не все компьютеры четырёхлетней давности потянут.
Дабы не дублировать контент, ссылку на свой сайт, где миниобзор и размещён, я замаскирую под обычную ссылку (читать далее...)

Железо → обзор Pixus Three 4Gb
Прикупил сие чудо, которое именуется Pixus Three 4Gb. Не для себя брал, а для отца, но штука эта пока у меня и я им играюсь уже несколько дней, можно и какое-то подобие обзора написать :)
Основные тактико-технические характеристики расписаны на официальном сайте (?), ссылка на который дана в самом начале записи уже давно не работает. Если в двух словах, то это воспроизведение звуковых и видео-файлов разнообразных форматов, возможность подключения к телевизору через компонентный или композитный вход (HDMI присутствует на более крутой и дорогой версии Pixus Five), просмотр фотографий и чтение текста как незначительный бонус (в этом качестве я это устройство не пользовал). Так же имеется FM-трансмиттер, т.е. можно передавать звуковой сигнал радиоволнами FM-диапазона.
Вообще-то и не верится, что устройство размером с пластиковую банковскую карточку без видимого труда тянет те фильмы, с которыми мой младший комп на базе Intel D201GLY2 (фото ниже) не справляется. Речь идёт об HD-видео с разрешением до 720p включительно. Другой вопрос, что медиаплеер ничего другого делать и не умеет, собственно.
Но и без ложки дёгтя тоже не обошлось. И даже не одной.

Фотография → В траве сидел кузнечик
Если быть более точным, то это кто-то из пластинокрылов
Canon EOS 1000D, Юпитер-37а + макрокольцо
Zend Framework → Использование Zend_Feed
Не претендую на лучшее решение, это скорее первый опыт общения с Zend_Feed вообще, но написать что-то надо. Хотя бы ради ссылки на спецификации RSS 2.0
Ну а теперь, собственно, реализация RSS-ленты. Поскольку я стараюсь придерживаться паттернов проектирования MVC, то запрос обрабатывается контроллером, а данные для ленты формируются в модели. Вид (View) нам не нужен, как таковой, потому в контроллере мы его выключаем.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php
public function feedAction()
{
//определяем тип ленты, RSS или Atom
$feedType = $this->_getParam('feed');
//выключаем View и Layout
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(true);
$topics = new Application_Model_DbTable_Topics();
//запрашиваем данные ленты из модели
$feedArray = $topics->getFeedData($feedType);
//Импортируем ленту с помощью Zend_Feed и выводим её
$feed = Zend_Feed::importArray($feedArray, $feedType);
$feed->send();
}
|