Ubuntu, KnpConsoleAutocompleteBundle и php 5.3.10

Есть такой клёвый бандл KnpConsoleAutocompleteBundle от KnpLabs, суть которого заключается в автоподстановке команд для скрипта консоли Symfony2.

Т.е. набираешь “./app/console doc” жмешь [Tab] и получаешь “./console doctrine:”. Жмешь [Tab] ещё два раза и получаешь все варианты комманд:

$ ./app/console doctrine:
doctrine:cache:clear-metadata        doctrine:generate:form
doctrine:cache:clear-query           doctrine:mapping:convert
doctrine:cache:clear-result          doctrine:mapping:import
doctrine:database:create             doctrine:mapping:info
doctrine:database:drop               doctrine:query:dql
doctrine:ensure-production-settings  doctrine:query:sql
doctrine:generate:crud               doctrine:schema:create
doctrine:generate:entities           doctrine:schema:drop
doctrine:generate:entity             doctrine:schema:update

Вобщем удобно очень :).

Одна проблема — не работает под Ubuntu )). Есть даже тикет соотвествующий от Люиса Кордовы “does not work on ubuntu debian“. В тексте issue он дает ссылку на translate моей темы “проблема с ConsoleAutocompleteBundle” с форума zf.ru.

Так к чему я это пишу? Прошел почти год с того момента как я столкнулся с этой проблемой. Ну, думаю, должны были за это время все разрулить и баг пофиксить. Разворачиваю тестовое приложение, настраиваю, ставлю бандл, настраиваю, пробую автокомплит и разочаровываюсь — проблема осталась (((.

Показал ссылку на обсуждение бага Жене (наш админ) и он посоветовал мне установить php 5.3.10 с ppa. И вот когда я его поставил, то все заработало! Ура 🙂

PS. На всякий случаю запишу, что ставил я его вот так:

$ sudo add-apt-repository ppa:nginx/php5.3
$ sudo aptitude update
$ sudo aptitude upgrade --full-resolver

Несколько шпаргалок по Symfony2

Нашел на задворках своего HDD несколько шпаргалок по Symfony2. Лучше выложу их сюда, а то когда нужно, то фиг найдешь. Думаю, что они будут многим полезны.

Путь HTTP запроса в Symfony2 (jpg)


Автор Benjamin Dulau

Как работают формы в Symfony2 (pdf)


Автор Andréia Bohner

Обзавелся читалкой Nook Simple Touch

Перед Новым Годом обзавелся читалкой Nook Simple Touch.

Выбирал недолго т.к. на рынке сейчас только две читалки с тачскрином — Amazon Kindle 4 Touch и Nook Simple Touch. К преимуществам Nook можно отнести наличие разьема для карты памяти и ОС на базе Android. Ещё они есть на складе моих поставщиков 🙂

Вот эти обзоры склонили меня к покупке Nook:

Покупкой доволен — девайс простой и удобный в использовании. Самое главное, что читать с него намного приятней чем с моего старенького телефона Nokia 6630.

Доставка суши от Кукорамы

Сегодня мы запустили доставку суши от Кукорамы (по Киеву). Производством и доставкой суши занимаются наши партнеры. В этой сфере они давно и считаются одними из лучших в Киеве.

Перед запуском я ещё раз проверил как все работает. Заказал набор суши Ассорти «Долина Ясай» с оплатой при доставке. Вскоре нам передзвонила менеджер, которая уточнила данные заказа и сказала, что суши к нам будут ехать час-полтора. Через час я уже расплачивался с курьером.

Приехали две вот такие коробочки:

И небольшая коробочка с салфетками, зубочистками и жевательной резинкой.

Сервировка была расчитана на двоих (уточняется при заказе). Каждому досталось по два набора одноразовых палочек: одни для чайников (оказалось удобно) и одни нормальные.

Вобщем первый опыт заказа суши через Интернет получился довольно вкусным и приятным. Теперь жду гостей, чтобы заказать ещё раз и уже побольше 🙂

Увлекся разработкой игр на JS и HTML5 (сanvas)

Перед отпуском я серьезно подсел на изучение документации и разбору движков готовых игр.
На этой странице собраны ссылки на все более менее существенные материалы, которые я читал или планирую почитать.

Игра #1

Первой моей игрушкой сделал стала “Swell Foop” (была такая игра в пакете Gnome Games). Рабочая версия насчитывала около 200 строчек кода, потом добавил несколько плюшек и кода стало больше. Игра написана на чистом JS — т.е. без использования готовых библиотек или фреймворков.

Игра #2

Потом я начал делать свои танчики (Battle City). Изначально делал опять же на чистом JS, но потом распробовал библиотеку libcanvas и atom.js (от украинского программиста Павла Пономаренка) и переделал уже с использованием этих либ (просчет столкновений, спрайты, повороты и т.д.).

В данный момент карта генерируется и танчик ездит. При этом игра тупит т.к. все прорисовывается и пересчитывается каждый кадр. Но это мой косяк исправлением которого я планирую заняться в ближайшее время.

Вобще мне очень понравилось эта тема — позволяет отвлечься от PHP и попробовать что-то новое. Да и к геймдеву я никогда не был равнодушен :).

Symfony2. На чем можно сэкономить время при разработке?

Слайды моей презентации с Symfony Camp.

В целом кемп удался. Правда в прошлом году мне было намного интересней т.к. с symfony я ещё вобще не работал и объем новой информации был просто огромный. Именно тогда я впервые услышал такие слова как haml, less, twig, capistrano, hudson.. А сейчас мы используем в своей работе больше половины из этих вещей :).

На сегодняшнем кемпе мне больше всего понравился доклад Кирилла Чебунина (Чебы) “Symfony2 Service Container: Inject me, my friend” — я не копался в DI контейнере Symfony2 настолько глубоко и услышал новые для себя вещи.

На втором месте, пожалуй, был доклад Миши Бондарчука (Даверта) “TestGuy – эмулируем вашего тестировщика на PHP” — о этой разработке знаю довольно давно и очень хотелось посмотреть как же оно выглядит в реале.

Доклады Игоря Бровченка и Саши Демченка, тоже были довольно интересны людям, которые не работали с twig и redis. Мои ребята говорили, что им понравилось.

Вобщем ещё раз спасибо Игорю и Саше за организацию. Ждем следующий Symfony Camp ;).

ps. Кстати у нас (Frameworks Days) есть мысль провести весной 2012 “Symfony2 Framework Day”. Ивент сделать платным и пригласить на него несколько зарубежных докладчиков. Костя Кудряшов порекомендовал Ryan Weaver. Саша Демченко говорил, что Fabien Potencier готов был приехать на Symfony Camp, если бы ему оплатили расходы. Что вы об этом думаете? Думаю было бы круто.

#4й дайджест материалов по Symfony2

Как-то затянулся у меня 4й дайджест материалов. Уже и релиз Symfony2 состоялся, а я все никак не могу к добраться к публикации :).

Блоги посвященные Symfony2

Рекомендую подписаться на RSS лету блога — http://www.craftitonline.com/. Льюис контрибютит Symfony2 и часто выкладывает новые материалы.

Буквально вот только что наткнулся на интересный блог @qpleple, на котором есть серия хороших статей:

Как раз во время их прочтения решил, что материалы заслуживают добавления в дайждест и поэтому переключился на блог :).

На блоге http://webb-on-the-web.com/ Роджер Вебб написал всего пару статей, но обе на тему Symfony2. Итак:

Отдельные материалы на тему Symfony2

Symfony2: Checking Coding Standards — о том как проверять стандарты кодирования Symfony2 используя PHP_CodeSniffer. Сразу описана интеграция в Phing и Jenkins (Hudson).
И тут же в комментариях Кирилл Чебунин поделился линком на инфу о том, как это можно прикрутить к NetBeans — Coding Standards in NetBeans IDE with PHP CodeSniffer.

Symfony2 and DoctrineExtensions — о том как подключать Timestable, Sluggable, etc. Все довольно просто подключается и относительно хорошо работает.

Adding non-entity fields to your Symfony2 forms — название опять же говорит само за себя. К примеру, это можно использовать для форм в которых есть поле апдлоада.

Behat turns 2! Have fun and test what — Behat2 стал ещё лучше :). Либа довольно интересная и в хозяйстве полезная. Сейчас уже доступна версия 2.1.2.

Установка и настройка функционального тестирования в Symfony2 с помощью Behat и Mink — заметка на Хабре после которой я решил все таки попробовать Behat на живом проекте.

Использование Zend GData в Symfony2-проекте
— ещё одна заметка на Хабре, но уже на другую тему. Я с Gdata пока не работал. Вы работали? Для каких задач?

Symfony2\SecurityBundle — перевод «Symfony2 Blog Application Tutorial Part V: Intro to Security». Стоит прочитать.

Все

Если дочитали до этого места, то отпишитесь в комментариях. Давайте обсудим материалы или так про жизнь потрещим. Скучно без комментов то (:

Кстати на Symfony Camp идете? 29го октября я буду выступать там с докладом “Symfony2. На чем можно сэкономить время при разработке?“. Прошлогодний кемп мне очень понравился.