<rmcreative>

RSS
  1. РИФ Воронеж 2014

    17 сентября

    3 и 4 октября состоится большая Воронежская конференция РИФ. Обычно на РИФ-ах не бывает технических докладов, но в Воронеже, как и в прошлом году, будет целая секция, которую я помогал собрать. Советую к посещению как техническим специалистам, так и руководителям.

    Программа формируется и меняется, но уже даёт какие-то представления о том, что будет.

    • Где: Воронеж, ул. Владимира Невского, 29, конгресс-отель «Benefit Plaza».
    • Когда: 3 октября, 9:00 — 4 октября, 11:00.
    • http://www.rifvrn.ru/
    Комментировать
  2. Toran Proxy

    10 сентября

    Было ли у вас такое, что надо выкладывать релиз, всё через Composer и вдруг что-то не то с сетью, GitHub отвалился или Packagist барахлит? До недавнего времени нормального решения этой проблемы не существовало. Приходилось откладывать релиз на потом.

    Летом этого года основной разработчик Composer, Jordi Boggiano, запустил проект Toran Proxy.

    Toran ставится на надёжный сервер и выступает кеширующим посредником между Packagist и GitHub. Если такой сервер поставить в офисе, работа не остановится даже при отсутствии соединения с Интернет. Плюс скорость получения пакетов будет получше. Ставится прокси, кстати, довольно просто.

    На этом приятности не заканчиваются. После установки нам даётся веб-интерфейс, в котором можно управлять своими закрытыми внутренними Composer-пакетами.

    Отдельно стоит упомянуть про лицензирование. Для персонального использования проект бесплатен, но если вы хотите поддержать Composer, можно купить лицензию чуть более, чем за 100$ на целый год. Свободное время Jordi, которое он тратит на Composer, напрямую зависит от полученной с лицензий Toran прибыли.

    Для компаний тоже есть отдельная лицензия, к которой прилагается приоритетная поддержка.

    5 комментариев
  3. Выложил исходники своих слайдов

    6 сентября

    Много раз на конференциях просили поделиться исходником моих слайдов. Сегодня нашёл время привести их в более-менее человеческий вид и выложил всё на github.

    4 комментария
  4. Как при помощи CSS выровнять элемент по центру

    5 сентября

    На CSS-Tricks в очень удобном виде опубликовали различные решения по центрированию элемента при помощи CSS практически для всех возможных случаев.

    http://css-tricks.com/centering-css-complete-guide/

    Кроме того, что информация сама по себе полезная, очень нравится подача.

    3 комментария
  5. markdown обзавёлся спецификацией

    4 сентября

    Спецификацию составляли и оттачивали два года, сравнивая как популярные открытые библиотеки, так и закрытые решения. Поучаствовали в проекте авторы StackOverflow, GitHub, EtherPad, Meteor, pandoc.

    Результат можно наблюдать на http://commonmark.org/. Считаю, для markdown это большое событие.

    9 комментариев
  6. С Yii 1.1 на Yii 2.0, часть 2: Composer

    20 августа

    Для установки Yii 1.1 и начала работы необходимо было скачать архив с сайта, распаковать его и выполнить в командной строкеyiic webapp. В последних версиях появилась возможность работы через Composer, но установка из архива так и осталась основным способом. Архивы используются и для большинства расширений. К каждому прилагается свой readme, который объясняет как поставить и настроить каждое расширение.

    Трудоёмкость процесса установки и обновления фреймворка и, в ещё большей степени, расширений навела на мысли, что в 2.0 небходимо всё это упорядочить и автоматизировать. Основным способом получения фреймворка и расширений стал Composer. Поставить его легко. Либо выполняем в командной строке:

    curl -s http://getcomposer.org/installer | php

    либо руками скачиваем с http://getcomposer.org/.

    Больше вручную вам ничего качать не придётся. Совсем. Первое приложение можно создать прямо из консоли:

    php composer.phar create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic /path/to/yii-application

    Composer самостоятельно скачает всё необходимое и выставит права на директории и файлы.

    Если с консолью у вас проблемы, с сайта всё ещё можно скачать фреймворк и базовые зависимости в виде архива и сделать всё как ранее (только yiic webapp делать не придётся). Однако, с консолью и Composer всё-таки лучше подружиться. Ручная установка расширений — дело очень трудоёмкое.

    Полная документация Composer, которую очень полезно изучить, находится по адресу https://getcomposer.org/doc/. Здесь же приведу главные факты.

    • Все пакеты (фреймворк — тоже пакет) устанавливаются в директорию vendor приложения. Руками туда лезть не стоит (если, конечно, не работаете над кодом одного из пакетов). Добавлять в репозиторий также незачем.
    • Ваше приложение — тоже пакет. Просто вы его не публикуете (скорее всего).
    • Настройки главного пакета хранятся в composer.json.
    • Самая интересная секция в composer.jsonrequire. Это список пакетов, от которых зависит ваш, и их версий. При выполнении composer install и composer update перечислененые пакеты устанавливаются или обновляются автоматически.

    ← С Yii 1.1 на Yii 2.0, часть 1: PHP

    3 комментария
  7. OpenSource-им PHP код

    19 августа

    Недавно Максим Ekstazi Фуртуна написал тему для авторов кода на форуме yiiframework.ru. Я решил сделать подобный список для современного PHP-кода в общем.

    • Пишите под поддерживаемые версии PHP. Сейчас это 5.4 и выше.
    • Форматируйте код по PSR-2.
    • Используйте git, а лучше github.
    • Релизы делайте по правилам семантического версионирования.
    • Используйте Composer и не забывайте добавить пакет в packagist.
    • Называйте и загружайте классы по стандарту PSR-4. Писать свой загрузчик не нужно, Composer уже умеет.
    • Пишите unit-тесты. Замечательно, если ваш код покрыт ими на 70-80%. Запускать автоматически можно через Travis CI.
    • Документируйте код в стиле DocBlocks.
    • Напишите отличный readme: что код делает, как настроить и использовать. Получилось длинно — оставляйте в readme «что код делает», остальное выносите в полноценное руководство. В качестве разметки советую markdown.
    • Не забрасывайте свой код. Если времени нет — подключите к проекту тех, кто активнее всех вам помогает и заинтересован.
    • Обязательно приложите текст одной из OpenSource-лицензий. Рекомендую BSD или MIT.
    3 комментария
  8. Software Development podCAST #7

    8 августа

    Записался в подкасте. Говорили про Yii и PHP в целом:

    • Как живет и развивается OpenSource проект Yii Framework: участники, организация разработки, зоны ответственности, текущее положение дел и планы по дальнейшему развитию.
    • Yii Application Development Cookbook.
    • PHP Framework Interop Group. Цели группы, её участники, обсуждаемые вопросы.
    • Экосистема PHP: вчера, сегодня, завтра. PSR, загрузчики, HHVM, PhpNG, менеджеры пакетов и прочее.

    Слушаем

    4 комментария
  9. Подключение к L2TP VPN средствами Windows

    22 июля

    Захотелось подключиться к отлично работающему в Android, iOS, MacOS VPN по L2TP средствами Windows. Вот не хочет и всё тут.

    Поискал причину, нашлась. Итого:

    • Открываем regedit.
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent.
    • Создаём DWORD (32-bit) с именем AssumeUDPEncapsulationContextOnSendRule.
    • Выставляем значение в 2.
    • Перезагружаемся.
    Комментировать
  10. wnmp-dev: nginx, MariaDB, PHP под Windows

    16 июля

    Решил выложить то, что собрал себе вместо denwer для работы с PHP под Windows. Нынче популярны всякие Vagrant, но иногда, особенно если пишется кросс-платформенное решение вроде Yii, нужен и Windows в том числе.

    Итак, wnmp-dev — простейший набор bat-скриптов и конфиг для nginx, которые позволяют развернуть полноценный вебсервер под Windows и легко переключаться между разными версиями PHP.

    Как поставить:

    1. Клонируем https://github.com/samdark/wnmp-dev.git или загружаем архивом.
    2. Забираем нужные версии PHP с сайта PHP for Windows. Берите nts, x86 zip.
    3. Распаковываем архив. Версия 5.5 должна оказаться в php55, версия 5.4 в php54.
    4. Забираем MariaDB или MySQL, складываем в mariadb.
    5. Копируем nginx/conf/vhosts/example._conf в nginx/conf/vhosts/mysite.conf, редактируем так, чтобы конфиг указывал на ваш вебрут.
    6. Добавляем домен из конфига в hosts.
    7. Запускаем start_all.bat
    8. Работаем.

    Предложения, пожелания и вопросы принимаются, ридми будет уточняться.

    https://github.com/samdark/wnmp-dev

    13 комментариев