17 мая 1:00
Я в Москве, на Каховке. Успел до закрытия метро добраться. Темно. Никого нет (мне показалось это странным, Москва, в ночь с пятницы на субботу и на улице никого нет). Мне нужно найти дом Андрея Шитова. Иду через темный-темный парк по узкой тропинке. В Ростове, в таком месте, так поздно уже убили :) На удивление, дом нашел быстро и никого по дороге не встретил.
Познакомился с
Андреем Шитовым (
itim), вот он, автор
perl6.ru. Помню себя на 3м курсе, когда я с фанатизмом читал статьи по Perl 6 на русском языке.
Я в организаторах конференции (ух ты :), начал делать баджики (оказывается, правильно говорить не беджик, а бАджик). Зарегистрировалось на конференцию
241 Perl-человек, соответственно, 241 баджик: разрезать, заламинировать, сделать дырочку для веревочки и разложить в алфавитном порядке (очуметь, стоило получать высшее :).
Сделав с Андреем все организационные моменты, время 5 часов утра. Такси в 8. Черт - придется спать :)
17 мая 9:30 ВШЭ. Проходная. Организаторов нет в списках :) - на самом деле, там два списка, охраники тупо смотрели только в один. Зал 1 - аудитория на 9м этаже - очень даже симпатичная, я не ожидал.
Попутно я узнаю, что правильно произносить название конференции
YAPC - не яписи, а
япси. Данная конференция - реально совсем другая конференция, люди собираются для того чтобы пообщаться, рассказать о своих наработках, о том, что их удивило/порадовало/огорчило в Perl - совсем не официально, все плавно, без суеты и что мне очень понравилось без пафоса - настоящий "social meeting" :). Я ожидал официальности, присущей большинству конференций.
Пришел представитель из AGAVA и принес 500 листовок (в теории - каждому по 2? :), в листовке ни слова о Perl.
17 мая 10:30 Началась регистрация. Каждому участнику конференции был присвоен barcode, по которому идентифицировали. Странно, но почему-то некоторые пришедшие не зарегистрировались :) Каждому участнику выдавался баджик, расписание, задание на Perl Golf и фирменная майка
YAPC::Russia. На майке следующий Perl-код:
use YAPC::Russia v2.008 qw/May Perl/ or die;
Perl Golf включал 2 задачи, лучшее решение задачи - то, которое работает (для каждого задания были свои специфичные условия) и содержит минимум Perl-букв. Единственное ограничение - организаторы не участвовали :(
Познакомился с
Алексом Капрановым (
quappa, Рамблер-почта),
Иваном Сережкиным (
deepone, Яндекс),
Дмитрием Карасиком (
mcfist, Copengagen.pm, автор нереального графического toolkit'а - Prima). Замечательные люди, особенно Ваня :)
Первый момент, который меня расстроил - оказывается на Mac'ах Андрея мои презентации работают без пульта, разные версии KeyNote, скачать новую версии не получается, т.к. WiFi очень был медленным. Я так расчитывал на пульт, т.к. планировал выступать стоя перед аудиторией. Тут уже ничего не поделаешь - без пульта, так без пульта.
После регистрации началась конференция. Вступительное слово от Андрея Шитова.
YAPC::Russia - первая YAPC-конференция в России и второе крупное Perl-мероприятие в России (ура!).
Первый доклад -
"IO::Lambda" (Дима Карасик). Проблематика - в том, что POE не устроил своей абстракцией, хотелось легкого решения. Получился мультиплексор на анонимных функциях (поэтому лямба), без очереди задачи как таковой. По производительности - дима не мерил, но его устраивает :)
Далее кофе-брейк, и новые доклады.
"Профилирование Perl-кода" (Алекс Капранов). Алекс продемонстрировал несколько модулей, результаты применения на своих проектах, нахождение медленного звена. Почему-то аудитория расстроилась, что Алекс не рассказал про память. А что тут рассказывать - на CPAN есть один модуль, но он больше не поддерживается.
Далее был мой доклад
"May POE". Сразу же скажу о втором моменте, который меня расстроил - проектор был слабенький и плохо показывал цвета, на некоторых слайдах розовый цвет шрифта на черном фоне смотрелся как черный на черном - было не ожиданно (раньше я проверить не мог + KeyNote подвел). Доклад был обзорный, включал в себя рассказ про POE, уровни абстракции, наличие многочисленных компонент и фильтров, преимущества и недостатки, рекомендации и содержал несколько простых примеров POE-машин. Да-а, первый блин комом - первое выступление перед такой аудиторией было волнительное, голос дрожал, плюс моменты, которые меня расстроили - постоянно бегал к ноуту, чтобы переключить слайд. После выступления - хотел себя съесть за такое, но позже успокоился, у меня есть еще одна попытка - блиц.
Сразу же после моего доклада в другом зале начался
мастер-класс по POE Ивана Сережкина. Но сразу возникли проблемы с интернетом. Ваня только на него и расчитывал. Он планировал показать работу HTTP-клиента и Jabber-уведомление.
Взамен было решено показать резолвинг DNS. Вот тут я стал удивляться от аудитории, несмотря на то, что это стандартная задача, всем было интересно - как пачку доменов можно на POE резолвить. Но тут опять вмешался интернет и ничего путного показать не получилось. После этого Ваня посчитал сколько происходит вызовов событий в секунду, опять все удивились от цифр. Очень странно - такие простые вещи, а аудитория диву дается :)
После моего доклада, мастер-класса и вопросов, которые задавали - у меня сложилось впечатление, что аудитория З
НАЕТ ЧТО ТАКОЕ POE, но никто ничего толкового на нем не делал, большинство не понимают как вообще все работает в POE... Очень странно!
Далее был перерыв на обед, который удался, т.к. основная часть организаторов чуть-чуть опаздала на продолжение, заставили аудиторию ждать :) Я тесно пообщался с Ваней по поводу POE, первоначально мы планировали мастер-класс на двоих, но я не успел подготовиться. Показал пару своих исходников (POE), ему понравилось, но так он не будет делать, т.к. немного другие задачи решает в повседневности :) Мне очень понравилось, что всю дорогу вся наша компания
разговаривала о Perl и только о Perl (вот это да).
17 мая 15:30
Мы пришли с обеда, шел доклад про
совместимые Perl/mod_perl системы (Николай Лавринский). Все взаимодействие, о котором рассказывал докладчик, было построенно на SOAP, даже работа с БД - меня это удивило.
Далее был доклад
"Perl и Web2.0" (Александр Котов). Первая часть доклада повеселила, особенно цвета графиков, которые проектор отказывался показывать - на одном слайде получилось, что все языки программирования имеют свой цвет, а Perl цвет фона, т.е. Perl везде :) Вторая часть - не особо, т.к. рассказывала про CGI::Ajax.
Далее было незапланированное выступление Руслана Закирова (bestpractical), рассказал о том, что он зарабатывает, публикуя модули на CPAN, призвал всех разработчиков публиковать модули. Я загорелся! Все руки не доходят опубликовать модули на CPAN, а ведь есть что :)
На этом первый день конференции завершился.
Второй день обещал быть интересным, т.к. запланирована была секция блиц-докладов.
Из организационных недостатков могу выделить - слабый проектор, плохой WiFi и затяжной обед :)
18 мая 9:45
Я выспался, обдумал свое первое выступление, настроился на новое. Скачал новую версию KeyNote, заменил розовый цвет на желтый в презентации для блиц-доклада, попробовал пульт, работает (ура). В общем "пришел подготовленым на встречу к звезде" :)
Начался второй день. Аудитория сократилась, но появились и новые лица. Повезло тем, кто пришел во второй день, раздавались майки в неограниченном количестве. Я взял на весь офис (благо, офис не большой :)
Двое выступающих отменили свои выступления на второй день по неизвестным причинам. один из них прислал песню, посвященную своему докладу, мы не были технически готовы к этому :)
Секция блиц-докладов. Алекс Капранов принес
музыкальный треугольник, хотя в идеале должен быть
гонг, но это в следующий раз :) Выступление должно быть максимум 5 минут, без вопросов. По истечению 4 минут - 2 удара в "гонг", 5 минут - 1 удар.
Очень живо все прошло. Реально хорошая тема. Темп сумашедший. Все доклады как на одном дыхание. Мне очень понравилась идея Ивана Сережкина с блицом - полностью молча, в редакторе набирает код, захватывает. К сожалению, в результате не заработало, но Ваня сорвал аплодисменты. Понравился блиц Дмитрия Карасика про секретные операторы, особенно оператор тесла, в виде отверток и монгольский :)
Мой блиц-доклад назывался
"CGI.pm - зло?!". Немного дерзкий, вызывающий доклад, всегда рушить стереотипы тяжело, поэтому я выбрал именно такой стиль (хотя вписывается в рамки блица). Возможно, на следующую конференцию подготовлю полноценный доклад по "идеальному" CGI.pm, обязательно с вопросами :)
На кофе-брейке ко мне подошел Олег Оболенский (я только потом понял, что это именно он подошел :) и спросил про Progress bar, он думал, что сервер полностью получает запрос, только после этого передает управление обрабочику, поэтому сделать Progress bar в обработчике невозможно. Мы долго дискутировали по этому вопросу, к обсуждению подключился Александр Лурье.
Далее были доклады по Parrot, виртуализации и
"UTF Perl Practicе" (Владимир Перепелица). Останавлюсь на последнем. Доклад был посвящен использованию UTF в Perl. Я узнал, что прагма utf8 содержит функции по перекодированию, которые быстрее аналогичных в модули Encode, только они весьма специфичные. Докладчик в своем выступлении упоминул о том, что CGI.pm все-таки поддерживает UTF-8 (ссылаясь на меня, что я сказал о противном). Первым вопросом был мой, я уточнил, что CGI.pm все-таки умеет, но НЕ корректно работать с UTF-8, привел реальный пример. Плюс докладчик ничего не сказал про ключики у perl такие, как CDSA.
Обед во второй день решили отменить :)
После "обеда" был доклад
про CMS для сайта Travel.ru, основная особенность - генерация статичного контента, БД заточена на работа только с ТАКИМ каталогом, абстрактная работа с объектами и прочее. И последний доклад
про ORM в Perl - он есть, но медленный, несколько реализаций, преимущества и недостатки каждого.
Были подведены итоги Perl Golf, мне понравилось решение первой задачи (на сайте 2 или 3 решение), по-моему, данное решение использует новый секретный оператор
"сиськи" :). И итоги всей конференции.
В целом, конференция мне очень понравилась, очень много перловиков, я никогда столько Perl-программистов на единицу площади не видел, все постоянно общаются только о Perl и на Perl, это рельно круто :)
Мой вывод - такие мероприятия должны существовать и их должно быть больше в России, япси, воркшопы, хакатоны
must be и необязательно в Москве :) Perl-люди - очень позитивные и инересные, по крайней мере, те, которых я видел :)
Хочется поблагодарить организоторов YAPC::Russia "May Perl" 2008 -
Moscow.pm и лично
Андрея Шитова.
На последок:
use Perl or die;
ЗЫ: Официальный сайт данного мероприятия
здесь, расписание всех выступлений
здесь, официальный очет
здесь, фотки
здесь и мои доклады
здесь.