Программа мастер-классов
на 18 июня, субботу

Программа основного дня

на 17 июня, пятницу
Другие источники актуальной программы: Telegram-бот: @devconfbot

Выберите секцию:

PHP Конгресс холл
11:00
Открытие конференции
11:15
 Дмитрий Стогов

Развитие ветки PHP-7.*

Дмитрий Стогов — Ведущий инженер Zend Technologies, один из ведущих разработчиков PHP, лидер проекта PHPNG, легшего в основу PHP-7.
Я расскажу о внутреннем устройстве PHP-7.0, изменениях готовящихся в PHP-7.1 и планах на PHP-7.2.
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
 Андрей Нестер

SOLID-принципы с примерами на PHP

Андрей Нестер — Senior Software Engineer, SugarCRM, Intetics. Open-Source контрибьютор (Yii2, Design Patterns)
Многие разработчики слышали о SOLID-принципах, но немногие им следуют.
В своём докладе я хотел бы рассказать "просто о сложном" - о том, как, когда и зачем правильно использовать SOLID-принципы. Свои доводы я подкреплю примерами кода на PHP.

13:00
Перерыв - Флипчарт сессии
13:15
Андрей Воликов

Использование геолокации в Badoo

Андрей Воликов — Программирую на php более 10 лет, 4+ года в команде Badoo.
Особенности работы с географическими координатами
Как добывать и обрабатывать миллиарды координат в день, какие проблемы вас ждут
Какие задачи решаются в Badoo с использованием геопозиции
Как мы построили систему пересечений пользователей
14:00
 Victor Bolshov

Создание расширений для PHP с помощью Zephir.

Victor Bolshov — Виктор Большов a. k. a. crocodile2u PHP-разработчик с 2001г, постоянный участник PHPConf и впоследствии DevConf. Сфера интересов: PHP, MySQL, hiload.
Zephir - высокоуровневый ЯП, предназначенный специально для создания PHP-расширений (extensions). Код, написанный на Zephir, транслируется в C, с использованием внутреннего API для расширений PHP, и его можно собрать как свое объектно-ориентированное расширение. Это может быть крайне полезно для оптимизации "узких мест" вашего кода: можно добиться ускорения интенсивных вычислений в разы.
14:30
Обед
15:30
 Александр Макаров

Безопасность: от базовых принципов до особенностей PHP

Александр Макаров — Инженер из Воронежа, активный участник OpenSource проектов, один из разработчиков PHP-фреймворка Yii и его представитель в PHP-FIG.
Делая code review различных проектов я не раз замечал одни и те же проблемы с безопасностью несмотря на то, что реализовались проекты опытными командами. Это мотивировало меня рассказать про безопасность. Начать с общих принципов, углубится в особенности PHP и пройтись по типичным ошибкам настройки окружения.
16:15
 Виктор Пикаев

Гибкая модульная архитектура SaaS платформ на Yii2

Виктор Пикаев — PHP-разработчик с 2008 года. Специализируюсь на разработке RESTful серверных приложений для ERP и CRM систем. Участвовал в разработке SaaS платформ. Использую Yii с самого его появления. Контрибьютил в Yii и пакеты, использующие его.
При разработке SaaS платформ очень важно добиться гибкой и легко изменяемой архитектуры. Многие считают, что Yii2 не подходит для этой задачи. Но это не так!

Я расскажу о том, как построить гибкую модульную архитектуру REST сервера, которую легко изменять и дополнять. Когда для каждого пользователя можно легко добавить кастомную версию того или иного модуля. О том, как сохранить модули слабо связанными.

Рассмотрим, с какими проблемами столкнется тот, кто хочет писать полностью изолированные и самодостаточные модули на Yii2. И как эти проблемы решить.
16:45
 Михаил Конюхов

API - я расскажу где раскиданы грабли

Михаил Конюхов — Системный архитектор и CEO компании Perfect Solutions.
Рассказ о том где лежат грабли, мины и растяжки в жизни API - начиная с постановки задачи, заканчивая его многолетней поддержкой.
17:15
Катя Маршалкина

Drupal 8: Теперь со вкусом Symfony

Катя Маршалкина — Катя Маршалкина (@kalabro) — активный участник международного Drupal-сообщества. Поддерживает несколько популярных Drupal-модулей, выпускает Drupal-дайджест на Хабре, регулярно выступает на локальных и международных конференциях и знает, как показать на слайдах код, чтобы всем было видно.
Презентация: http://www.slideshare.net/KateMarshalkina/drupal-8-symfony-63287429

В конце 2015 года Drupal перешёл из лихой эры глобальных переменных и ассоциативных массивов в эру современных PHP-фреймворков. Без обратной совместимости. Оставив целый пласт веб-мастеров Эдвардов «Руки-print_r» на второй год, учить матчасть. Здесь вам не вордпресс!

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

Приходите на доклад узнать, что представляет из себя новый Drupal 8 как фреймворк для веб-разработки.
17:45
Перерыв
18:00
Круглые столы
JavaScript Найроби
11:00
Открытие конференции
11:15
 Денис Измайлов

React Native, Relay и GraphQL - опыт в production

Денис Измайлов — Startup Makers, CEO. Более 15 лет занимается разработкой. Последние 5 лет полностью посвятил Front-end. Сделал несколько десятков приложений, в том числе React.js, SPA и highload. Делал коммиты в webpack, Redux, koa. Выступал на HighLoad 2015, Agile Days 2016. Регулярный спикер MoscowJS. Автор статьи Application and Universal Components.
За прошедший год я много раз выступил с докладами про высоконагруженные изоморфные React.js-приложения, Redux и экосистему. Бизнес начал активно внедрять эти технологии и подходы. Сотрудники "Яндекс.Диск" поделились своими Success Stories в этом направлении на апрельском MoscowJS. Что дальше?

Сегодня уже не стоит вопрос, изучать или не изучать React Native и Relay. Они успешно используются в production для коммерческих и бизнес-приложений. В данном докладе я расскажу про наш опыт разработки мобильных приложений на React Native с использованием Relay и GraphQL для одного из наших клиентов.

Познакомимся с каждой технологией в отдельности и обсудим, как это работает вместе. Расскажу, с какими проблемами мы столкнулись и какие есть плюс-минусы. Посмотрим, что сегодня нам может предложить экосистема.
12:00
Тимофей Ковалев

Что делать с неповоротливым JQuery

Тимофей Ковалев — Профессиональный front-end разработчик, ускоритель обычных сайтов.
Все мы пользуемся замечательной библиотекой JQuery, она очень удобна, но имеет мало общего с производительностью. За 15 мин я расскажу вам, как ускорить ваш сайт, если вы используете много JQuery ( и плагинов).
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
Алексей Охрименко

Парсеры - это спарта

Алексей Охрименко — Охрименко Алексей - Seanior JavaScript developer at IPONWEB, автор дизайн паттерна MALEVICH и фреймворка COD.js
Менее чем за 30 минут мы:

1) Узнаем что такое парсеры и как они работают
2) Напишем свой парсер
3) Напишем свой генератор парсеров :)
4) Рассмотрим реальные примеры использования парсеров ( 3 штуки )
- продвинутая валидация
- наследование e2e тестов
- умный input ( aka JIRA issue filter, Apple email search )

И все это простым и понятным языком, понятным для всех.
13:00
Перерыв - Флипчарт сессии
13:15
 Анастасия Горячева

МРТ для данных

Анастасия Горячева — Работаю в Avito, делаю сложные одностраничные приложения для профессиональных пользователей Avito. Использую opensource фреймворк basis.js. Участвую в разработке инструментов разработки для basis.js. Более 10-лет в веб-разработке. Последние полтора года – только фронтенд. Выступала на FrontendConf 2016 (РИТ) и на HolyJS 2016.
Как подойти к отслеживанию потоков данных, нужных для решения пользовательских задач?
На примере создания инструмента для одного фреймворка озвучивается идея, как создать аналогичный инструмент для своего стека технологий.
14:00
 Станислав Гуменюк / Stanislav Gumeniuk

Инфраструктура распределенных приложений на nodejs

Станислав Гуменюк / Stanislav Gumeniuk — Разработчик сервисов в компании SEMrush. За свою жизнь прошел путь от PHP разработчика до архитектора HighLoad проектов, релиз инженера и почувствовал вкус и боль DevOps. Сейчас активно занимаюсь создание приложение с использованием NodeJs с применением практик DevOps.
Построение nodejs приложения на современном стеке технологий от идеи до распределенного решения.
14:30
Кирилл Ковалев

Декларативное программирование на CSS

Кирилл Ковалев — Фронт-энд разработчик. Мое хобби - улучшение производительности (: https://github.com/seokirill https://habrahabr.ru/users/seokirill/
Все мы стремимся сделать фронт-энд быстрым.
Все мы знаем, что нативный код работает быстрее, избавляемся от лишних оберток и абстракций.
Я расскажу как и где можно отказаться от JS в пользу CSS.

Покажу кейсы.
CSS мощнее, чем вы привыкли думать.
15:00
Обед
15:45
 Артём Цымпов, Евгений Кольцов

Как мы адаптировали для смартфонов 100+ сайтов по технологии JavaScript-adaptive

Артём Цымпов, Евгений Кольцов — Артём Цымпов Основатель студии по адаптации сайтов www.eski.mobi. Ранее выступал на FrontendConf, RIW, KINZA, IBC https://eski.mobi/press/presentations/ ФОТО — https://eskimobi.s3.amazonaws.com/artiom.jpg Евгений Кольцов Технический директор www.eski.mobi ФОТО — https://eskimobi.s3.amazonaws.com/eugene.jpg
С чего мы начинали.
Все способы адаптации.
JavaScript-adaptive.
Опыт создания собственной библиотеки.
История панели управления.
Сервис оптимизации изображений.
Чему мы научились.
16:30
Андрей Кобец

Язык описания шаблонов Snakeskin

Андрей Кобец — Стаж JS 10+ лет. Работал в Яндексе.
Хочу рассказать о своей разработке: язык, который транслируется в JS и специализируется на генерации текстовых шаблонов. Язык интегрируется со всеми популярными билиотеками: React, Angular, Vue и предоставляет универсальный и удобный способ для генерации шаблонов как на клиенте, так и на сервере, а также при генерации статичных сайтов. Проекту 3.5 года.

https://habrahabr.ru/post/301646/
http://snakeskintpl.github.io/docs/
17:00
 Роман Грунтович

Как tutu.ru делает реинжиниринг работающего продукта на ходу

Роман Грунтович — Развиваю фронтенд в tutu.ru, играю на бас-гитаре и бегаю.
Как мы делаем реинжиниринг работающего продукта на ходу (опыт tutu.ru).

Любой успешный проект рано или поздно вырастает из маленького лампового стартапа в большую неповоротливую штуку с кучей легаси кода. Со временем темпы развития продукта падают, а стоимость поддержки растет. Можно решать эти проблемы, двигаясь небольшими шагами, внося улучшения постепенно. Альтернативный вариант - все стереть и написать заново. На это тяжело решиться, ведь требуется выделить ресурсы, которых всегда не хватает. Также есть риск навредить уже работающему продукту. Однако, мы решились и в своем докладе я расскажу:

- Что такое реинжиниринг и зачем он был нужен в tutu.ru.
- Кого стоит взять с собой в путь, какие люди нужны?
- С чего начать? О чем стоит договориться в начале пути.
- Как мы подошли к выбору нового технологического стека.
- Что делать в процессе? Как мы построили процесс разработки, выбрали архитектуру, подключаем внешние ресурсы.
- Как отслеживать прогресс? Как мы оцениваем текущие результаты.
- Когда нужно остановиться? Как понять, что нужно отпустить и двигаться дальше? Как мы передаем результаты своих трудов в продуктовую команду.
- Что делать с постоянно меняющимся миром? Что мы делаем, если в процессе реинжиниринга продукт уходит вперед.
- Что в итоге? Посмотрим, чего мы добились за время реининжиринга.
17:45
Перерыв
18:00
Егор Яковишен

Эволюция фронтенда: наблюдения и прогнозы

Егор Яковишен — Егор Яковишен, фронтенд-разработчик в Look At Media / Setka. Преподаватель курса «JavaScript человеческим языком» в Moscow Coding School. Первый сайт сделал в 2003 году в Microsoft FrontPage. С тех пор участвовал в создании более 150 веб-проектов для крупнейших российских и мировых компаний. Попробовал в этой жизни всё: верстал, программировал, проектировал, рисовал, тестировал и управлял. С 2012 года много пишет на JavaScript, с 2015 — на CoffeeScript. Наблюдал развитие JS от запуска снежинок на сайтах до программирования роботов.
Кажется, совсем недавно мы верстали сайты таблицами, вырезали закругленные уголки из JPG-ов и знали наизусть странные особенности IE6. Сегодня веб-приложения состоят из десятков и сотен файлов, JavaScript скоро будет в каждом холодильнике, а «CSS-программист» уже не звучит как шутка. В своем докладе я поделюсь наблюдениями за текущими трендами во фронтенд-разработке, а также соберу воедино разные мнения по поводу того, куда все движется.
DevOps Касабланка
11:00
Открытие конференции
11:15
Денис Яковлев

Автоматизация инфраструктуры. Зачем мы это делаем?

Денис Яковлев — 10 лет в компании Parallels от QA до Team Leader`a 2 года в компании 2 ГИС в инфраструктурной команде Компания 2ГИС, г. Новосибирск
Доклад о том, как мы в компании 2ГИС автоматизировали работу с инфраструктурой.
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
 Николай Мациевский

Отказоустойчивость 99,999% своими руками

Николай Мациевский — Николай профессионально занимается скоростью, надежностью и доступностью веб-сайтов уже много лет. Выступал с серией докладов на эту тему на десятках отраслевых мероприятий. Является автором книг «Разгони свой сайт» и «Реактивные веб-сайты». Основал первую в России компанию, профессионально занимающуюся повышением качества и быстродействия сайтов различной сложности — WEBO Software, базовый продукт которой — WEBO Site SpeedUp — успешно работает на тысячах сайтов по всему миру, а сервисы мониторинга скорости и доступности используются в крупнейших компаниях России. Также Николай работает в составе рабочих групп РАЭК, ИРИ, W3C и объединения разработчиков «Веб-стандарты». Облачный сервис Айри.рф позволяет ускорить и защитить любой сайт от наиболее распространенных угроз за считанные минуты.
В докладе я расскажу, чем нужно руководствоваться, если стоит задача достичь максимальной отказоустойчивости (доступности) веб-сервиса. Какие основные ошибки в разработке/поддержке бывают, и как их решить на уровне аппаратного-программного обеспечения или организации процесса. Будут даны прикладные бюджетные техники достижения доступности 99,99% и 99,999% по итогам года.
13:00
Перерыв - Флипчарт сессии
13:15
  Сергей Матвеенко

Эффективная организация параметров групп и хостов в Ansible

Сергей Матвеенко — Senior Python Developer компании DataArt. Опыт в IТ-индустрии 16 лет. В качестве CTO и Team Lead выпустил более десятка продуктов. Разработчик, апологет свободного ПО. Последний год активно использую Ansible.
Расскажу о подходе, который я использую для организации сложной структуры хостов и групп для системы с большим количеством разных типов хостов и несколькими площадками с разной конфигурацией.
14:00
Эдуард Медведев

ChatOps: как управлять инфраструктурой из чата

Эдуард Медведев — — StackStorm (Калифорния). Один из разработчиков StackStorm — open-source платформы для автоматизации дата-центров. В проекте руковожу направлением ChatOps: возможностью управлять любыми технологическими процессами через чат.
В докладе мы рассмотрим методологию ChatOps — от краткой истории чат-ботов к практическим примерам — и коснемся вопросов, интересных как новичкам, так и тем, кто уже настраивал интеграцию сервисов в Slack или HipChat.

— Краткая история чат-сервисов и ботов: от IRC-канала #BUKTOPUHA до HipChat Connect.
— ChatOps: DevOps + чат. Преимущества и недостатки, примеры.
— Опыт коллег: управление инцидентами в GitHub.
— API современных чат-сервисов: Slack API, HipChat Connect.
— Боты и ChatOps-сервисы: Hubot, Lita, Cog, StackStorm.
14:45
Обед
15:30
 Дмитрий Попов

Техническая оптимизация сайта для поисковых машин — о чём забывают даже гуру

Дмитрий Попов — Руководитель сервисов для вебмастеров (Яндекс). В веб-разработке с 2000 года. Работал программистом, тимлидом (PHP, Python,Delphi), докладчик PHPConf-2004. С 2009 года занимаюсь управлением проектами, с 2014 года в компании "Яндекс" отвечаю за развитие сервисов для вебмастеров.
Принципы оптимизации сайта. Зачем разработчику думать о поисковиках и почему информация из Вебмастера может влиять на премию разработчика? Как правильно подготовить сайт к взаимодействию с поисковой машиной. Расскажем о частых ошибках и опишем эффективные подходы.
16:15
 Алексей Южаков

Практические примеры использования Docker

Алексей Южаков — Увлекся разработкой еще во времена ZX Spectrum. Последние 15 лет по большей части занимаюсь разработкой и управлением веб-проектов, изучая в процессе технологии, инструменты, языки и подходы связанные с этой областью. В том числе технологии виртуализации для облегчения решения задач разработки и тестирования.
О технологии Docker уже слышали многие. Но, на практике, для разработки и тестирования Docker’ом пользуются не так часто. Возможно, из-за того, что технология довольно молодая. Но, может быть, просто не очевидно, какую пользу Docker может принести в конкретно вашей ситуации? Например, если вы разработчик или QA-инженер какого-то веб-проекта.
17:00
Алексей Воронин

Навыки Devops инженера

Алексей Воронин — Я начал карьеру более десяти лет назад обычным программистом и прошел длинный путь до руководителя отдела планирования производства в крупнейшей компании-разработчике, поставляющей mission-critical системы для telecom операторов. Сейчас работаю Agile Coach в компании Scrumtrek и помогаю крупным компаниям трансформировать свои производственные процессы. Также являюсь активным участником сообщества SkillsWiki, которое занимается исследованиями потребностей ИТ-рынка в специалистах, навыках и специализированных знаниях.
Что такое Devops сейчас? Кто такой Devops Engineer? Какие задачи он решает? Какие навыки будут востребованы от него в ближайшее время в России? Какие навыки требуются сейчас от Devops Engineer в США?
На примере американского рынка я расскажу о том каков профиль востребованного сейчас "за бугром" Devops инженера.
Что такое профиль? Это рейтинг наиболее востребованных навыков и технологий, которые требуют американские работодатели от Devops Engineer.
Также посмотрим на то, каков уровень оплаты труда Devops Engineer.


17:45
Перерыв
18:00
Время встреч сообществ разработчиков - Meetup Time
Python Сан-Паулу
11:00
Открытие конференции
11:15
 Григорий Петров

Типы: Python vs Typescript

Григорий Петров — Григорий Петров Россия. Москва Технический евангелист Voximplant Карьеру специалиста по созданию программ начал в конце 90-х: сначала как разработчик, затем как руководитель отдела разработки. Участвовал в создании таких программных продуктов как Radmin и Advanced IP Scanner, занимался продвижением интерактивного телевидения NPTV. Основные области профессиональных интересов: налаживание процессов разработки программ, управление разработкой, кроссплатформенная разработка. Принимает участие в качестве спикера на айти конференциях, в качестве ментора - на хакатонах. Является техническим евангелистом Voximplant, облачной платформы для телефонии и видеоконференций.
В своем докладе Григорий, 15 лет писавший на С++, сравнит реализацию типов в Python и современном диалекте JavaScript. Основной упор сделан на практическую пользу - как те или иные механизмы работы с типами могут помочь разработчикам в разных ситуациях.
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
 Сергей Матвеенко

Как и зачем делать свой ORM на Python

Сергей Матвеенко — Senior Python Developer компании DataArt. Опыт в IТ-индустрии 16 лет. В качестве CTO и Team Lead выпустил более десятка продуктов. Разработчик, апологет свободного ПО. Организатор петербургского Python-сообщества.
Расскажу как делать ORM в Python.
13:00
Перерыв - Флипчарт сессии
13:15
Николай Волков

Опыт использования событийной архитектуры в SaaS сервисе.

Николай Волков — Занимаюсь разработкой веб сервисов более 13 лет. Сейчас тружусь в PricePlan над платформой биллинга для: Saas, Windows Azure, аренды недвижимости. В продакшене использую Django, Redis, Celery, Elasticsearch, Docker (вместо инфоструктуры на ESXi)
— Зачем мы используем событийную архитектуру в платформе биллинга PricePlan
— Обработка сигналов. Прерывание и нагрузка событий триггерами.
— Синхронные и асинхронные триггеры. Транзакции в событийной архитектуре.
— Практика эксплуатации платформы клиентами. Отзывы и выводы.
13:45
Николай Волков

Обзор архитектуры и технической реализации современного биллинга на базе Django

Николай Волков — Занимаюсь разработкой веб сервисов более 13 лет. Сейчас тружусь в PricePlan над платформой биллинга для: Saas, Windows Azure, аренды недвижимости. В продакшене использую Django, Redis, Celery, Elasticsearch, Docker (вместо инфоструктуры на ESXi)
— Что такое биллинг в Saas
— Подводные камни при написании своего биллинга
— Как предусмотреть, то, о чем бизнес даже не думал или где нужно заложить больше гибкости
— Мониторинг и логирование биллинга
14:15
Александр Бурцев

Эволюция управления быстро-растущей разработкой ПО с примерами автоматизации на стеке технологий Django Apps + Docker

Александр Бурцев — Специализация - управление портфелем проектов. Организация бизнеса с использование интернет технологий. Генеральный директор аутсорсинговой компании http://BramaBrama.com Адепт OpenSource технологий и автоматизации процессов производства. Автор программного обеспечения на Django.
Если ваш стартап вырос из демо-версии в бизнес и вы столкнулись с операционными задачами. Вам нужно успевать не только поставлять модные обновления программы вашим пользователям, но и удовлетворять запросы акционеров, разделять вашу команду на административную группу и команду разработки, сделать акцент на продажи и маркетинг, успевать исправлять ошибки в программе и внедрить систему контроля качества, то добро пожаловать в реальный мир ИТ бизнеса.

Рассмотрим кейс с запуском конвейерного производства WEB-проектов на Django. Рассмотрим проблемы управления релизами ПО, поддержкой и контролем качества, bugfix-процессами.

Какие вы знаете нюансы программирования на Django, которые ограничивают нас в скорости запуска новых продуктов(коммерческих систем) и реиспользовании кода компонентов-приложений django?
14:45
 Maxim Belousov

Aioriak, зачем?

Maxim Belousov — Python Разработчик в Rambler&CO, музыкант и просто увлеченный человек.
В докладе обсуждается проблема отсутствия асинхронного Python драйвера для Riak, как причина написания своей реализации.
Обзор возможных решений и их сравнительный анализ.

- Теория предметной области (riak, asyncio), постановка задачи.
- Обзор существующих решений.
- Реализованные решения:
- - блокирующие вызовы
- - executor
- - aioriak
- Сравнение производительности.
- Зачем это было нужно?
15:00
Обед
15:45
 Олег Чуркин

Возможно ли подружить Django ORM и PostgreSQL?

Олег Чуркин — Руководитель группы Python-проектов в хорошей компании. За 12 лет в IT успел пройти огонь, воду и медные трубы: работал в службе поддержки, затем в тестировании, a сейчас занимаюсь разработкой веб-проектов. Работал в Acronis, Лаборатория Касперского, Innova, РБК, в данный момент решаю сложные задачи в компании Rambler&Co.
Что нужно знать современному python-разработчику, чтобы быстро и эффективно разрабатывать высоконагруженные web-проекты на Django и PostgreSQL.
16:15
 Андрей Минкин

Самые частые проблемы и пути решения при росте нагрузки и масштабировании проекта.

Андрей Минкин — Тимлид такси nambataxi.kg
Вы начали делать проект и запустили его в продакшн. Со временем пользователей становится больше и текущих ресурсов вам начинает не хватать. В этом докладе я расскажу о основных путях борьбы с нагрузкой, путях решения и проблемах, связанных с ними.

В докладе мы поговорим о:
0. Что такое нагрузка? Пути борьбы с нагрузкой. Оптимизация кода, кеширование, масштабирование
1. Какие проблемы возникают при внедрении кеширования
2. Как оценивать качество работы кеширования?
3. Путь масштабирования и борьба за ресурсы
4. Проблемы балансировки
5. Проблемы БД. Конкурентный доступ и данным и целостность их

Пути решения проблем будут на примере Python/Django
16:45
 Сергей Матвеенко

Решаем сложные задачи в MongoDB просто с Mnj

Сергей Матвеенко — Senior Python Developer компании DataArt. Опыт в IТ-индустрии 16 лет. В качестве CTO и Team Lead выпустил более десятка продуктов. Разработчик, апологет свободного ПО. Организатор петербургского Python-сообщества.
Mnj (MongoEnergy) — библиотека для работы с MongoDB в Python, совместимая с PyMongo, Motor и txmongo. Mnj упрощает работу с MongoDB, не создавая лишних абстракций, которые в других библиотеках часто мешают использовать возможности MongoDB.
17:45
Перерыв
18:00
Встреча активистов, докладчиков и Программного комитета HighLoad++
Ruby Рио-де-Жанейро
11:00
Открытие конференции
11:15
Николай Рыжиков

Изоморфные приложения на clojure

Николай Рыжиков — Я люблю clojure, postgresql, открытый код и открытые стандарты, гибкий и бережливый подход к разработке. Активно участвую в Питерских сообществах fprog и piter-united, и интернет сообществе clojurians. Значительную часть производимого мной кода и почти все мои презентации можно найти на github - niquola
Про изоморфные приложения, когда вы пишете на одном и том же языке бэкэнд и фронтэнд, программисты мечтают уже давно. Но к этому идеалу реально приблизились всего два языка - JavaScript и Clojure. Причём Clojure является существенно функциональным языком, а также ещё и LISPом. В докладе мы с вами попробуем приоткрыть завесу в таинственный мир функционального программирования, понять природу LISP и узнать, как можно создавать, с использованием Clojure, практичные и злободневные приложения.
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
Тимофей Цветков

Иммутабельность и статическая типизация для Ruby программистов

Тимофей Цветков — Разработчик и аналитик отдела aналитики Toptal.com
Динамическая и слабая типизация, мутабельность, monkey patching и прочие атрибуты свободы. Но плоследнее время мы все чаще слышим о возврате к статическим типам и былой строгости. Feature #9999 (https://bugs.ruby-lang.org/issues/9999), RSpec.describe вместо describe. Что происходит?

В докладе мы поговорим про иммутабельность на уровне типов данных и в целом, как о практике разработки. Обсудим разные подходы к типизации, попытаемся понять их минусы и плюсы, поговорим о том, как это связано с Ruby и попытаемся понять почему еще не так давно ruby/rails программисты и не задумывались о типах, а теперь вдруг захотели статически типизированный ruby.
13:00
Перерыв - Флипчарт сессии
13:15
Дмитрий Копров

Как была сделана система управления доступом к суперкомпьютерам МГУ

Дмитрий Копров — Разработчик в Evrone, который внезапно помог отечественной науке
В январе 2015 года была запущена обновлённая система управления доступом к кластерам МГУ. В своей основе она имеет rails, в качестве интерпретатора был использован Jruby. Приложение из старого монолитного было разбито на модули с помощью rails engines. Как это было, какие решения были приняты и почему, в чём были совершены ошибки и как их можно было бы избежать, а также банальный опыт работы с jruby — всё это будет в докладе.
14:00
 Алексей Фетисов

Как с помощью rails и extjs создавать большие корпоративные приложения

Алексей Фетисов — программист в ГК "ЮНЭКТ"
Rails - мощная платформа, однако в чистом виде для создания большого количества сложных и навороченных интерфейсов она не подходит.
Я расскажу о том, какой путь мы прошли при создании корпоративной системы: от простого rails-приложения до оригинальной связки rails+extjs. Почему именно extjs на фронтэнде и rails на сервере, какие есть способы "подружить" два разных мира, проблемы и особенности построения архитектуры, аутентификация, авторизация, особенности решаемых задач, возможности применения подхода в других проектах и анализ других вариантов решения проблем корпоративной разработки.
Вполне возможно, что опыт разработки сложных и надежных интерфейсов с использованием минимальных затрат будет интересен не только корпоративных разработчикам, но и при реализации многих других проектов.
14:45
Обед
15:30
Алексей Мартынюк

Нагрузочное тестирование веб-сокетов с помощью Docker

Алексей Мартынюк — ведущий разработчик в Rambler&Co и team–lead на Lenta.ru. Высококвалифицированный педант с раскладкой Дворака на клавиатуре.
Когда нужно проверить какому числу пользователей мы можем доставить сообщения через websockets, привычные инструменты нагрузочного тестирования не подходят. В своем докладе Алексей рассмотрит как с помощью Docker и простых инструментов можно проверить какое число пользователей способна держать ваша система и какой процент пользователей на самом деле прочитают отправленные с сервера сообщения.
16:15
Антон Прохоров

Разработка Telegram-ботов на языке Ruby

Антон Прохоров — Ruby программист в компании Rambler&Co.
В докладе я расскажу о разработке telegram-бота на языке Ruby, сделаю небольшой обзор вариантов реализации telegram-ботов и фреймворков, расскажу о нашем опыте реализации telegram-бота для проекта "Афиша-мир", какие задачи мы решали, зачем нам нужен Natural Language Processing и что вам нужно знать, чтобы за короткий срок реализовать своего telegram-бота.
16:45
Anna Shcherbinina

Пишем расширение для Ruby на Crystal

Anna Shcherbinina — Лид веб команды в Artec3D. Люблю Ruby, вдохновляюсь Python и Crystal.
Производительность - краеугольный камень разработки. Хочется тратить меньше ресурсов, получая больший результат.

Расскажу как прокачать Ruby приложение используя Crystal extensions.
17:15
Дмитрий Зуев

Кэширование средствами Rails проектов с архитектурой CQRS

Дмитрий Зуев — Привет, я руби разработчик в компании Rambler&Co, участник команды Slim Template Language. Обладаю тайным знанием как сделать жизнь проще себе и серверу.
В докладе я расскажу про архитектуру, которую используют такие проекты как Lenta.ru, Gazeta.ru и многие другие медийные проекты, входящие в группу компаний Rambler&Co, а также о том, какие виды кэширования мы используем и как мы побороли проблему своевременного обновления кэша.
17:45
Перерыв
PM Владивосток
11:00
Открытие конференции
11:15
Андрей Рыжкин

Адаптируйся или умри

Андрей Рыжкин — Исследует области применения передовых веб-технологий для крупного бизнеса и внедряет инновационные методы в подведомственные отделы. За плечами Андрея – более чем 10-летний опыт работы в IT. Андрей руководит разработкой интернет-проектов для таких российских и международных компаний как АльфаСтрахование, МегаФон, Росбанк, Российская газета, BFM.ru, Райффайзенбанк, УРАЛСИБ, World Class, OBI и многих других. Постоянный спикер и модератор на ведущих отраслевых конференциях: RIW, РИТ++, РИФ+КИБ, Whale Rider, Highload ++, конференции 1С-Битрикс, 404 fest, MATE EXPO, Russian Digital Week. Автор многочисленных мастер-классов по разработке и тестированию адаптивных сайтов, а также создатель методики по управлению командой технических специалистов.
Скорость, с которой компания готова меняться, напрямую коррелирует с ее жизнеспособностью. И зачастую в такой гонке система и правила организации могут просто не успевать за прогрессом.

«Адаптируйся или умри» — говорил Дарвин, и это не только про эволюцию видов, но и про эволюцию компаний. Многие компании просто боятся вводить новые процессы, т. к. думают, что это всегда связано с кризисом или большими рисками. На самом деле, если подходить к этому процессу разумно, в этом нет ничего страшного.

Но всем ли нужны четкие бизнес-процессы, регламентированный workflow, автоматизация бизнеса и прочее?

- Зачем нужны бизнес-процессы для малого бизнеса? Каким компаниям они нужны, а каким — нет?
- Кому внедрять workflow, а кому можно пренебречь?
- Внедрение регламентов: теория и практика.
- Инструменты автоматизации: когда пора отказаться от Excel?
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
Алексей Кравец

Секреты распределенной разработки, которые я узнал от сотрудников Basecamp (37signals) и Buffer

Алексей Кравец — Алексей Кравец - 12 лет в веб разработке, начинал с консалтинга и работы над клиентскими проектами, сейчас занимаюсь развитием двух своих проектов с миллионной посещаемостью http://trytopic.com и http://alimero.ru
Наша команда уже больше 5 лет назад перешла на полностью удаленную работу, мы не тратим время на то, чтобы стоять в пробках по дороге в офис, живем в местах, где нам комфортно и приятно. При этом работа идет, задачи выполняются, код выкладывается на продакшен.

Расскажу о том с какими трудностями мы столкнулись за это время, как с ними справились, что самое важное в организации собственного труда, в организации работы команды, как нам помогло общение с сотрудниками Basecamp (37signals) и Buffer - известных пропонентов распределенной разработки
13:00
Перерыв - Флипчарт сессии
13:15
Артём Кудзев

Технобренд

Артём Кудзев — Артём Кудзев, технопиарщик 2ГИС и программный директор CodeFest. 2ГИС — IT-компания. Мы делаем городской информационный сервис для 40 млн пользователей России, Украины и Казахстана. CodeFest — Крупнейшая IT-конференция за Уралом.
История о том, что у каждой IT-компании технологический бренд (технобренд) есть. Можно им заниматься, а можно забить и пустить всё на самотёк. Я предлагаю заниматься и получать от этого удовольствие. А в докладе расскажу, как найти мотивы это делать, как делать и что. С точки зрения руководителя и разработчика.

По порядку:
— Что такое технобренд и зачем он нужен компании.
— На чём его строить — OpenSource, опыт (архитектуры, паттерны, подходы), процессы и культура.
— Где о нём рассказывать — события, Хабр, соцсетки, техносайт.
— Как мерять.
14:00
Владимир Лихтанский

Нет времени разработать самому? Дай возможность другим!

Владимир Лихтанский — Team Leader в Plesk. В нашей компании Frontend - это не как везде, это Frontend+Backend в классическом понимании и именно этим я люблю заниматься!
При выпуске любого продукта нельзя угнаться за количеством пожеланий пользователей. Или кто-то просит чего-то, чего не хочется давать из коробки. Популярное решение в такой ситуации - дать возможность писать плагины к продукту. Но для написания плагинов нужно иметь мощное SDK у самого продукта. В Plesk мы назвали такие плагины расширениями (extension), реализовали SDK и создали свой каталог.

В докладе я расскажу, как мы разрабатывали SDK:
- какие методы и ручки должны быть доступны;
- как не сделать его слишком избыточным;
- как оценить результат;
- какие есть подводные камни.

А также кратко о том, какие есть нюансы при запуске своего каталога плагинов.
14:45
Александр Мозговой

Double-Loop TDD: TDD "для жизни"

Александр Мозговой — Александр Мозговой, тимлид в компании Lazada, являющейся самым крупным e-commerce проектом в Юго-Восточной Азии.
Есть существенный разрыв между теорией и практикой TDD, и мы постараемся его преодолеть с помощью одной не очень известной техники.

О чем будем говорить:
- Чего мы хотим от тестов?
- Знакомство с Double-Loop TDD aka London School aka Mockist Style TDD
- Сравнение школ TDD
- Как TDD применяется для разработки систем
- Ключевые моменты процесса TDD
- Как это влияет на код, тесты, разработчиков и проект в целом

Чего точно не будет:
- Примеров разработки класса Calculator через TDD
- Мантры Red-Green-Refactor
15:15
Обед
16:00
Андрей Аксенов

Devs vs CTO vs CEO

Андрей Аксенов — Пишу движки за еду, помогаю с этим другим. Когда-то сделал https://en.wikipedia.org/wiki/TheEngine, все еще делаю http://sphinxsearch.com, помогаю в http://unigine.com/ и иногда все равно думаю, что скучновато живу, надо бы еще движок.
Хочу поныть на избитую заданную вечную тему, что запад есть запад, восток есть восток, а разработчикам бы только код пописать, а их менеджерам бы только продукт продать, но продукт надо откуда-то взять, а для этого код, а тут разработчики, а потом инфраструктура, и все заверте..., и всем сторонам сложного дифференциального уравнения надо с этим уметь жить.

Если вовремя придумаю достаточно клевых шуток, постараюсь сделать доклад в стиле стендап. Иначе уж заранее извините, на сложных щщах.
16:30

Развитие вектора целостного понимания и восприятия работы. Ошибки и перспективы.

Alexey Parkhomenko — Alexey Parkhomenko, Deputy CTO at TogetherNetworks 12+ лет опыта в сфере web разработки. Из них 7 лет тружусь в продуктовых компаниях ориентированных под высокие нагрузки. Докладчик DevConf' 12. Прошел путь от разработчика в маленькой команде до управления штатом сотрудников в 50 человек.
- Как менеджерам разрешать конфликты в команде разработчиков/администраторов и не затягивать выполнение задач;
- Почему при наличии тестов, код ревью, - трудно строить качественный продукт / сервис;
- Как оценить удачность принятого решения;
17:00
Александр Горный

Миф об очень сложном Highload

Александр Горный — Работал в mail.ru, РБК, теперь опять mail.ru (директор по информационным технологиям). Принимал самое активное участие в разработки самой почты mail.ru, рекламной системы, агента, внутренней инфраструктуры.
Цель доклада - напомнить/рассказать слушателям о том, что мир изменился и "высокие нагрузки" уже не являются сложной задачей, стандартные инструменты на современном железе дают производительность приемлемую для практически любых задач.
17:45
Перерыв
18:00
Резерв по Аксенова (shodan)
Go Калининград
11:00
Открытие конференции
11:15
Евгений Пак

Prometheus мониторинг от души

Евгений Пак — разработчик с 10 летним опытом работы, Senior Developer Go компании Lazada.
Наша компания Lazada – ведущий e-commerce проект в 6 странах Азии: Вьетнам, Индонезия, Малайзия, Тайланд, Филиппины и Сингапур.

Исторически так сложилось, что для сбора метрик Go приложений мы пользовались облачным сервисом, который со временем перестал нас удовлетворять по функционалу и числу метрик, которые мы могли туда отправлять. Было принято решение строить мониторинг внутри компании.

Я расскажу о нашем опыте переезда на Prometheus, и почему мы выбрали именно его, о процессе миграции и о том, как у нас организована инфраструктура для сбора метрик Go приложений. Расскажу о тонкостях вычисления квантилей как на стороне клиента (тип метрик Summary), так и на стороне сервера (тип метрик Histogram). Также вы узнаете о тех нюансах, с которыми мы столкнулись при работе с Графаной, и как мы их решили.

Доклад будет полезен Вам, если вы ищете новое решение для мониторинга, делаете микросервисы или пишите на Go.
11:45
 Вадим Мадисон

Как приготовить Go микросервис к продакшену

Вадим Мадисон — Руководитель отдела разработки Rutube. С нагруженными системами плотно работаю последние 8 лет.
Доклад о том, что считать готовым к продакшену микросервисом.

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

На примере Go-микросервиса будет дан перечень необходимого функционала и рассказаны основные подходы по разработке, деплою и поддержке микросервисов.
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
 Алексей Соломонов

Go + SMTP + RabbitMQ = PostmanQ или как мы рассылаем ~20K писем в минуту

Алексей Соломонов — Алексей Соломонов, Actionpay Плотно работаю над рассылкой почты около 2-ух лет.
Сегодня речь пойдет о рассылке почты. Не секрет, что существует большое количество решений, которые позволяют рассылать почту в большинстве случаев. Но что делать, когда количество пользователей перевалило за десятки или сотни тысяч? Как быть, когда в день проходят несколько рассылок всем пользователям? И давайте не забывать об обычной почте, она тоже должна ходить без задержек. Что же делать? Взять бубен и начать танцевать? Нет! Воспользуйтесь PostmanQ!

В докладе я расскажу:
- что нас побудило написать свой MTА
- многопоточная архитектура PostmanQ, какие механизмы использовались и для чего
- производительность, какие факторы на нее влияют, и как мы искали узкие места
- инструменты для мониторинга отправки, просмотра отчетов и работы с очередями
- как мы используем PostmanQ, проблемы при отправке писем и планы на будущее
13:00
Перерыв - Флипчарт сессии
13:15
 Алексей Акулович

Аудиоотпечатки для индексации всей музыки ВКонтакте

Алексей Акулович — Backend разработчик ВКонтакте
В этом докладе я расскажу о технических аспектах реализации вводимой сейчас системы аудиоотпечатков:
— про их получение из mp3;
— хранение в имеющихся движках;
— введение нового специализированного движка на Go для поиска и сравнения;
— взаимодействие с другими частями проекта;
— немного про забавные и не очень ситуации со всем этим связанные.
14:00
Даниил Подольский

Golang в действии: Как нам удается писать highload приложение на (не?)подходящем языке

Даниил Подольский — Даниил Подольский, CTO inCaller.org
Последние 2 года язык Go является моим - нашим - основным средством заработка на хлеб. Хватает, в общем-то, и на хлеб, и на масло, а иногда и на красную икру.

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

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

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

Во-вторых, выразительные средства Go довольно скудны, что приводит к появлению в коде ужасающего количества boilerplate, за которым эффективно прячется бизнес-логика. Программу на Go бывает трудно охватить взглядом и поместить ее модель себе в голову просто из-за количества строк, которые надо для этого прочесть.

В-третьих, у Go есть проблемы с эффективностью кода. У Go плохой оптимизатор. У Go плохо с "заточкой" под железо - вспомним хотя бы историю с патчем CloudFlare для TLS. Патч ведь так и не попал в основную ветку...

Возникает вопрос - почему же, не по наслышке зная о вышеперечисленных проблемах, мы пишем наш реально тяжелый проект именно на Go?

Ответ прост: Go не идеален, но под наши задачи он подходит лучше всего.
14:45
Обед
15:30
 Шрамко Антон

Язык программирования Rust

Шрамко Антон — Антон Шрамко работаю в компании МЕРА НН, занимаюсь разработкой backend - web сервисов и API на языках python, nodejs, rust.
Цель доклада кратко познакомить слушателя с языком программирования Rust, его особенностями, возможностями, и интересными инструментами для rust, их возможностями, и сферами их использования. Также будет затронута тема использования rust в качестве языка разработки серверных веб-приложений, и инструментов для этого.
16:15
Лука Сафонов

Современные практики атаки веб-приложений

Лука Сафонов — Сафонов Лука, технический директор компании Pentestit, автор многочисленных докладов и исследований в области практической информационной безопасности, докладчик на международных форумах и конференциях. Имеет более 10 лет практического опыта тестирования на проникновение информационных систем государственного, финансового и e-commerce секторов. Эксперт Института Развития Интернета (секция "информационная безопасность")
Актуальные методы и приёмы, используемые злоумышленниками для проведения атак на веб-приложения.
16:45
Романов Роман

Защита веб-приложений от современных хакерских атак

Романов Роман — Романов Роман, генеральный директор компании Pentestit, сертифицированный специалист в области обеспечения безопасности информационных систем, докладчик на международных конференциях. Топ-эксперт Института Развития Интернета (секция "информационная безопасность")
Современные практики защиты веб-приложений.

Защита веб-приложения от атак "нулевого дня".
* Построение защитных средств;
* Выявление атак;
* Фильтрация вредоносного трафика и блокирование действий злоумышленников.
17:45
Перерыв
Common Китай
11:00
Открытие конференции
11:15
 Alexey Parkhomenko

Эффективное использование RabbitMQ в продакшн

Alexey Parkhomenko — Alexey Parkhomenko, Deputy CTO at TogetherNetworks 12+ лет опыта в сфере web разработки. Из них 7 лет тружусь в продуктовых компаниях ориентированных под высокие нагрузки. Докладчик DevConf' 12. Прошел путь от разработчика в маленькой команде до управления штатом сотрудников в 50 человек.
Большинство докладов о RabbitMQ сводятся к тому, что это брокер сообщений и общим концепциям как его использовать. Мало уделяется внимания вопросам о производительности, мониторингу, настройкам, особенностям, отказоустойчивости, возникающим проблемам (flow control, “залипание демонов” и др.).

В этом докладе мы поговорим о том, что тюнить, как диагностировать проблемы, как не терять сообщения, на что обращать внимание, и как прокачать RabbitMQ до обслуживания миллионов сообщений в день.
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
Константин Якушев

Великолепный API без REST

Константин Якушев — Константин Якушев — архитектор и проектировщик API в Badoo.
REST API — великолепная идея, которая плохо подходит для API, у которых небольшое число клиентов и огромное число функций.

Например, у внутреннего API Badoo 5 клиентов по числу платформ, каждый из которых использует не меньше 300 типов запросов. Еженедельно мы вносим не меньше двух десятков изменений и дополнений в API.

Добиться этого на основе принципов REST было бы трудно, и мы придумали собственные инструменты и набор принципов. С их помощью мы вносим изменения с нужной скоростью, не ломая старые клиенты и полностью задокументировав всё по дороге. О них я и расскажу.
13:00
Перерыв - Флипчарт сессии
13:15
Владислав Коротун

Страницы AMP. Будь для Google VIP.

Владислав Коротун — Frontend-разработчик "Цифровой лаборатории" информационного агенства ТАСС. Ранее участвовал в стартапах. Программирую более 14 лет.
В октябре 2015 Google представил новую технологию быстрой загрузки страниц на мобильных устройствах. Лидирующие новостные порталы уже интегрировали поддержку этой технологии на свои страницы. Я расскажу о том, что технология может дать веб-проекту, как начать использовать технологию в своем проекте и какие трудности нам удалось преодолеть в процессе адаптации страниц для работы с AMPP, а также, каких результатов нам удалось добиться.
14:00
 Валентин Бартенев

HTTP/2: мифы и факты

Валентин Бартенев — Core Developer @ NGINX, Inc.
HTTP является одним из основных протоколов интернета, без которого немыслим современный веб. Наиболее широко используемая на текущий момент версия протокола HTTP/1.1 получила свое распространение ещё в 1996 году. С тех пор протокол практически не менялся, пока в 2012 не началась разработка спецификации HTTP/2 на основе экспериментального протокола SPDY. Вскоре, уже в 2015 году, официальная спецификация нового протокола была утверждена рабочей группой IESG. На данный момент протокол поддерживается наиболее популярными браузерами. А ещё в начале сентября 2015 поддержка HTTP/2 была добавлена в nginx.

Протокол HTTP/2 обещает ускорение загрузки страниц и очень активно продвигается компанией Google. На волне агрессивного маркетинга вокруг него уже сложился ряд мифов. Но так ли хорош новый протокол на самом деле? Какие у него преимущества и недостатки по сравнению со старым добрым и проверенным временем HTTP/1.1? Стоит ли переходить на новый протокол, и какие могут подстерегать подводные камни?

Эти и другие вопросы будут освещены в докладе с точки зрения разработчика модулей SPDY и HTTP/2 в nginx.
14:45
Ник Заварицкий

Почему язык Lua — это интересно?

Ник Заварицкий — Закончил ВМК МГУ. Последние 10 лет так или иначе связан с C++/Linux/performance. Разработчик в проекте Tarantool. LuaJIT contributor.
Lua — высокоуровневый язык, похожий на Python/JS, но существенно более простой. Он гибкий и при этом очень быстрый.

Возможно, вы слышали про OpenResty. Это решение для разработки Nginx модулей на Lua. Cloudflare, крупнейший CDN/anti-DDOS провайдер, как раз работает на OpenResty.

На скоростях 10/100Gb сетевой стек в ядре Linux становится “узким местом”. Есть ряд технологий для выноса обработки пакетов из ядра в userspace; например Snabb Switch. Последний написан целиком на Lua и справляется с потоком в 200+Gb.

Как на счет менее экзотических применений? На Lua есть свой Node.js (luvit.io). Lua есть в БД Tarantool. У нас была задача валидации данных на соответствие схеме; мы переписали валидацию с Си на Lua и получили ускорение в 4 раза (за счет JIT-компиляции).

Lua набирает популярность и он объективно хорош. Что будет в докладе:

1) Краткое введение в Lua: мы убедимся в том, что язык простой и там есть все необходимое на каждый день.

2) Секция Lua WAT (смешные контр-интуитивные особенности языка, 0 and 1 == 0)

3) Поговорим о том, почему Tarantool использует LuaJIT, а не V8.

4) Разберемся, почему именно Lua такой быстрый, и как работает трассирующий JIT-компилятор.
15:30
Обед
16:30
Евгений Кузовлев

ACL в ERP/CRM системах: архитектура и реализация на конкретном примере

Евгений Кузовлев — Системный архитектор и руководитель разработки облачной МИС Smartmedicina.ru
Системы с избирательным доступом - где они, чем они отличаются друг от друга? Какие архитектуры систем управления доступом существуют? Когда каждая из них применяется? Почему для сложных, многофункцинальных систем недостаточно простого принципа "разрешено - запрещено"? Как сделать сложную систему управления доступом простой в управлении? Все это я расскажу на примере конкретной реализованной медицинской информационной системы (да, такие тоже иногда пишутся на PHP:)
17:15
 Альгис Фатеев

Внедрение тестирования в проект

Альгис Фатеев — Альгис - руководитель тестирования в Avito, опыт в разработке и тестировании более 15 лет.
В своём докладе я поделюсь опытом внедрения тестирования в Avito. В частности я расскажу об основных этапах этого процесса и подводных камнях, которые могут встретиться на пути, про ручное и автоматизированное тестирование в нашей компании. Кроме того, я рассмотрю те случаи, когда тестирования не имеет особого смысла и может негативно отразиться на развитии проекта. Этот доклад будет полезен всем, кто задумывается о внедрении тестирования в свои проекты, а также тем, кому интересен опыт организации тестирования в большом высоконагруженном проекте.
17:45
Перерыв
18:00
Chatbots Developers Meetup http://goo.gl/szatbW
18:05
Владислав Гафаров

Чат-боты. Экосистема.

Владислав Гафаров — Основатель стартапа Mr. Bot
Вводная лекция в инфраструктуру и горизонтальные решения в сфере чатботов (НЛП и конструкторы)
18:35
Дмитрий Сошников

Hello, Bot! Разрабатываем чат-ботов в облаке с помощью Microsoft Bot Framework

Дмитрий Сошников — Дмитрий Сошников – технологический евангелист компании Майкрософт, занимается популяризацией современных технологий разработки программного обеспечения среди начинающих разработчиков: школьников, студентов, начинающих стартапов. Специализируется в области искусственного интеллекта, интернета вещей, в разработке универсальных приложений Windows, в области функционального программирования и на платформе .NET (F#, Roslyn), виртуальной и расширенной реальности. Лично провел несколько десятков хакатонов по всей России, помогал многим студенческим стартапам начать свои проекты в различных областях. Доцент, к.ф.-м.н., ведет занятия в МФТИ, НИУ ВШЭ и МАИ, член Российской ассоциации искусственного интеллекта и F# Software Foundation, летом – ведущий кафедры компьютерных технологий детского лагеря ЮНИО-Р. В свободное время увлекается технологической магией, проводит китайские чайные церемонии гу фу ча.
В последнее время взаимодействие с компьютером становится всё более естественным. Одним из направлений является создание чат-ботов, которые позволяют пользователю решать его задачи через естественноязыковое общение. В докладе мы рассмотрим Microsoft Bot Framework - набор инструментов, позволяющий создавать единую логику чат-ботов в облаке или в интернет, и затем подключать их к различным каналам общения: Skype, Telegram, Slack и др. Мы также поговорим о том, какие существуют абстракции для более простого программирования ботов на решение реальных задач, и как реализовать естественно-языковое общение на английском языке с помощью когнитивных сервисов Microsoft.
19:00
Александр Попов

Microsoft Bot Framework или как быстро развернуть собственного бота в несколько мессенджеров

Александр Попов — Призер хакатона EVA Chatbots Hackathon
Microsoft Bot Framework или как быстро развернуть собственного бота в несколько мессенджеров
19:30
Алексей Кравец

Как за 8 часов собрать первую линию поддержки Билайна и упаковать в виде чатбота

Алексей Кравец — Победитель хакатона EVA Chatbots Hackathon
Как за 8 часов собрать первую линию поддержки Билайна и упаковать в виде чатбота
Storage Индия
11:00
Открытие конференции
11:15
 Алексей Копытов

Крылья, ноги и хвосты: сильные стороны MySQL и когда PostgreSQL завоюет мир

Алексей Копытов — Алексей Копытов — разработчик MySQL и связанных с ним проектов с 2004г. Работал в компаниях MySQL AB, Sun Microsystems и Oracle. В компании Percona участвовал в разработке Percona Server, XtraBackup и XtraDB Cluster. В настоящее время занимается проблемами производительности MySQL на современном оборудовании.
В наш гибридный век как разработчикам, так и администраторам часто приходится иметь дело со многими разными СУБД. Знание сильных и слабых сторон каждого продукта становится всё более важным навыком, но информация по этим вопросам, которую можно найти в сети, имеет целый ряд проблем: быстрая потеря актуальности в связи с постоянным и быстрым развитием популярных СУБД, разрозненность, а также предвзятость и зачастую некомпетентность авторов.

В мире Web наблюдается значительный интерес к сравнительному анализу MySQL и PostgreSQL. Сообщество PostgreSQL проявляет достойную уважения активность в освещении сильных сторон PostgreSQL и слабых сторон MySQL. При этом сведения о MySQL часто содержат неточности и заблуждения, многие из которых я рассмотрел в серии статей "Памятка евангелиста PostgreSQL" на Хабрахабре.

В этом докладе я попытаюсь посмотреть на эту дискуссию под другим углом: порассуждаем о том, какие сильные стороны есть у MySQL, какие возможности позволяют этой СУБД обслуживать самые масштабные и высоконагруженные веб-проекты, а также попробуем ответить на вопрос "Когда PostgreSQL завоюет мир?"
12:15
Кофебрейк (кафетерий конгрессхола)
12:30
Сергей Петруня

MariaDB 10.1 – что нового

Сергей Петруня — разработчик, член команды MariaDB. В MariaDB 10.1 его вкладом были ANALYZE STATEMENT и EXPLAIN FORMAT=JSON.
Доклад будет обзором новых возможностей MariaDB 10.1 - последнего стабильного релиза MariaDB. Наиболее важные из них:
- Оптимистичная параллельная репликация
- Интеграция с Galera Cluster
- ANALYZE STATEMENT, EXPLAIN FORMAT=JSON, и другие улучшения в оптимизаторе
- Шифрование данных
я объясню каждую из фич, расскажу про возможные варианты их использования, где имеет смысл -покажу данные бенчмарков. В общем, сделаю все, чтобы вы захотели перейти на MariaDB 10.1 :-)
13:00
Перерыв - Флипчарт сессии
13:15
 Александр Алексеев

Новые технологии репликации данных в PostgreSQL

Александр Алексеев — В настоящее время работаю в Postgres Professional, занимаюсь разработкой ядра PostgreSQL. Многократно выступал с докладами на других конференциях. Также являюсь одним из постоянных ведущих подкаста http://devzen.ru/
Первая половина доклада посвящена основам репликации в PostgreSQL - чем синхронная репликация отличается от асинхронной, как сделать фейловер и так далее, а также новшествам, которые ждут нас в PostgreSQL 9.6. Во второй половине будет рассмотрен вопрос настройки автофейловера для PostgreSQL - плюсы и минусы самого подхода, обзор существующих решений данной проблемы, в том числе появившихся совсем недавно, и на каком из них стоит остановить свой выбор.
14:15
 Алексей Копытов

Производительность MySQL: что нового?

Алексей Копытов — Алексей Копытов — разработчик MySQL и связанных с ним проектов с 2004г. Работал в компаниях MySQL AB, Sun Microsystems и Oracle. В компании Percona участвовал в разработке Percona Server, XtraBackup и XtraDB Cluster. В настоящее время занимается проблемами производительности MySQL на современном оборудовании.
MySQL 5.7 предлагает огромное количество улучшений в производительности практически всех компонентов: InnoDB, секционирования, бэкапов, репликации, DDL и оптимизаторе запросов.

В этом докладе мы рассмотрим эти оптимизации подробно, а также поговорим о проблемах, которые остаются актуальными до сих пор, возможных методах их решения и планируемых дальнейших оптимизациях в MySQL 8.
15:00
Обед
15:45
 Иван Фролков

Секционирование больших таблиц в PostgreSQL

Иван Фролков — Фролков Иван, разработчик СУБД с 93 года.
Доклад посвящен способам секционирования таблиц в PostgreSQL и новым разработкам в этой области.
16:30
Дмитрий Ленев

Новые возможности MySQL 5.7

Дмитрий Ленев — член команды MySQL Server Runtime в Oracle. Занимается разработкой СУБД MySQL Server c 2003 года.
MySQL 5.7 наиболее свежая стабильная ветка СУБД MySQL. Данный доклад
посвящен новым функциональным возможностям появившимся в этой версии.

В частности мы поговорим о:
- родной поддержке JSON данных и операций с ними
- генерируемых столбцах
- улучшениях в системе безопасности
- многочисленных измненениях в InnoDB
- изменениях в репликации, таких как поддержка multi-source репликации.
- многом другом

Кроме того будут освещены возможности связанные с новым X плагином, который
стал доступен с релизом версии 5.7.12 в апреле этого года.
Обсудим использование MySQL как Document Store, новый протокол и X DevApi
для коннекторов, новый клиент MySQL Shell.
17:15
Павел Лузанов

PostgreSQL для разработчиков приложений

Павел Лузанов — Руководитель образовательных программ компании "Постгрес Профессиональный"
Что нужно знать разработчику приложений о базах данных вообще и PostgreSQL в частности? Может быть достаточно основ SQL? А может во всём положиться на ORM?

Несмотря на кажущуюся простоту работы с базами данных, для качественной реализации приложений необходимы знания по самому широкому кругу тем:
- Нормализация и денормализация данных
- Типы данных и ограничения целостности
- Хранимые процедуры и триггеры
- Аналитические функции и CTE
- Транзакции и уровни изоляции
- Материализованные представления и секционирование
- Типы индексов и как их использовать
- Методы доступа к таблицам и способы их соединения
- Сбор статистики и планы выполнения запросов

А нужны ли разработчикам знания об основах администрирования и архитектуре СУБД в целом? Нужно ли понимать что и для чего делает VACUUM?

Доклад в первую очередь адресован разработчикам и архитекторам приложений, но также будет интересен администраторам баз данных и всем “сочуствующим”.
17:45
Перерыв
18:00
 Василий Сошников

Обзор Tarantool DB

Василий Сошников — Разработчик на проекте Рейтинги@Mail.Ru компания Mail.Ru Group. Tarantool contributor.
- реальных production user cases применения Tarantool DB;
- о том какие библиотеки используются в месте с Tarantool DB, и зачем они нужны;
- нескольких архитектурных решений;
- какой RPS ждать от этих решений;
- о мастер-мастер репликации.