Главное Ruby-событие 2017 года

23 сентября, Москва

Конференция RailsClub — это отличное место, где можно получить новые знания, пообщаться с коллегами и звездами Ruby, узнать из первых рук, как будут развиваться Ruby и Rails, прокачать свои навыки и вдохновиться на следующий год. Будем обсуждать проектирование, разработку, тестирование, отладку, оптимизацию под большие нагрузки, масштабирование и эксплуатацию RoR проектов.

КУПИТЬ БИЛЕТ
Цена билета сейчас: 8 000 руб.
Потом: 9 000 руб.

Спикеры

List piotr  1
Piotr Solnica

Автор rom-rb и dry-rb, Icelab

List lrznej h
Richard Schneeman

2016 Ruby Hero. Топ 50 Rails contributors. Maintainer of Sprockets, Heroku

List chloe square
Nick Sutterer

Автор Trailblazer, Trailblazer

List luka
Luca Guidi

Автор Hanami, веб фрэймворка для Ruby, OSS dev

List 13718099 10209328905314615 2109575711 o
Кир Шатров

Production Engineer, Shopify

List 431703475 14483351201751170566
Антон Давыдов

Software developer. Open source enthusiast, Hanami core

List gyhqyzrrnfc
Андрей Молчанов

Software Developer, Evrone

List dementev
Владимир Дементьев

Разработчик, Evil Martians

List 803118681 17053652220582616746
Анна Щербинина

Teamlead, Artec3D

List profile
Никита Шильников

Dry-rb и Rom-rb , Core developer

List sobolev
Никита Соболев

Организатор elixir-lang.moscow, амбассадор Auth0

, Wemake.services

List batsov   %d0%ba%d0%be%d0%bf%d0%b8%d1%8f
Bozhidar Batsov

VP of Engineering в Toptal, Автор Rubycop и редактор Ruby и Rails style guides

List sheglov
Александр Щеглов

Разработчик, VoltMobi

Программа

Поток 1
10:15
Threads Aren't Evil

Okay, so threads are pretty evil. But they are also useful, and given the right development patterns, not impossible to work with. In this talk we'll look at some real world Ruby libraries where threads were applied to accomplish otherwise impossible tasks. We'll look at re-writing a real world library to support parallel execution by threads for performance gains. If you're not comfortable with the "T" word (threads), this talk is the perfect introduction to practical thread programming in Ruby

11:00
Rom-rb 4.0

Coming soon

11:45
12:15
Решаем проблемы типа

Ruby — динамически типизированный язык, но это не значит, что в нем нет типов. Иногда мы хотим большей предсказуемости и очевидности от кода, но у нас нет инструментов для этого в самом языке. Речь пойдет о геме dry-types — одной из основных зависимостей dry-validation и ROM.

12:45
Тесты тоже должны быть быстрыми

Тесты занимают важную часть разработки, особенно на Ruby и Rails. Как правило, мы мало уделяем вниманию организации кода тестов и их оптимизации. До тех пор, пока не замечаем, что тратим слишком много времени, чтобы увидеть зелёный цвет в конце тоннеля. Я хочу рассказать о том, как обнаружить проблемные места в тестах, показать способы их устранения, а также представить новый инструмент, который поможет вам в этом – TestProf.

13:15
Архитектура фреймворка фоновых задач

Наверное, каждый Ruby-разработчик использовал очередь задач и Sidekiq. Однако в сложном проекте фоновые задачи это гораздо больше, чем просто очередь: это приоритетизация очередей, ограничение ресурсов, "уникальные" задачи и батчинг на группы задач. Как обеспечить "справедливую" очередь на случае когда один клиент добавил миллион задач, а другой - всего одну? Что происходит с задачами, когда мы хотим остановить воркер после выкатки новой версии приложения? Что делать с задачами, которые проходят по всем записям в БД и занимают неделю? В докладе поговорим о том, что скрывается под капотом всех этих фич - и как некоторые из них реализует Sidekiq (Pro). Послушав доклад, эти фичи перестанут быть для вас магией и станут обычными структурами данных.

13:45
14:45
Elixir - не Ruby, а лучше

Один из создателей Rails - Jose Valim - создал свой язык программирования. Такой непохожий, но такой знакомый! Еще бы, ведь он частично вдохновлялся Ruby, когда создавал его. И многие стали считать язык Elixir - новым Ruby. А вот и нет! Elixir - принципиально другой язык, и непонимание различия подходов и принципов погубили уже не один проект. Предлагаю разобраться, что же за новые идеи нам предлагают.

15:15
Functional web with Ruby

Coming soon!

16:00
Ruby Is Dead

Having a simple programming language doesn't mean the applications will be simple. Higher abstractions are needed - but Ruby doesn't seem to give us those! Here is a tour through other languages, and how we can have nice things in Ruby

16:45
17:15
Сказ о синхронных и асинхронных парадигмах

Web основан на коммуникации: взаимодействие между сервисами, серверами, утилитами, классами в приложении. Изначально выделились две полярности, синхронное взаимодействие между компонентами и асинхронное. Очевидно, без синхронного взаимодействия не обойтись когда реакция напрямую связана с ответом, полученным на запрос. С асинхронными запросами тоже довольно просто, нам не важно когда они выполнятся, главное, чтобы были выполнены. Позже появились гибриды, которые семантически синхронны, а в реализации асинхронны. Как пример - общеизвестный лонг-пуллинг. Для асинхронных нередко указывается время за которое они должны отработать. Случается, что ответить надо нескольким клиентам, вместо одного. Каждый из типов имеет свои особенности, сильные и слабые стороны, которые мы рассмотрим. Но что если взглянуть на синхронность и асинхронность под другим углом?

17:45
Что нам стоит экосистему построить

Два года назад, работая над Hanami, я не подозревал, насколько важна экосистема для проекта. Каждый день в своей работе мы используем самые современные технологии: языки, фреймворки, плагины и другие продукты. Мы не задумываемся, сколько времени экономим благодаря развитой экосистеме и готовым решениям распространенных проблем. Например, многие любят Rails за возможность создать MVP в максимально короткие сроки. В этом заслуга не только самого фреймворка: вокруг Rails существует целая система гемов, а решения большинства задач уже описаны. Поэтому развитая экосистема важна для продукта, которым будет легко и комфортно пользоваться. Я поделюсь опытом создания экосистемы Hanami. Расскажу, как технология развивается благодаря ее окружению, на какие грабли мы наступили в процессе работы и с чего бы я начал разработку экосистемы, если бы вернулся на 2 года назад.

18:15
Виртуальная машина Ruby

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

Партнеры

Контакты

+7 (999) 112-53-89 elena_nosuha
Конгресс-центр Технополис
Волгоградский проспект, 42к5

Спасибо, ваши данные отправлены!

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

К сожалению, произошла ошибка. Попробуйте еще раз.

Спасибо, ваш билет оплачен.

До встречи на конференции!