Декабрь 2011
3 поста
3 тега
Что мне дал 2011 год
Совершенно точно этот год был очень насыщенным. Работал в этом году с такими трендами как HTML5, CSS3, JavaScript. И в отличии от прошлого года уже не в теории, а на практике. Во многом на это повлияло быстрое развитие браузеров, даже Internet Explorer, что для него это вообще дико.
HTML5
Про большинство возможностей из спецификации я знал уже давно, но на практике получилось использовать только...
7 тегов
Асинхронный скрипт подключения к Google Analytics...
В корпоративном блоге Serenity я написал статью о том, что в Google Analytics можно отслеживать нажатия на социальные кнопки и о том, почему я считаю это важным. Однако, по-умолчанию этот механизм работает только для кнопок +1. Для того чтобы в отчет попадали нажатия на другие социальные кнопки нам придется воспользоваться Google’вским API: Social Interaction Analytics.
Подход, который...
2 тега
Что нового в ECMAScript 5
Презентация о новых методах в ECMAScript 5
Очень подробно, с примерами, рассказано о таких методах как:
Object.create
Object.defineProperties
Object.keys
Object.seal и Object.freeze и Object.preventExtensions
Источник: ECMAScript 5
Ноябрь 2011
5 постов
4 тега
Как управлять задачами cron с помощью Capistrano...
Я уже рассказывал о том как доставлять NodeJS проект на сервер с помощью Capistrano, теперь я расскажу как можно управлять задачами cron с помощью все того же Capistrano.
Для начала нам понадобится whenever — это замечательная библиотека для удобной работы с задачами крона. Библиотека написана на Ruby, но так как у вас уже стоит Capistrano это не должно быть проблемой. Устанавливаем:
gem...
5 тегов
Асинхронное подключение Google Analytics, Google...
Сейчас становится популярно размещать всякие социальные сервисы у себя на сайтах, на сайтах своих клиентов, но вместе с этим мы забываем о том, что все эти сервисы замедляют работу сайтов. Многие уже умеют подключать Google Analytics асинхронно, то есть, таким образом, чтобы загрузка скрипта не останавливала загрузку сайта. Я же предлагаю идти дальше и все нужные социальные сервисы загружать...
1 тег
NodeJS для начинающих →
Хорошая книжка о NodeJS на русском языке. Подойдет для начинающих.
2 тега
Как преобразовать ваши JavaScript файлы в...
JS2Coffee — это небольшой npm модуль, который позволяет конвертировать JavaScript файлы в CoffeeScript. Для многих начинающих вникать в синтаксис CoffeeScript это должно очень помочь.
Использовать js2coffee из консоли очень просто:
js2coffee main.js > main.coffee
А чтоб еще больше упростить работу с конвертацией из формата в формат, был запущен сайт js2coffee.org. На нем вы сможете в онлайн...
4 тега
Удаленная доставка NodeJS приложения с помощью...
Думаю, каждый разработчик сталкивался с проблемой развертывания своего сайта/приложения на живой сервер. И, думаю, каждый мечтает о такой кнопочки, нажав которую все его изменения попадали бы на сервер.
Capistrano — это инструмент для быстрого развертывания и выполнения задача на удаленной машине. Изначально он был разработан для развертывания проектов на Ruby On Rails, но как оказалось может...
Октябрь 2011
1 пост
3 тега
Что интересного в PHP 5.4 beta 2 и как поставить...
Обновление: тем временем вышла beta 2, описание остается тем же.
Вот и подошла следующая версия PHP к своему бета-тестированию. Для себя я отмечаю следующие улучшения и возможности:
Traits
Встроенный веб-сервер
Array dereferencing support
Scalar type hints
Убрали legacy настройки
В целом хороший будет релиз, такой, более усовершенствованный 5.3, более быстрый. Особых проблем с...
Август 2011
4 поста
3 тега
За что я люблю CoffeeScript
В последнее время я начал больше писать о JavaScript, о NodeJS, поэтому хочу немного написать о CoffeeScript — именно на нем я решаю большинство стоящих передо мной задач. Например node-tumblr, мой первый NodeJS модуль, был написан именно на этом языке.
Пару слов о том что же это такое
CoffeeScript — это высокоуровневый язык программирования, который компилируется в JavaScript. Язык исправляет...
2 тега
Как навести порядок в зоопарке микро-фреймворков?
Я написал уже несколько обзоров о том, какие микро-фреймворки бывают, и собираюсь делать это и дальше. Однако в какой-то момент управлять этим зоопарком становится сложно. На помощь приходит библиотека Ender. Хотя постойте, это вовсе не библиотека, по крайней мере в том смысле, к которому вы привыкли. Это скорее инструмент для создания собственного фреймворка из других библиотек.
Авторы, Dustin...
2 тега
JavaScript микро-фреймворки. Часть 3.
Сегодня у нас в выпуске очень интересные микро-фреймворки. Каждый из них позволяет использовать возможности HTML5 не думая об обратной совместимости со старыми браузерами.
Небольшое отвлечение: вы наверное думаете, как же с таким большим количеством микро-фреймворков справится, следить за всем, подключать кучу файлов, у каждого к тому же свое API — для этого есть отличное решение, о нем я напишу...
4 тега
Как запретить "резиновую прокрутку" в Safari 5.1
Safari 5.1 — это версия по-умолчанию в OS X Lion. Вместе с ней мы получили “резиновую прокрутку”, как на устройствах iOS. Однако на некоторых веб-сервисах, где нужно использовать прокрутку одного из элементов дизайна, то есть не всего сайта, такая прокрутка очень мешает. Это сервисы как Google Reader, Twitter, наша внутренняя система и другие.
Исправить этот недочет можно следующим...
Июль 2011
5 постов
4 тега
Tumblr — мой первый NodeJS модуль
Давно уже полюбил NodeJS, нравится он мне своей быстротой, синтаксисом и возможностью не делить скрипты на серверной и клиентской части. Но этот пост немного не об этом ;)
Решил написать свой первый публичный модуль для реализации новой версии API блого-хостинговой платформы Tumblr. Изначально все было написано на CoffeeScript, но есть build-скрипт для создания JavaScript версии. Мне очень...
2 тега
JavaScript микро-фреймворки. Часть 2.
Продолжаем наш обзор JavaScript микро-фреймворков. Надеюсь они уже начали приносить вам радость. Возможно уже скоро вы и сами захотите написать что-то свое? :)
Underscore.js
Автором является компания DocumentCloud
Underscore это вся мощь Prototype.js (или Ruby) при работе с массивами и объектами, но без расширения встроенных в JavaScript объектов.
Крайне полезный микро-фреймворк, добавляет...
2 тега
Встроенный веб-сервер в PHP 5.4
Давно не писал что нового появилось в PHP 5.4, было совсем не до этого. А тем временем добавили очень интересную вещь — встроенный веб-сервер. Само предложение как обычно появилось в Wiki и обсуждалось там совсем немного.
Зачем оно вообще нужно?
А очень просто, мы наконец-то можем забить на установку всяких Apache/Lighttpd и прочих на машину разработчика, так как все что нужно будет здесь. Очень...
2 тега
JavaScript микро-фреймворки. Часть 1.
Небольшое вступление. Уже очень продолжительное время наблюдаю совершенно дурацкое явление — использование огромных JS фреймворков в проектах, где они не нужны. Например, когда используют небольшую анимацию на сайте и при этом используют или JQuery, или YUI, или Dojo, или что-то похожее, да еще и добавляют несколько плагинов, которые добавляют особенный эффект анимации. Для меня это чересчур. 90%...
4 тега
Установка PHP 5.3.6 на OS X Lion
После установки OS X Lion (10.7) столкнулся с неприятной проблемой, установка связки PHP+MySQL как я делал это раньше не работает. И как оказалось, проблема в MySQL, исходники которого еще не готовы к новой ОС от Apple.
После некоторых размышлений и прочтений похожих проблем в интернете, я нашел для себя следующее решение.
Ставим Homebrew — это очень простое занятие, достаточно запустить в...
Май 2011
1 пост
2 тега
ZF Conf 2011 в Санкт-Петербурге
Основные подготовительные работы по конференции закончены. Доклады сформированы. Среди спикеров представители KnpLabs, Magento, JetBrains, Sphinx и других известных компаний.
Открыта финальная регистрация!
Если Вы проходили предварительную регистрацию, то для прохождения финальной регистрации Вам нужно перейти по специальной ссылке, отправленной на e-mail. Введенную ранее информацию нужно будет...
Апрель 2011
5 постов
3 тега
Google Maps + Geolocation + Маршруты
Недавно мы добавили в раздел “Контакты” к нашей карте возможность прокладывать маршрут от того места, где сейчас находится пользователь, к нам в офис. Я бы хотел немного подробнее рассказать как это делается.
Думаю с картами Google Maps уже все знакомы, и как их подключать объяснять не буду. Для инициализации всего этого дела нам понадобится пару объектов:
Пример кода.
Следующим...
1 тег
Презентация: Операторы в JavaScript →
Презентация из 20 слайдов от Timmy Willison. Автор рассмотрел наименее распространенные операторы в JavaScript.
2 тега
CodeConf: GitHub Issues 2.0 →
Hey everyone! I’m at CodeConf, and I just watched a lightning talk by Kyle Neath: he just pushed GitHub Issues 2.0 to production in front of us! Check it out, you can now add milestones and assign tickets! Badass!
Come say hi if you’re here. And if not, don’t worry, I’ve been taking extensive notes on all the presentations, and will be posting links to slides as well as summaries of the talks on...
2 тега
Traits в следующей версии PHP (5.4 или 6.0)
Помните я рассказывал о новых возможностях в следующей версии PHP, тогда я еще говорил, что мне очень не хватает Traits (буду называть их примеси). Оказывается уже несколько месяцев как их добавили в транк, поэтому с нетерпением жду релиза.
Документации на официальном сайте пока еще нет, но кое-что уже сейчас можно увидеть в RFC (правда из-за security notice оно сейчас закрыто) и из...
1 тег
JavaScript Garden →
Все заковыристые вопросы по JavaScript очень хорошо освещены здесь. Если вы уже хорошо разбираетесь в JavaScript и готовы становится профессионалами, несомненно этот ресурс сильно поможет.
Есть перевод на русский язык.
Март 2011
2 поста
3 тега
Установка PHP 5.3.6 на Snow Leopard
ОБНОВЛЕНИЕ: Установка PHP 5.3.6 на OS X Lion.
В очередной раз обновил свой MacBook Pro 15”, и как обычно понадобилось установить PHP не стандартной конфигурации. Обычно я использовал MacPorts для установки необходимых мне пакетов, но он ужасен.
Минуточку. А вообще зачем мне все это? Ведь, скажите вы, в Snow Leopard уже есть установленный и готовый к работе PHP 5.3. Поэтому привожу...
1 тег
Стандарты для front-end разработчиков (in english) →
Огромное спасибо ребятам из PUP за составление этих стандартов. Большинство моментов по делу.
Февраль 2011
1 пост
2 тега
Пошаговая установка Node.js на Windows без... →
Иногда бывает нужно установить Node.js на Windows. Официальных сборок для Windows пока не существует, поэтому приходится последовательно собирать самому.
Январь 2011
1 пост
1 тег
CSS3 введение (презентация) →
Очень хорошая презентация раскрывающая большинство особенностей CSS3.
Декабрь 2010
2 поста
2 тега
WebKit Font Smoothing
With the latest versions of Google Chrome and Safari 5, we can now move away from the -webkit-text-stroke hack I had previously endorsed, and move to a much better solution.
As pointed out by Tim Van Damme, the Webkit nightly builds had added -webkit-font-smoothing which actually let us set the type of font smoothing we want instead of hacking the browser into the right setting. And now with...
2 тега
Sneak: Fixing the background "bleed" →
I recently came up against an issue in Safari where the background colour of an element seemed to ‘bleed’ through the edge of the corners when applying both borders and a border-radius (see the image above). After seeing David Cole tweet about the same issue I resolved to find a solution,…
Август 2010
4 поста
3 тега
The Tweet Button for Safari 5
Совсем недавно Twitter сделали кнопку, которая при размещении на странице показывает количество упоминай этой страницы в твитере и дает возможность опубликовать ссылку на эту страницу у себя в твитер-ленте.
Я написал расширение для Safari 5, которое добавляет такую же кнопку вам в браузер. Теперь ваш браузер будет выдавать информацию о количестве упоминаний страницы и давать возможность...
3 тега
gollum: простая Wiki на Git смотрящая в мир...
Ребята из GitHub последнее время радуют нас новинками. Сначала это были GitHub:Jobs, портал с вакансиями которые сами подбирают и находят разработчиков, а теперь это gollum. Gollum это на самом деле не персонаж “Властелина Колец”, это простой wiki сервер построенный на Git и смотрящий в мир хорошим API.
Заметка о gollum в официальном блоге GitHub.
Из всего этого, самое клевое это то,...
3 тега
Анимация с помощью Émile
Думаю в каждом известном сейчас JavaScript фреймворке есть отдельный модуль занимающийся CSS-анимацией. Только эти фреймворки с каждым днем становятся все пузатее и пузатее, с огромным, “богатым” набором возможностей ;). На простых проектах зачастую нехватает только CSS-анимации, и в этом нам очень сильно может помочь мини-фреймворк Émile. Он содержит всего 47 строк кода, занимает в...
1 тег
Новые возможности в следующей версии PHP (5.4 или...
В течении последних нескольких недель в следующую версию PHP были включены весьма интересные возможности, это: “Array dereferencing support” и “Scalar type hints”. Итак, по порядку.
Array dereferencing support.
Эту возможность сообщество разработчиков просило очень давно, но каждый раз она откладывалась. Только недавно она была включена в исходники. Вот что она...
Июль 2010
2 поста
2 тега
13 Exception классов в библиотеки SPL для PHP
Исключения (Exception) появились в PHP с версии 5.0, они добавили хорошие возможности по обработке ошибок. Вместе с исключениями в PHP появилась стандартная библиотека классов (SPL), сейчас она содержит 13 готовых классов для обработки исключений.
BadFunctionCallException Неправильный вызов функции, возможно отсутствуют необходимые аргументы.
BadMethodCallException Неправильный вызов метода,...
1 тег
Июнь 2010
1 пост
3 тега
Используйте localStorage API вместо Cookie!
Один из способов оптимизации загрузки сайтов, это уменьшить количество Cookie отправляемых при каждом запросе к сайту.
В разделе спецификаций HTML5 Web Storage представлен объект localStorage, который позволяет хранить данные в виде ключ/значение на устройстве пользователя.
В данный момент localStorage реализован в браузерах: IE >= 8, FF >= 3.5, Safari >= 4, Chrome >= 3.0, Opera...
Май 2010
1 пост
3 тега
Raphaël JS 1.4 - теперь с поддержкой жестов →
thechangelog:
Dmitry Baranovskiy обновил Raphaël JS, это очень мощная JavaScript библиотека для векторной графики. С версии 1.4 появилась поддержка жестов, например это может быть очень удобным в устройствах таких как iPad.
[Исходники на GitHub] [Сайт проекта]
Апрель 2010
1 пост
Только те, кто предпринимает абсурдные попытки, смогут достичь невозможного.
– Альберт Эйнштейн
Февраль 2010
6 постов
1 тег
Why HTML5 Rocks →
Смотреть лучше в Webkit-based браузере.
5 тегов
Редактирование изображения в офлайне и последующая...
Мы с вами уже научились загружать файлы с помощью File API, Drag & Drop и XMLHttpRequest. Теперь мы можем развить тему применения новых технологий и рассмотрим возможность редактирования изображения еще до закачки на сервер. Для этого нам понадобятся следующие особенности HTML5.
Drag & Drop: для переноса локального изображения на сайт для редактирования и закачки.
localStorage: для...
2 тега
Самый мощный элемент в рекламе ~ правда.
– Уильям Бернбах
3 тега
Видео канал о HTML5 и CSS3
У разработчиков и верстальщиков теперь есть свой собственный канал — <!DOCTYPE>.
На данный момент записано уже 10 эпизодов. Можно подписаться через iTunes, RSS либо следить за выпуском новых эпизодов через Twitter.
Ведущие Nick Pettit и Jim Hoskins, рассказывают очень подробно о новинках HTML5 и CSS3. Разговор идет на английском.
Эпизоды выпускают раз в неделю.
Уже несколько недель...
3 тега
Обновление базы для locate команды в Mac OS X
Одна из моих любимых команд в Unix — “locate”. Она очень полезна когда нужно найти файлы через консоль. Однако после того как Snow Leopard установлен база для этой команды еще не создана. Ошибка при использовании выглядит так:
`/var/db/locate.database': No such file or directory
Я каждый раз забываю как создать/обновить базу для этой утилиты. Поэтому этот пост мне как заметка, ну и...
2 тега
Открыта предварительная регистрация на конференцию...
В Санкт-Петербурге в конце марта 2010 года пройдет первая в России конференция посвященная Zend Framework.
На днях закончился прием тезисов по планируемым докладам. Примечательно, что в состав докладчиков вошли ведущие участники русскоязычного сообщества ZF, опытнейшие специалисты и лично один из создателей фрэймворка.
Участие в конференции планируется сделать бесплатным или за небольшую...
Январь 2010
3 поста
2 тега
Автоматическое закрытие и открытие GitHub тикетов... →
Raphael Stolt предложил интересный вариант как с помощью PHPUnit можно открывать и закрывать “GitHub Issues” автоматически. Уже думаю это пристроить к моим тестам. Мне кажется в будущем для моего проекта это очень упростит работу с обнаружением ошибок.
Статья “Closing and reopening GitHub issues via PHPUnit tests” на английском, но с подробными примерами.
2 тега
Хорошая модель ветвления кода с помощью Git →
Есть очень много моделей “бранчевания” кода, и ведения нескольких версий. На данный момент наиболее близкая мне оказалась модель отраженная на изображении ниже.
Узнал я о ней из статьи Vincent Driessen: “A successful Git branching model”. Рекомендую познакомиться.
1 тег
Большинство бизнес-процессов на 90% состоят из потерь и лишь на 10% из работы,...
– Джеффри К. Лайкер
Декабрь 2009
14 постов
3 тега
Что интересного нас ожидает в Zend Framework 1.10
Сегодня, вышел первый alpha релиз новой версии Zend Framework под номер 1.10. В этом релизе меня заинтересовало очень много новых компонентов и несколько значительных доработок.
Вот список компонентов которые мне приглянулись и которые я буду использовать в работе после релиза:
Zend_Cache_Manager
Zend_Feed_Writer
Zend_Markup
Zend_Service_LiveDocx
Zend_Cache_Manager
Не секрет что в больших...
4 тега
Загрузка файлов с помощью File API, Drag & Drop и...
Все больше и больше новых спецификаций W3C реализуется в браузерах. Сейчас я вам хочу продемонстрировать как может выглядить закачка файлов с помощью современных технологий. В данном случае будут использоваться File API, Drag & Drop и XMLHttpRequest.
Сразу хочу дать ссылку на пример, он 100% работает в Firefox 3.6.
А теперь подробно разберем как работает скрипт.
Во-первых используется Drag...