Поиск по этому блогу

вторник, 20 декабря 2011 г.

Размышления о правильной отправке почты в вашем PHP приложении или Swift Mail изнутри

Привет, %username%.

Если ты использовал Symfony 2.0, то наверняка некоторые фичи захотелось бы вытащить и использовать в другом, не symfony2, проекте. Сегодня мы поговорим об отправке почты.

четверг, 17 ноября 2011 г.

Symfony 2 Фиктивные модели для форм

Привет, %username%.

Обещал в блоге писать про яву, но так получилось, что сейчас разбираюсь с Symfony2 + Doctrine 2. Поэтому пишу что нарыл. Про формы symfony 2 можно почитать здесь. Правда там не всё, что нужно. Для простой формочки хватает, а когда начинаешь делать что-то по сложнее - то возникают проблемы. Проблема первая. Есть модель(entity). Нужно сделать форму определенного вида. Причем элементы модели не совпадают с элементами формы. Долго мучался, с мануалами и стилями, что-то получилось, а что-то оказалось сделать вообще не возможно.
Посмотрим что из этого получилось.

пятница, 11 ноября 2011 г.

Истории про lesscss

Привет, %username%!
Хочу поделиться опытом в области прикручивания компилятора less к symfony2.
Во-первых, есть такая надстройка над css less. Для компиляции через php есть библиотека lessphp. Она имеет не достаток - не поддерживает директиву @import. Если очень нужно, то можно использовать компилятор на nodejs. Есть клиентский (на лету в браузере), есть серверный. С серверным недавно вышла проблема. компилятор работает только на версии nodejs 0.4.9. На nodejs 0.5.x и 0.6.x не подключается сама библиотека lessc.
На этом всё, спасибо за внимание.

суббота, 15 октября 2011 г.

Подготовка Zend к продакшену для highload проектов

Привет, %username%.
Сегодня подниму вопрос о использовании Zend компонентов на production в highload проектах.
Проблема в том, что Zend достаточно тяжелый продукт, он содержит море классов. При оценке производительности приложения выясняется, что львиную долю времени занимают "инклуды" классов Zend .

вторник, 27 сентября 2011 г.

Багфикс кодировки utf8 для генерации таблиц в Doctrine 2

Привет, %username%.
Иногда пользуюсь Docrine 2.1/Symfony 2.0. + doctrine migrations. В один прекрасный момент возникла проблема с кодировкой БД mysql при автоматическом создании таблиц. Покопавшить немного в Docrine DBAL выяснилось, что при создании схемы, параметры кодировки не учитываются.

вторник, 13 сентября 2011 г.

Задача отображения деревьев в MySql. Способ отображения на хранимых процедурах.

Предисловие.

Эта статья когда-то(года этак 2 назад) публиковалась на habrahabr.ru от имени моего друга, т.к. тогда ещё у меня не было аккаунта на habrahabr. Потом друг убрал её из своих статей. Не убрал, вот она. Публиковать повторно не хочется, поэтому чтобы материал не пропадал, публикую здесь. Поэтому сразу оговорюсь, что cтатья - не рекомендация к действию. Была конкретная проблема, конкретная задача, я её решил вот так. Потратил на это времени часа этак два. Если бы мне нужно было решать аналогичную задачу с нуля, то так я делать не стал бы уж точно. В итоге, получился такой добротный костыль. Привожу статью в том виде, как она была. Это одна из первых моих статей.
PS: я в курсе, что есть nested sets и другие способы организации иерархических данных. Ещё раз напомню, мы сейчас говорим о костыле.


Правильная проверка XML данных в java-проектах

Привет, %username%.

Недавно, опубликовал свою статью  про валидацию XML-данных в java проектах. В статье я постарался рассказать немного о библиотеке XmlUnit и о том как правильно с моей точки зрения писать тесты в таких случаях. Кому интересно, всех приглашаю почитать.

UPD: Краткий итог: В начале поленился описывать возможности библиотеки, мол, если нужно, сами зайдут и почитают. В итоге, повалила куча вопросов, типа - а так можно. Пришлось дополнить статью парой ссылок и комментариями. В целом получилось не плохо. Благодаря комментариям узнал для себя новое, в XSD-схеме можно указывать обязательный порядок тегов:
The indicator specifies that the child elements must appear in a specific order:
Так что совет всем, читайте мануалы, оно полезно.

воскресенье, 4 сентября 2011 г.

Поворачиваем монитор средствами xorg в ubuntu

Привет, %username%.

Делюсь рецептом - как удобно поворачивать монитор в ubuntu.
Перечитал кучу документации. Более всего понравился вариант с использованием утилиты xRandr.
Чтобы утилита работала верно, нужно включить соответствующую опцию  RandRRotation в /etc/X11/xorg.conf.

четверг, 1 сентября 2011 г.

Ещё раз о тестировании кода

Ещё раз о тестирование кода. Заметка навеяна:  http://habrahabr.ru/blogs/tdd/127114/
Интересен не сам пост, а комментарии к нему.  

Если кратко, то ИХМО: 
тесты — это лакмусовая бумажка гибкой и правильной архитектуры приложения. 

Вам удобно писать тесты ? Они у вас не рушатся ? 

Если да, то молодцы, если нет, то скорее всего вы делаете что-то не так. 

вторник, 30 августа 2011 г.

SAX парсер на Java своими руками.

Привет %username%.

Сегодняшней темой будет парсинг XML. Существуют две стратегии обработки XML документов: SAX и DOM.
SAX парсеры предлагают потоковую обработку данных основанную на событиях.
DOM парсеры преобразуют XML  в дерево объектов, с которыми можно будет работать.

Рассмотрим пример простейшего SAX парсера.

Работа с кириллическими доменам в Java

Привет, %username%.

На днях потребовалось работать с кириллическими доменами.
нужно было их из кодировки PunyCode в обычную UTF8.

понедельник, 29 августа 2011 г.

Решение проблем с драйвером NVIDIA под ubuntu

Привет %username%!

Спешу поделиться с проблемой, которая мучает меня уже долгое время. 
У меня ноутбук asus M50G c NVIDIA 9800M на борту. 
В качестве операционной системы я использую ubuntu. 
При обновлении системы до ubuntu 11.04 стал появляться глюк с графическими драйверами для NVIDIA. Проблема была в том, что они не стартовали из-за того, что не находили нужных модулей ядра. 
И так при каждом обновлении ядра у меня переставал грузиться рабочий стол.

среда, 24 августа 2011 г.

Кукушка на bash

Опубликовал пост на habrahabr про кукушку и bash. Здесь текст поста не привожу, т.к. это запрещено правилами habrahabr.

Как оказалось писать на habrahabr очень полезно, ты кидаешь тему для обсуждения, а тебе тут же скидывают кучу полезной информации в тему.