Проба пера в HTML5 + canvas. Эффект ластика

Submitted by Ромка on Ср, 06/07/2011 - 15:42

Ромка аватар

Задача

Создать эффект "ластика" с помощью html5 тэга canvas. Суть эффекта простая: выводится картинка, поверх картинки выводится полупрозрачный фон, если пользователь нажимает на левую кнопку мыши и начинает двигать курсор по холсту, то полупрозрачный фон должен стираться. Конечный результат можно увидеть тут.

Задача будет разбита на 3 части:
1. сначала мы зальем картинку равномерным фоном и научимся стирать этот фон ластиком квадратной формы.

Доклад на DrupalConfMoscow 2011

Submitted by Ромка on Пнд, 25/04/2011 - 01:18

Ромка аватар

23 апреля 2011 года принял участие в конференции DrupalConfMoscow 2011. Вместе с Тарасом Савчуком рассказал о том, как мы настраивали Друпал и системное окружение, чтобы сайт forbes.ru мог выдержать нагрузку 250 тысяч уников в сутки. Ниже видео и текстовая версия моей части доклада.

 

Путешествие по Перу и Боливии. Часть 2

Submitted by Ромка on Чт, 24/03/2011 - 02:13

Ромка аватар

Отчет о путешествии по Перу и Боливии. Часть 2.

Это вторая часть отчета о путешествии по Перу и Боливии. Первая часть доступна здесь.

В Ла Пас мы прилетели около 10 утра (2 часа полета) и без промедления поехали на автовокзал где купили билеты до Оруру, откуда дальше поездом должны быль добраться до Уюни. Боливийские автобусы не отличаются комфортом. Духота, спертый воздух, орущие дети, дребезжащая музыка, доносящаяся из дешевых наушников десятка пассажиров. В общем, эта четырехчасовая поездка не доставила удовольствия.

Добравшись до Оруру мы поехали на железнодорожный вокзал где у нас были забронированы (но не выкуплены) билеты на вечерний поезд до Уюни. Как-то так получилось, что о нашей брони кассиру было ничего не известно, билетов в самый комфортный вагон уже не было, пришлось ехать в вагоне среднего класса (40 боливианов). Хотя обратно мы ехали в самом дорогом вагоне (90 боливианов) разницы между ним и вагоном среднего класса я не увидел, за исключением того, что в дорогом вагоне бесплатно раздали по бутерброду.

До Уюни мы добрались в 2 часа ночи, заселились в первый попавшийся отель, а утром купили билеты на обратный поезд. Здесь у нас была зарезервирована трехдневная экскурсия по окрестностям Уюни и, на этот раз, эта бронь внезапно не исчезла.

Солончак Уюни и немного фотошопа

Путешествие по Перу и Боливии. Часть 1

Submitted by Ромка on Чт, 24/03/2011 - 01:52

Ромка аватар

Отчет о путешествии по Перу и Боливии

С 23 февраля по 10 марта укатил в отпуск, на этот раз, впервые жизни, решил поехать в Южную Америку и посетить Боливию и Перу. Когда-то давно, лет 5 назад, я прочитал в «Максиме» о солончаке Уюни (Salar de Uyuni) и загорелся желанием увидеть его. Солончак Уюни — это самое большое в мире высохшее соляное озеро, в июне-августе оно выглядит как гигантская белая пустыня с идеально ровной поверхностью. В декабре-марте эта пустыня покрывается слоем выоды, глубиной в несколько сантиметров, от чего вся её превращается в гигантское зеркало, в котором отражается чистое небо и облака. Люди, стоящие на этом зеркале, выглядят так, будто ходят по поверхности воды.

Несколько панорам из путешествия по Перу и Боливии

Submitted by Ромка on Вс, 13/03/2011 - 17:25

Ромка аватар

Во время путешествия по Боливии и Перу сделал несколько панорам.

Куско

Панорама Куско

Панорама Куско

Солончак Уюни (Salar de Uyuni)

Панорама солончака Уюни

Панорама солончака Уюни

Пустыни в окрестностях Уюни

Пустыня в окрестностях солончака Уюни

Пустыня в окрестностях солончака Уюни

Закат в горах

Закат в горах

Авторизация на Drupal-сайте с помощью аккаунта ВКонтакте

Submitted by Ромка on Пнд, 17/05/2010 - 00:26

Ромка аватар

Разработчики ВКонтакте.ру не так давно открыли доступ к OpenAPI — интерфейсу, позволяющему обычным пользователям авторизоваться на сторонних сайтах с использованием своих учетных записей ВКонтакте.ру.

Я выкладываю первую версию модуля vk_openapi, который интегрирует Drupal 6 с Open API. Демонстрацию работы модуля вы можете увидеть на этом сайте. Кнопка для авторизации с помощью учетной записи вКонтакте находится в форме авторизации (в правой колонке внизу) и на странице с формой входа.

Особенности модуля

  • из учетной записи ВКонтакте выбираются все доступные поля и сохраняются в объекте $user;
  • каждому созданному модулем пользователю автоматически может быть назначена роль;
  • в качестве аватара нового пользователя может быть использован автар из профиля пользователя ВКонтакте;
  • созданный модулем пользователь может быть связан с существующим на сайте аккаунтом.

В ближайших планах: обновление статуса пользователя на основе данных из профиля ВКонтакте.

Скачать модуль можно на drupal.org. В продолжении более подробное описание модуля и инструкция по его установке.

Home sheep home

Submitted by Ромка on Ср, 17/03/2010 - 00:10

Ромка аватар

Есть такой замечательный физический движок box2d изначально написанный на C++ и позже портированный во flash. На этом движке сделано несколько десятков игр, большинство из которых не представляет из себя ничего интересного: примитивный геймлей, основанный на каком-либо способе разрушения хрупких конструкций, простейшая, даже схематичная, графика, отсутствие какого либо сюжета. Но сейчас я наткнулся на игру Home sheep home — смесь The lost vikings и модных тенденций в современном казуальном игроделании. Это лучшая мною виденная игра в своем жанре, очень рекомендую поиграть, жаль она очень короткая, проходится минут за 15.

А вот и ссылка на игру.

Backup-manager — настройка резервного копирования Linux-сервера на Amazon S3 за 5 минут

Submitted by Ромка on Сб, 13/03/2010 - 18:45

Ромка аватар

Настраиваю сейчас под свои веб-девелоперские нужды сервер на основе Debian lenny и когда дошел до настройки резервного копирования данных стало понятно, что задача эта хоть и простая, но очень уж муторная: нужно написать и отладить скрипты, которые будут архивировать нужные папки (причем желательно делать инкрементальные архивы), базы данных, хранилища subversion, а затем переносить эти архивы на удаленный сервер. Задача в общем-то посильная для любого опытного программиста, но минимум день-два написание этих скриптов отнимет.

Очень удачной находкой для решения этой задачи стал backup-manager — это бесплатный набор bash-скриптов, позволяющих:

  • архивировать любые папки, в том числе и создавать инкрементальные архивы. В конфиге просто указывается список директорий, которые должны быть скопированы, а также "черный список" файлов, которые копироваться не будут.
  • делать резервное копирование баз данных MySQL. В конфиге указываются логин и пароль mysql-юзера, имеющего доступ к базам, а всю остальную работу backup-manager делает сам.
  • делать резервное копирование svn-репозиториев, причем бэкап делается не копированием папки с хранилищем, а с помощью команды svnadmin dump.
  • копировать созданные архивы на удаленные сервера по FTP, SSH или (это самая важная для меня фича) в хранилище Amazon S3, а также записывать их на DVD.

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

Правда запустить копирование архивов на Amazon S3 с ходу не получилось, описание и решение возникших трудностей под катом.

Зима 2010. Поездка в Тайланд, Индонезию и Сингапур. Часть 1 — Пхукет и Джакарта

Submitted by Ромка on Ср, 03/03/2010 - 18:51

Ромка аватар

Ура! В этом году таки получилось (хотя и не без труда) вырваться в отпуск! Опять поехали с друзьями в Азию в этот раз по маршруту: Тайланд, остров Пхукет — Индонезия (ура, я впервые пересек экватор:)), острова Ява (Джакарта, Джокьякарта) и Бали (Денпасар, Легиан бич) — Сингапур — Пхукет.


Вся поездка заняла две недели (ох, как же хотелось побыть там еще хотя бы недельку!) и ниже мои о ней впечатления.

Фотографии из этого путешествия доступны в фотогалерее.

На Пхукете я оказался уже в третий раз: первые два раза был там летом 2005 и 2007 года. За последние три года остров очень сильно изменился: теперь там на каждом шагу русские туристы, в каждой второй кафешке меню на русском языке (которые, между прочим, от этого становятся значительно менее понятными), из торговых рядов постоянно доносятся завлекающие выкрики продавцов типа "Давай-давай наливай", которые ну ни как не стимулируют к посещению таких магазинчиков. Куда-то пропали толпы тайцев на мотороллерах, но зато появилось много автомобилистов, что привело к появлению пробок, от которых не спасает даже то, что часть дорог Патонга, района в котором я отдыхал все три раза, сделали односторонними.

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

Но, в любом случае, все эти изменения совершенно не мешают отлично провести время на этом замечательном острове: яркое, но не палящее солнце (ох, как мне такого солнца будет не хватать через несколько дней на Бали), теплое море, пустые тихие пляжи (ну это, разумеется, если отъехать на мотороллере или тук-тукере на пяток километров от основных туристических троп в сторону Карона, например), что еще надо человеку день назад мерзнувшему в холодной серой Москве?! Ну разумеется суп Том Ям, арбузный шейк и свежевыжатый манговый сок! :) Это, наверное, самая вкусная еда на свете!

Несколько статей о Друпале

Submitted by Ромка on Вс, 03/01/2010 - 23:16

Ромка аватар

В течение последнего года я написал три статьи о CMS Drupal, которые были опубликованы в бумажной и электронной версии журнала PC Magazine/RE. Сейчас я публикую "авторские"[1] версии этих статей. Каждая статья разбита на несколько разделов и ниже я привожу ссылки и описания каждого из них.

Первая статья "Разработка сайта на Drupal"

  • "Часть 1. Введение". В этой части рассказывается о возможностях Друпала "из коробки", а также об основных дополнительных модулях. Таксономия, ревизии, мультисайтинг — это совсем не страшно.
  • "Часть 2. Архитектура Друпала". Здесь сказаны общие слова о модульной системе Друпала, механизмах работы с формами, базой данных и кешем. Подробнее эти вопросы будут рассмотрены в следующих разделах и статьях.

    После прочтения первых двух частей этой статьи новичок, задающийся вопросом "подойдет ли Друпал для моего нового суперстартапа", должен на 100% определиться с ответом на этот вопрос. Вообще, в 95% случаев на этот вопрос можно ответить утвердительно, с оговоркой, что работать над проектом будет профессионал хорошо знакомый с Друпалом.

  • "Часть 3. Модули Drupal". CCK, Views, Imagecache, Panels, Ubercart — модули Друпала покрывающие 90% возникающих задач. В этой части статьи даны краткие описания каждого из перечисленных модулей.
  • Часть 4. Интранет-сайт на Друпале. Первый практический пример, в нем разрабатывается интранет-сайт для большой компании. Цель этого раздела — показать возможности, которыми обладает Друпал без доработки напильником. При разработке используются только существующие модули и не написано ни единой строчки программного кода. Аналогичное, только значительно более "кастомное" решение я успешно внедрил в одной из компаний со штатом в несколько сотен человек.
  • "Часть 5. Социальная сеть на Друпале". Точнее не социальная сеть, а коллективный блог с элементами социальной сети. Описание более новой версии примера описанного в этом раздедле можно найти на Швабрешвабр.
  • "Часть 6. Оптимизация Друпал". Этот раздел написал Александр Графов, он же axel. Друпал часто критикуют за низкую производительность. В этом разделе рассказано о приемах, позволяющих "разогнать" движок.

Вторая статья "Пример разработки модуля для Drupal"

Третья статья "Темизация Друпал"

  • "Часть 1. Введение". Во введении рассказано о шаблонных движках, которые могут быть использованы в Друпале, даны определения основных терминов, использованных в тексте (тема оформления, регион, блок), а также приведено несколько полезных ссылок.
  • "Часть 2. Анатомия темы оформления". Здесь дано подробное описание каждого из файлов-шаблонов, использующихся в темах оформления, а также рассказано о том, как определить отдельный шаблон для каждой страницы или группы страниц.
  • "Часть 3. Forms API и темизация". В этом разделе приводится пример разработки новой и изменения существующей формы с помощью Forms API Друпала, а также о изменении внешнего вида любого элемента формы в отдельности или формы целиком.
  • "Часть 4. Темизация Views". Небольшой раздел, рассказывающий о том, как изменить внещний вид данных, возвращаемых модулем Views.
[ 1 ] Отличий от "редакторской" версии немного, но они есть. В основном эти отличия касаются форматирования текста (например, в журнальной версии просили не использовать маркированные списки), а также трактования написания и произношения тех или иных заимствованных из английского языка технических терминов. Кроме того, я немного поменял разделение статей на разделы и сделал более читабельную подсветку программного кода.

Страницы

Subscribe to Ромка!eu RSS