Осень, сезон конференций в самом разгаре. На этой неделе был на двух, еще несколько предстоит в этом месяце. В этом посте вкратце хочу рассказать о прошедшей в понедельник YAC2012 от Яндекса, чуть позже будет пост и о прошедшем сегодня HPC aka BitByte. На "яке" про highload не было совсем практически ничего, так что если Вас это не смущает - приступим.
Начало
Началось все с презентации Яндекс.Браузера - если в двух словах, то это форк Chromium (как следствие - в основе WebKit) с встроенным Opera Turbo и сервисами Яндекса. Я явно не являюсь их целевой аудиторией, но для не-айтишников совсем не знающих английский - может быть и окажется актуальным. К слову, когда проверял "рабочесть" ссылки узнал, что версии под Linux у него нет, что странно, так как сам Chromium прекрасно работает, им и пользуюсь ежедневно.
Всего на конференции было 4 потока, выбрать на какой идти было не сложно методом исключения:
- Я не большой фанат виртуализации, так что "Облачные технологии" вычеркнул первыми;
- С математикой знаком лишь по наслышке благодаря гуманитарному образованию, так что на "Интернет-математике" ловить тоже особо было нечего;
- Разработка приложений под Android - дело неблагодарное, так что "Yandex Mobile Camp" также не стал моим выбором (кстати, у них якобы запустился "конкурент" Google Play);
- В итоге я весь день провел во втором зале с названием "Фронтенд", который ближе к вечеру перетек в "Системное администрирование" - темы хоть и не совсем по моей части, но хочешь-не-хочень, а приходится иметь с ними дело чуть ли не каждый день.
Фронтенд
Charles McCathieNevileChaals (Яндекс) - Yandex and W3C- В прошлом году Chaals выступал на YAC, представляя Opera и W3C, теперь он работает консультантом в Яндекс по этой же части.
- Соответственно Яндекс недавно стал первым полным участником W3C из РФ, думаю в основном благодаря ему.
- Вкратце про W3C - это международное сообщество компаний, которые сообща предлагают и развивают разного рода стандарты в сфере Интернета. Работа организована в ввиде нескольких десятков узкотематических рабочих групп; каждая из компаний-участников может присоединиться к любой из них выделив под это какую-то часть рабочего времени своих сотрудников. Работа и обсуждения в основном ведутся удаленно по e-mail, но регулярно проводятся и оффлайн встречи рабочих групп.
- Участие платное, ориентировочно: полное участие стоит 70 тыс. евро в год, ограниченное участие для исследовательских центров, государств и т.п. - 7 тыс. евро в год, для стартапов - порядка 1 тыс. евро в год.
- Почти неофициально было сказано, что первым стандартом, который предложит Яндекс будет prefetch карт в браузер.
- Александр Чупахин (Яндекс) - Профилирование и ускорение сложных JavaScript-систем на примере API Яндекс.Карт
- Мораль данного доклада: если у Вас в проекте много сложного JavaScript, то его стоит профилировать.
- Собственно карты и прочая разного рода графика - один из немногих use case'ов, где есть большой простор для оптимизации производительности JS. Еще из потенциальных вариантов - клиентская часть при постоянном соединении между браузером и сервером. Для типичных же сайтов это актуально довольно редко.
- Помимо собственной системы тестирования и оценки производительности они пользуются Google Speed Tracer - рекомендую взглянуть, если занимаетесь чем-то подобным.
- Jan Jongboom (Cloud9) - The Architect Way
- Выступал на хорошем западном уровне, но не знаю, что он забыл на фронтенд секции. Речь шла об их фреймворке под названием Architect для node.js
- Дмитрий Барановский (Adobe) - Raphaёl - past, present and future
- Автор, судя по всему, популярной библиотеки для "рисования" в браузере без флеша и canvas, о ней и рассказывал.
- Владимир Агафонкин (Cogniance) - Progressive Enhancement: практичный подход к современной кроссбраузерной разработке
- Докладчик - автор еще одной популярной JS-библиотеки, на этот раз для отрисовки карт - Leaflet, которая используется во многих крупных интернет-проектах, например в foursquare, Flickr и Wikimedia.
- Суть доклада: нужно разрабатывать не для современных браузеров и потом добавлять "костыли" для старых и мобильных браузеров, а наоборот - сначала базовый HTML и функционал, потом базовые CSS и JavaScript, которые будут работать практически везде и дадут 80-90% желаемого внешнего вида и уже только потом реализовывать все более и более навороченные "фишки" из HTML5, CSS3 и прочих нынче модных аббревиатур.
- С данным принципом в целом очень даже согласен, сам стараюсь по возможности в этом "направлении" работать, когда приходится иметь дело с фронтендом. Хотя в базовой HTML версии все же иногда имеет смысл пожертвовать частью функционала, но это уже детали.
- Алексей Емелин (Яндекс) - Тестирование "безDOMных" объектов современных веб-интерфейсов на примере API Яндекс.Карт
- Яндекс.Карты реализованы довольно хитрым "многослойным" образом - часть на canvas, часть на DOM-дереве, так что тестировать и правда сложновато.
- Поверхностно показывали закрытую систему для тестирования карт, работает примерно так: "создается новый функционал вручную тестируется -> эта версия берется за эталон -> когда появляется новая версия старого функционала - открываются два окна браузера, в одном запускается эталон, в другом новая версия -> если скриншоты совпали - все ок, если нет - вручную смотрим что не так -> повторяем для всех популярных браузеров".
- Константин Горский (Яндекс) - Что разработчикам интерфейсов нужно знать о дизайне
- Довольно доходчиво и с картинками излагалась простая мысль, автором которой, кажется, является Стив Джобс: "Дизайн - это не как что-то выглядит, а как оно работает".
- То есть чтобы стать дизайнером, не нужно заканчивать художественный ВУЗ, достаточно начать думать о том что, как и зачем делают пользователи и как сделать так, чтобы им это все давалось легче и приятнее.
Системное администрирование
- Demir Ozgur (Snapfish/HP) - System Administration Automation in High Scale
- Не смотря на многообещающее название, доклад оказался чрезвычайно примитивным. Базовая теория автоматизации админских задач, плюс какие-то общеизвестные байки о Facebook и ком-то еще.
- Виталий Антоненко (ЦПИ КС) - SDN - технология удобного управления компьютерной сетью
- Доклад был об OpenFlow - альтернативному открытому протоколу сетевой маршрутизации, основной сферой применения которого, по словам докладчика, являются научные и исследовательские проекты.
- Я думаю, в сфере интернет-проектов он тоже применим, но о прецедентах не слышал.
- Владимир Неверов (Яндекс) - Отказоустойчивость и балансировка нагрузки без регистрации и смс
- Основная тема доклада - IPVS, метод балансировки нагрузки по-умолчанию в Яндекс.
- Используется в совокупности с балансировкой на уровне DNS и проприетарными аппаратными решениями.
- Владимир Иванов (Яндекс) - Как запускали IPv6 в Яндексе
- Не смотря на небольшие проблемы с дикцией, Владимир живо и интересно закрыл секцию, апплодисменты были более чем заслужены.
- IPv6 уже работает. В большинстве случаев. Но у некоторых интернет-провайдеров он капитально сломан, что может приводить к недоступности сайта у некоторого % пользователей.
- Для минимизации ущерба в Яндекс используют whitelist'ы на DNS серверах, которые выдают IPv6 только пользователям определенных интернет-провайдеров.
- К слову, Google вроде как уже перешел наоборот на blacklist'ы ISP, у которых IPv6 точно сломан. Подробнее тут.
Заключение
Конференция от Яндекса оказалась хороша для общего развития. Но практическая ценность подобных мероприятий все же от года к году неуклонно падает. Организаторам определенно нужно более тщательно фильтровать докладчиков на адекватность и темы на востребованность.
По организации все было в целом более-менее стандартно, подробнее можно почитать у меня в Твиттере (всегда рад новым фолловерам) или по хэштегу, пока не далеко еще опустилось по ленте.
P.S.: Я все еще в поисках бесплатного билета на HighLoad++ - если кто может с этим помочь, буду благодарен :)