Yet another Conference 2012

1 октября 2012
Материалы опубликованы

YaC — это отличная площадка для того, чтобы не просто поговорить о rocket science и технологиях для жизни, но и обменяться опытом, поделиться идеями и вдохновиться на новые свершения.

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

Как и в прошлом году, среди докладчиков были представители ведущих отечественных и зарубежных интернет-компаний, а также деятели академической науки.

Выступления прошли как на русском, так и на английском языке.

В холле мы организовали выставку, где можно было не только познакомиться с новыми технологиями, но и попробовать их в действии.

Видеозаписи докладов и другие материалы конференции будут появляться на сайте по мере готовности.

Технологии

Танк
Яндекс.Танк - это инструмент для проведения нагрузочного тестирования и анализа производительности веб-сервисов и приложений.
Cocaine
Cocaine (Configurable Omnipotent Custom Applications Integrated Network Engine) — это PaaS-система с открытым исходным кодом, позволяющая создавать облачные хостинги приложений наподобие Google App Engine или Heroku.
БЭМ
БЭМ (Блок, Элемент, Модификатор) — это опенсорс-технология разработки сайтов.

Опубликованные материалы

09:00Регистрация. Welcome coffee.
10:00Открытие конференции YaC 2012
10:20Презентация — Аркадий Волож
Облачные технологии
11:00Choosing a fault-tolerant database to support cloud infrastructure

A cloud operating system requires the ability to self-heal in the face of failures. To do so we need a highly resilient database which has some features of a distributed database, and sufficient replication to tolerate single node failures. Additional desirable features include simple setup, and a highly automated recovery process.

We have evaluated two "NoSQL" databases at Nimbula Director to determine the resiliency, performance and suitability for a cloud operating system. In this talk we will discuss Cassandra and MongoDB, two candidates that we selected after an initial cursory evaluation. The key focus areas of the talk discuss how we:

  • Migrated from a PostgreSQL based solution to these databases.

  • Evaluated the performance of these databases within a prototype.

  • Evaluated the resiliency of these databases within a prototype.

We will also talk about some of the issues we experienced in practice and how we have addressed those issues.

11:40Инфраструктура облачных вычислений на основе ядра Illumos

Ядро Illumos — это потомок ядра OpenSolaris с открытым кодом. На базе Illumos возникли несколько проектов, среди которых — Joyent SmartDataCenter и NexentaStor. NexentaStor выгодно использует преимущества файловой системы ZFS, которая поддерживается ядром Illumos, а SmartDataCenter предоставляет инфраструктуру систем облачных вычислений, используя возможности ядра Illumos с интегрированным KVM для двухслойной виртуализации.

В докладе рассматривается архитектура обоих продуктов, их возможные применения для облачных вычислений и хранения данных, а также случаи использования известными компаниями — LinkedIn, Telefonica, Zend и другими.

12:20CRIU: больше, чем живая миграция для Linux контейнеров

Доклад рассказывает о проекте CRIU (Checkpoint/Restore in Userspace) — сохранения (checkpoint) полного состояния работающих процессов с последующим их восстановлением (restore), реализованном по большей части как пользовательская (userspace) программа. Начинается он с истории о том, почему в ванильном ядре Linux до сих пор нет реализации checkpoint/restore, и как мы это побороли. В основной части доклада рассматриваются механизмы работы CRIU, в частности как сохраняются и восстанавливаются процессы, открытые файлы, память, сетевые соединения, терминалы и т.п. В заключении рассказывается о том, для чего можно использовать такой механизм (а это не только "живая" миграция), даётся текущий статус проекта и творческие планы разработчиков, и, конечно, демонстрация основных возможностей CRIU на живой системе.

13:00Обед
14:00Облачное распределенное хранилище данных для виртуальных машин (и не только)

Каждый уважающий себя разработчик хоть раз в жизни хотел написать свою систему хранения данных, но не у каждого был шанс :-) В этом докладе мы расскажем о том, почему нам потребовалось написать свою распределенную систему хранения данных, а существующие решения не подошли. Покажем, почему это решение смелое и нетривиальное и как, все-таки решившись на такое, избежать шишек и достичь подобной цели. Будем говорить много умных слов, таких как «paxos», «репликация» и «consistency», а также покажем, как из них можно построить продукт.

14:40Ваше собственное облако — война за независимость

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

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

15:00Эффективная маршрутизация в вычислительном облаке

В современном мире облачных платформ маршрутизация занимает особое место. Большинство провайдеров PaaS-решений предпочитают не раскрывать деталей работы своего роутинга, считая этот вопрос своим ноу-хау. Как эффективно обработать огромный поток запросов в облако? Как обеспечить надёжность доставки данных? Как поступить с масштабированием? Я отвечу на эти и другие вопросы, рассказав о нашем балансировщике — Cocaine Dealer.

15:20Как управлять облаками

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

15:50Кофебрейк
Тестирование
16:20Terra — событийная система мониторингов

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

17:00Thucydides — приемочные тесты нового поколения на базе WebDriver

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

Thucydides представляет новое поколение инструментов для автоматизации приемочного тестирования. В основе этого open source инструмента лежит WebDriver, что делает инструмент удобным для тестирования веб-приложений. Выбрав Thucydides, вы получаете способ моделировать требования и привязывать их к тестам, возможность автоматизировать критерии приемки функционала, структуру для написания тестов с использованием Page Object и Steps Dictionary, построение детальной отчетности по запускам тестов и покрытию функциональности тестами, а также возможность легко отслеживать и публиковать отчеты о статусе и прогрессе проекта.

17:40Crawling of Rich Internet Applications и проект «Роботестер»

В докладе я расскажу о создании полностью автономных инструментов для тестирования веб-интерфейсов. Чтобы такой инструмент (робот) мог осуществить тестирование, он должен «обойти» весь сайт, то есть побывать на всех его страницах (или хотя бы побывать во всех состояниях одной страницы). Поэтому наши проблемы очень близки проблемам, возникающим при создании поисковых роботов. Значительная разница заключается в том, что поисковый краулер переходит со страницы на страницу по ссылкам, а для задач тестирования нам необходимо взаимодействовать с элементами страницы: заполнять формы, вызывать ajax-действия и так далее.

К тому же современные сайты (RIA) имеют фактически бесконечное число состояний, поэтому надо применять новые подходы как при построении стратегии обхода, так и при оценке действий робота (трудно оценить, какую часть сайта мы обошли). Я расскажу о наших успехах в создании такого инструмента под кодовым названием «Роботестер».

18:20Test 2.0

Enter the human element. As you look at today's test systems, tools, and processes they are designed around the premise that all developers are created equal. Studies have shown developer error rates can vary widely and have a number of root causes - mind set of the developer at the time the code was written, experience level, amount of code in a check in, and much more. This talk is about putting the human element back into testing to drive greater efficiency and faster releases. As part of this talk we will look at Digital Code Forensics, Cyclomatic complexity, and other measures of code quality and how they might be used to determine what testing is needed. This is the bleeding edge... this is Testing 2.0.

19:00Чего не хватает в PageObject?

Если вам приходилось писать тесты для веб-интерфейсов, вы наверняка знакомы с паттерном проектирования PageObject. Несмотря на популярность и широкое распространение, он имеет серьезные недостатки. В своем докладе я хочу обсудить с вами эти недостатки и предложить решение озвученных проблем.

19:40Перерыв
20:00Пиво-party

Пресса

Представителей прессы просим аккредитоваться по адресу pr@yandex-team.ru.

В теме письма укажите «Аккредитация на YaC 2012».

Контакты для прессы:

Очир Манджиков, Дина Литвинова

Тел.: (495) 739-7000

Электронная почта: pr@yandex-team.ru

Как добраться

В этом году конференция состоится в 75 павильоне Международного выставочного центра (ВВЦ/ВДНХ) в Москве.

Выставочный центр расположен в нескольких минутах ходьбы от станции метро «ВДНХ», выход в сторону ВВЦ/ВДНХ.

75 павильон находится справа от главного входа.

Как добраться до ВВЦ/ВДНХ:

  • на метро — станция метро «ВДНХ» (первый вагон из центра, выход в сторону ВВЦ);

  • автобусами № 33, 56, 76, 93, 136, 154, 172, 195, 239, 244, 803, троллейбусами № 14, 48, 76 и трамваями № 11, 17 до остановки Станция метро «ВДНХ».

Как пройти от главного входа в ВВЦ/ВДНХ:

Парковка:

Автомобиль можно припарковать перед главным входом в ВВЦ/ВДНХ или внутри.

Стоимость разового пропуска для автомобиля — 400 рублей.

Техновыставка

В течение всего дня Yet another Conference 2012 будет работать интерактивное фойе.

Здесь будет можно не только увидеть технологические новинки и практические разработки Яндекса и компаний-партнеров, но и самим принять участие в разнообразных конкурсах, подробнее о которых мы будем рассказывать на этой странице.

Зона Стендов

Opensource Stack: Elliptics, Cocaine, Grape, Fastcgi-daemon

На стенде мы расскажем про то, как на основе опенсорс-технологий Яндекса можно строить отказоустойчивые распределенные сетевые сервисы, работающие под большой нагрузкой. На стенде будет представлено сразу несколько технологий, среди которых – Cocaine, Elliptics, Grape и Fastcgi-daemon.

  • Elliptics — распределенная система хранения и обработки.

  • Grape — система конвеерной обработки событий в режиме реального времени.

  • Cocaine — адаптивная облачная платформа для выполнения приложений.

  • Fastcgi-daemon — фреймворк для написания fastcgi приложений на C++.

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

Яндекс.Танк

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

На стенде будут работать тестировщики Яндекса — они ответят на все интересующие вопросы о возможностях инструмента и помогут увидеть на практике, как решаются конкретные задачи в рамках нагрузочного тестирования.

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

Nimbula — партнерский стенд

Nimbula Director — это программное обеспечение IaaS, предназначенное для создания автоматизированных, масштабируемых и безопасных частных вычислительных облаков. На стенде Nimbula желающие увидят демонстрацию возможностей Nimbula Director – от простого запуска и управления виртуальными машинами до более сложных облачных решений, таких как orchestration, обеспечение информационной безопасности в облаке и реализация различных моделей организации сети. Эта демонстрация покажет, насколько Nimbula Director может быть гибким и функциональным, при этом оставаясь простым.

БЭМ

Мы подготовили для вас большой интерактивный стенд про БЭМ.

На стенде вы узнаете подробнее про БЭМ-методологию для разработки сайтов. Что такое «блок», почему «элемент» и зачем «модификатор»? Как использовать миксы? Что переопределяют уровни переопределения? Мы с радостью и подробно ответим на эти и другие вопросы.

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

Кроме этого, мы раскроем тему тестирования клиентского JavaScript с использованием i-bem__test. Вы сможете вручную запустить проверку тестов, попробовать запуск тестов при попытке закоммитить и посмотреть на результаты в консоли и браузере.

API Яндекса

Яндекс.Карты

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

Яндекс.Поиск

Мы расскажем об особенностях технологии Яндекса для реализации поиска на сайте. Будет представлен продукт Яндекс.Поиск для сайта, а также тестовая площадка с различными бесплатными CMS для того, чтобы посетители могли потестировать не только установку и настройку поиска, но и плагины для CMS для улучшения индексации. А еще вас ждет новинка — функциональность, позволяющая существенно повысить эффективность поиска, имя которой пока держится в секрете.

Яндекс.Диск

Мы расскажем о возможностях API Диска — первого бесплатного WebDAV сервера — и ответим на вопросы об архитектуре и технологиях самого сервиса. Желающие попробуют себя в написании простейшей программы для синхронизации данных на двух компьютерах с помощью методов API. Автор самого быстрого и качественного приложения получит приз. Вы также сможете попробовать мобильные приложения Яндекс.Диска, созданные на базе нашего API.

Яндекс.Перевод и Яндекс.Спеллер

Мы расскажем про лингвистические разработки Яндекса и покажем посетителям, как встроить API этих сервисов в их продукты. Будут представлены два направления: Яндекс.Перевод, сервис машинного перевода, и Яндекс.Спеллер, инструмент для проверки орфографии в веб-формах.

HTC — партнерский стенд

На стенде HTC вы не только познакомитесь с новыми смартфонами компании, но увидите, как превратить их в беспроводные игровые центры. Вы убедитесь в высоком качестве новейшего графического процессора Tegra 3 в HTC One X, а также проверите скорость фотокамеры и одновременную съемку видео и фото на HTC Desire X. На стенде также можно получить консультацию специалистов и попытаться выиграть смартфон НТС.

Samsung — партнерский стенд

Посетители протестируют виджеты зарубежных и российских контент-провайдеров, посмотрят на работу браузера, возможностей поиска и многое другое. Разработчикам мобильных приложений наверняка будут интересны флагманский смартфон Samsung GALAXY S III на платформе Android, премиальные мобильные устройства линейки Samsung GALAXY Note с технологией рукописного ввода S Pen, модели Wave 3, Wave M, Wave Y на фирменной платформе Samsung bada 2.0, а также линейка планшетов Samsung GALAXY Tab 2.

Sony — партнерский стенд

На стенде Sony вы не только познакомитесь с новой линейкой ноутбуков VAIO и планшетов Xperia Tablet компании, но и попробуете их в действии. Играйте, слушайте музыку, смотрите фильмы и работайте с новейшими гаджетами и ноутбуками Sony.

Обучение и работа в Яндексе

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

План первого этажа

План второго этажа

Интерактивное фойе

PGP Keysigning Party

В рамках секции «Безопасность» будет проходить PGP Keysigning Party — традиционное собрание людей, которые используют систему шифрования PGP, для подписи ключей друг друга. Приглашаются все, кто пользуется PGP в почтовой переписке, или хочет научиться. О правилах участия в подобных мероприятиях можно прочитать, например, здесь.

YaC 2012 ждет супергероев

В этом году на Yet another Conference очень насыщенная и интересная программа. Однако отдыхать и веселиться тоже нужно не забывать. Именно поэтому мы предлагаем участникам конференции проявить свою креативность и одеться в костюмы супергероев, персонажей любимых IT-сериалов, мультфильмов или же придумать что-то свое!

Самым смелым мы приготовили приятные подарки!

Варианты костюмов:

  • супергеройский костюм — Мстители, Бэтмен, Человек-паук и другие;

  • супергеройские и другие элементы в костюме — аквагрим или маска, плащ или что-то еще;

  • персонажи любимых IT/технических-сериалов — IT-Crowd, TBBT;

  • мультики — Губка Боб, Футурама, Южный парк, Симпсоны, Американский папаша, Гриффины и т.д;

  • своя собственная идея =)

До встречи на YaC 2012! Нам уже не терпится вас увидеть =)

Выставка робототехники в рамках YaC 2012

В этом году на Yet another Conference в зоне интерактивного фойе будет проведена выставка робототехники.

На выставке будут представлены следующие проекты из числа приславших заявки на участие (описание участников сохранено):

GlaDOS

Демонстрационный робот. В дальнейшем возможно использование модели для нотификации по результатам unit-тестов. Модель анимирована, умеет произносить заранее записанные фразы с SD-карты.

Робот Митя

Платформа для робототехников-любителей. Удалось найти довольно удачное архитектурное решение, которое не требует точного повторения реализации своих компонент. Главное — поддержать систему сообщений, принятых между этими компонентами. Уровня сейчас три: ПК, позволяющий воспроизводить транслируемые роботом видео и звук, а также удалённо им управлять; смартфон (пока поддерживается только ОС Android 2.3 и выше), обеспечивающий беспроводную связь с ПК, трансляцию видео и звука, позже он станет мозгом робота; контроллер (на базе ATmega 328), выполняющий функцию «спинного мозга» — это управление двигателями и сервоприводами, рефлексами (простые программы, типа кивнуть «да» или повилять хвостом).

3D модель робота

Искусственный интелект, максимально приближенный к поведению живого организма. Есть три модификации — кошка/собака, андроид, скорпион.

Ляля666

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

POPBOT

Экспонат используется в качестве изучения нейронных сетей. Будет эксперимент по сравнению скорости пробега: что победит — простая незамысловатая математика или технология будущего — нейронная сеть?

Робот «OPUS-24-Прометей»

Интегральный мобильный робот. Умеет кататься, говорить, размахивать руками, неадекватно реагировать на цветовые пятна.

Роботы-сумоисты

Спортивная робототехника. Маленькие автономные устройства, которые выталкивают друг друга с ригна (круглая площадка диаметром 78 см).

Летучий титаник

Модельный квадрокоптер. Стабилизация и автопилотирование выполняется с помощью серийного контроллера управления DJI Naza. Предназначен для выполнения фигур высшего пилотажа в условиях офиса.

Кубикус

Умеет балансировать на двух колесах и перемещаться по заданным маршрутам. Система управления построена на платформе Arduino.

Танк «Тигр»

МИП — мобильная исследовательская платформа. Мобильный робот решает самые разные технические, программные и алгоритмические задачи. Предназначен преимущественно для изучения алгоритмов компьютерного зрения в реальном времени, которыми занимаются в Ярославском государственном университете им. П.Г. Демидова на кафедре динамики электронных систем. На его подвижной части установлен бортовой компьютер, видеокамера, инфракрасный и другие датчики. Благодаря им робот видит различные объекты, следит за ними.

Приходите — будет интересно!