Блог #old-site

Зимний Берлин.
Весна 2012. Германия — Франция — Италия. Поле
Мальта, март 2014. %!s(<nil>)
Новый Год 2009 (Амстердам). Парковка для великов
Перу и Боливия. Зима-весна 2011. Солончак Уюни. Дно
Март 2017. Берлин — Роттердам — Дюссельдорф. Ольчик в Берлине
Берлин, Люббенау, Потсдам. Май 2018. Вид внутри Рейхстага
Исландия 2023. Diamond beach
Берлин, Люббенау, Потсдам. Май 2018. И еще тюльпан
Новый Год 2009 (Амстердам). Ж/д станция
Тайланд 2018. %!s(<nil>)
Будапешт. %!s(<nil>)
Исландия 2023.
Март 2017. Берлин — Роттердам — Дюссельдорф. Внутри Марктхола
Тайланд 2018. %!s(<nil>)
Исландия 2023.
Хорватия, Млини 2017. Вид на побережье
Тайланд, Индонезия, Сингапур (зима 2010). Вид на Сингапур
Тайланд 2018. %!s(<nil>)
Мальта, март 2014. Вид
Киев, лето 2009. Это я
Тайланд, Индонезия, Сингапур (зима 2010). Опять я на сёрфе
Перу и Боливия. Зима-весна 2011. Кузко
Киев, лето 2009. Тут мы жили
Тайланд, Индонезия, Сингапур (зима 2010). Местный ходок
Москва-Берлин 2021. На пути в Фюссен
Исландия 2023.
Хорватия, Млини 2017. Вид на море
Гармиш-Партенкирхен, Миттенвальд, Инсбрук. Май-июнь 2022. Вид на Миттенвальд
Зимний Берлин.
Гармиш-Партенкирхен, Миттенвальд, Инсбрук. Май-июнь 2022. Вид на Инсбрук

Google Developer Day 2009

Побывал во вторник на конференции Google Developer Day 2009. Очень понравилось мероприятие, было много интересных докладов, но самое важное на таких конференциях — это общение в кулуарах. В этот раз, кроме того что встретился со старыми друзьями и познакомился с новыми ребятами, удалось немного пообщаться с самим Ларсом Расмуссеном, разработчиком Google Maps и Google Wave. Ларс очень обаятельный дядька, рассказал несколько слов о дальнейших планах развития Гугловолн, а также похвастался тем, что работа в Гугле для него — это настоящее удовольствие. Завидую. По доброму :)

DSC_0922.jpg

DSC_0922.jpg

А вот и отчеты о мероприятии моих друзей друпальщиков. Здесь впечатления Саши “GogA” Гоголева, а здесь Андрея “AndyCEO” Андреева.

Швабрашвабр2

Разработал и выложил в открытый доступ вторую версию своей “социальной” сборки CMS DrupalШвабрашвабр. В новой версии пользователям доступны:

  • персональные и общие фотогалереи,
  • система статусов (в стиле Фейсбука и Твиттера),
  • персональные гостевые книги (в стиле стены во вКонтакте),
  • списки друзей и посетителей,

а также от старой версии сборки остались доступны:

  • система блогов и коллективных блогов,
  • система рейтингования материалов, комментариев и “карма” (репутация) пользователей,
  • система распределения прав доступа к ресурсам сайта на основе кармы.

Дистрибутив сборки, подробная инструкция и скринкасты для самостоятельной настройки сайта с аналогичным функционалом доступны на Швабрешвабр.

В Политехническом музее

Был сегодня в Политехническом музее, в Москве, там, в одном из залов, у экспонатов вместо табличек с описаниями были вот такие надписи: DSC00819.jpg

DSC00819.jpg

Цена эсэмэски 50 центов, в ответ обещают выслать описание указанного экспоната.

Статья в PC Magazine/RE. Drupal: разработка модуля

2009-09-small.png В сентябрьском номере журнала PC Magazine/RE опубликовали мою статью на тему “Drupal: разработка модуля”. В статье рассмотрены базовые принципы разработки модулей для CMS Drupal и детально разобран пример разработки модуля “Курсы валют”, при реализации которого решены самые часто возникающие перед разработчиком задачи: создание форм (Forms API), работа с базой данных, распределение прав доступа, темизация.

В ближайшем номере будет размещена статья о темизации Друпала.

Поездка в Киев

В этом году, по мало зависящим от меня причинам, я пролетел с летним отпуском, по этому в качестве отдыха вырвался на 4 дня в Киев на проходящий там Drupal Camp 2009. Готовился выступить там с одним докладом, а остальное время отдохнуть и изучить достопримечательности города, но в результате получилось, что выступал три раза, причем все три доклада делал экспромтом, даже тот который подготовил заранее пришлось на ходу разбавить дополнительными подробностями.

Мероприятие получилось очень интересным и продуктивным. Я познакомился с большим количеством людей, с которыми раньше был знаком только заочно или не был знаком вовсе, а также в ночь с пятницы на субботу, вместо того чтобы отдыхать со всеми друпаллерами на афтерпати, сидел и делал новую демонстрационную сборку социальной сети на Друпале, о которой рассказывал в своем третьем докладе во второй день кэмпа. Сборка далась с боем, так как интернет в съемной квартире был просто ужасен, он периодически, раз в 20-30 минут, вырубался на полчаса-час (позже удалось связать эти события с включением/выключением холодильника :) по этому приходилось в недолгие минуты наличия сети, как в старые времена повременного диалапа, скачивать все потенциально необходимые файлы и открывать про запас страницы с документацией. В итоге получилась, на мой взгляд, интересная сборка, которую я рассчитываю допилить и выложить в общий доступ в течении 2-3 недель.

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

Читать дальше ➠

Пример разработки плагина для модуля CCK

На прошедшем в Киеве Друпал Кемпе я делал доклад, в котором приводил пример разработки плагина для Drupal-модуля CCK. В этой заметке я приведу краткий конспект своего доклада.

Любой создаваемый средствами CMS Drupal тип контента по умолчанию состоит из двух полей — “Тема” и “Тело сообщения”, а также из нескольких полей служебной информации (автор, дата публикации и т.п.). Модуль Content Construction Kit (CCK) представляет из себя графический интерфейс, позволяющий добавить к любому типу контента (в том числе и созданному сторонними модулями) любое количество дополнительных полей, например, поля для размещения картинок, аудио- и видеофайлов и т.п. Каждое из таких полей является плагином для CCK.

Далее в этом тексте пойдет речь о разработке подобного плагина. Материал ориентирован на людей, умеющих программировать на PHP, имеющих представление о модульной системе Друпала и опыт разработки модулей для него. Если вы интересуетесь основами программирования под Друпал, то прочитайте мою статью на эту тему, которая будет опубликована в ближайшем номере журанала PC Magazine/RE.

Читать дальше ➠

Swftools и модуль Pdf2SWfField для Друпала

Заказчику захотелось просматривать на сайте PDF-документы через flash-проигрыватель. Adobe Reader есть не у всех, да и выглядит он скучно, а к флешовому проигрывателю можно, при желании, прикрутить множество красивых эффектов. Ну и, разумеется, руками конвертировать файлы из формата PDF в SWF заказчик не захотел. Поиски готового решения ничего не дали, по этому я написал свой модуль для Друпала, который, используя бесплатный набор утилит swftools, конвертирует закачанный PDF в SWF и выводит его в самописном вьюере.

Модуль представляет из себя плагин к CCK, зависит от FileField и использует для вывода просмотрщика возможности модуля SWFTools (он не имеет никакого отношения к проекту swftools.org). Иными словами, для работы моего модуля нужны все три перечисленных выше модуля. Кроме того, на сервере должна быть установлена последняя версия swftools, я тестировал модуль с swftools 0.9 и глюков с конвертированием данных не обнаружил, за другие версии не ручаюсь. Последнее ограничение означает, что модуль не будет работать на 99,99% виртуальных хостингов. Установка swftools не должна вызвать проблем, особенно если воспользоваться вот этой инструкцией.

Демонстрация работы модуля доступна здесь: http://romka.eu/article/testovyy-dokument-demonstriruyushchiy-vozmozhnosti-modulya-pdf2swf.

Читать дальше ➠

Кнопки Home, End и Page Up, Page Down в Mac OS

На работе на прошлой неделе закупили всем сотрудникам Макинтоши. Это мой первый опыт полноценной работы за компьютером с Mac OS (пару раз до этого сидел в нете с маков, но это не считается). Классный компьютер: быстрый, мощный (хотя и относительно дорогой), в комплекте идет большое количество нужного софта, кроме того есть несколько очень удобных редакторов, полнофункциональных аналогов которых под виндой не встречал.

Но есть в этой системе для меня ооогромный минус (к слову, маководы со стажем это поведение минусом не считают): кнопки Home и End в текстовом редакторе возвращают курсор к началу и концу документа соответственно, вместо привычных по работе с Windows переходов к началу и концу строки. Кнопки Page Up и Page Down тоже ведут себя непривычно для пользователя винды. Аналог же виндового поведения кнопок Home и End — это комбинации Ctrl + влево и Ctrl + вправо. Да и то аналог это не полноценный — курсор возвращается именно к началу строки, а не к началу текста в строке, а весь программный код, обычно, начинается как минимум с одного-двух символов табуляции.

В общем, неделю провел в попытках привыкнуть к такому поведению, чтобы стать настоящим тру-маководом, но не вышло. Нашел и поставил себе замечательную программу KeyFixer (и ее версию для Firefox), которая возвращает назначает кнопкам Home, End, PgUp, PgDown классическое для винды поведение. Теперь я доволен.

P.S. Остался еще ряд неудобностей, к которым со временем надеюсь привыкнуть или побороть.

Читать дальше ➠