Выпуск 34. Декабрь 2015
← От редактора | Содержание | Взгляд на 2015 г. →Впечатления от воркшопа Saint Perl 2015
Не изменяя традиции 19 декабря 2015 г. прошёл седьмой ежегодный воркшоп Saint Perl для всех любителей и профессионалов мира Perl в Санкт-Петербурге.
Для меня незабываемые впечатления о конференции начались ещё с момента прибытия в Санкт-Петербург: затянутое серыми облаками небо, моросящий дождь и +6ºC. Необычно для середины декабря, да и последующие дни ставили температурные рекорды.
В этом году конференция проходила на площадке, предоставленной генеральным партнёром конференции — компанией DataArt. На сайте конференции зарегистрировались 53 человека, причём трое из них сделали это уже в день конференции. Не все сразу смогли найти вход в здание, поэтому за 10 минут до начала зал был ещё почти пустой, но вскоре он заполнился, подошли, возможно, не все, но близко к заявленному числу. Была даже видеосъёмка, но получилась ли она и где будут записи, пока неизвестно.
Открыл конференцию Сергей Романов, поприветствовав слушателей и рассказав о плане конференции и намечающихся мероприятиях.
Первый доклад назывался «Протокол HTTP/2. Зачем и как использовать в Perl», и это был мой доклад. Мне трудно сказать, как восприняли доклад слушатели, но 40 минут для меня пролетели незаметно. Большая часть доклада была посвящена протоколу HTTP: истории протокола, недостаткам HTTP/1.1 и достоинствам HTTP/2. Затем проводился обзор реализаций для Perl: подробно рассмотрен Net::Curl
и его работа с HTTP/2, а также Protocol::HTTP2
— как возможная основа для реализаций клиентов и серверов с поддержкой HTTP/2.
После доклада был вопрос о судьбе WebSocket, и для многих стало откровением, что WebSocket не работает поверх HTTP/2 и никакой альтернативы для его замены HTTP/2 не предлагает. Разработка спецификации WebSocket поверх HTTP/2 заглохла и похоже никому не нужна.
Следующим докладчиком должен был стать Илья Чесноков, который готовил интерактивный доклад, но из-за технической накладки доклад пришлось перенести. Поэтому следующим выступал Михаил Матвеев с докладом «Инструменты для работы с изображениями в Perl».
В докладе был сделан обзор самых популярных модулей Perl для работы с изображениями: ImageMagick, GraphicMagick и другие. Как обычно, вопрос выбора модуля возник в результате работы над практической задачей: написание своей собственной капчи. Особо в докладе был выделен модуль Imager, который в отличие от других библиотек не требует установленных C-библиотек с заголовками (что иногда доставляет проблемы при сборке на некоторых дистрибутивах), так же написан с использованием C/XS, но собирается без проблем, работает быстрее, хоть и не поддерживает большого спектра форматов. Были представлены бенчмарки, в которых также можно было сравнить различия в скорости работы модулей.
Далее был обеденный перерыв, а затем Илья, для которого нашли переходник для видео-разъёма, смог подключить свой ноутбук и показать доклад «Технологии асинхронного программирования». Презентация была сделана с помощью Vroom — инструмента, позволяющего показывать слайды в редакторе vim. Доклад шёл целый час и фактически объединил в себе несколько больших докладов по различным техникам асинхронного программирования: это форки, треды и сопрограммы. Было рассказано, чем ужасны Perl треды и почему Coro — это единственные нормальная реализация тредов (хотя это и не совсем треды в привычном понимании). Бенчмарки иллюстрировали различия в работе различных реализаций асинхронных техник, как по нагрузке процессора, так и по использованию памяти.
Следующим докладчиком был Денис Федосеев, который представил доклад «Легаси это не страшно». Денис поделился опытом борьбы с огромным легаси-проектом, где нет ни тестов, ни разделения на пакеты, ни даже элементарного use strict
(на этом месте особо чувствительные перловики должны упасть в обморок). Рассказал о техниках изоляции кода, способах ведения исправлений. Презентация была очень красочной, позволяя целиком проникнуться атмосферой безысходности: живые мертвецы, велосипеды с квадратными колёсами. Но в итоге был сделан вывод, что выживать с легаси можно, и это не страшно.
После кофе-брейка выступил лидер Moscow.pm Павел Щербинин с докладом «Index Condition Pushdown», который был посвящён одноимённой фиче, которая появилась в MySQL 5.6. Слайдов как таковых было не много, в основном все объяснения зарисовывались на флипчарте, при этом очень активно происходило взаимодействие со слушателями, собственно это и было ближе к духу воркшопа (семинара), когда можно не только слушать, но и пытаться понять, о чём речь и пытаться отвечать на вопросы ;-)
Доклад закономерно породил вопрос: зачем MySQL, если есть PostgreSQL, но флейм был беспощадно отсечён — каждый использует то, что его устраивает и в чём он лучше разбирается.
В завершении конференции были блиц-доклады. Надо сказать, что большинство докладов были зарегистрированы уже по ходу конференции.
Artur Penttinen сделал сразу два блиц-доклада о том как можно распарсить конфигурационный файл однострочником и частный случай с конфигурационным файлов в формате ini.
Илья Чесноков, «О регулярности». Немного философский доклад о событиях в нашей жизни и формировании полезных привычек, например, регулярное проведение конференций или ежегодное ведение цикла рождественских статей Perl Advent Calendar.
Илья Чернов, «PSPlot — графики в EPS». Доклад был посвящён собственной разработке: модулю psplot, который позволяет рисовать двумерные графики в формате EPS.
Доклады Михаила Иванова «SWAT» и Алексея Мележика «SparrowHub» были логически объединены и посвящены системе Swat — DSL-языку и утилитам для быстрой разработки автоматических тестов web приложений и его спутнику sparrowhub, служащего для хранения сценариев тестирования для наиболее популярных веб-приложений (типа wordpress).
Сергей Романов в докладе «Christmas is coming» наконец упомянул то, что практически не звучало на конференции: Perl 6. На рождество нас всех ждёт стабильный релиз Perl 6, которого так ждали последние 15 лет.
После окончания докладов последовала традиционная after party в одном из баров северной столицы (а для некоторых и не в одном). Но это уже другая история, впечатления о которой трудно выразить словами, но можно измерить в единицах объёма ;-)
← От редактора | Содержание | Взгляд на 2015 г. →