Воркшоп: «Painless Rails - Наводим порядок в моделях»

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

ИТ и интернет 16+

Рельсы — офигенные! Куча бизнесов использует рельсы. Рельсы помогают разрабатывать (и зарабатывать) очень быстро, и мы за это их любим. 

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

В целом не важно, чистые ли у вас рельсы, вперемешку с dry-rb или еще с чем то. Опыт показывает, что проблема не в инструменте, а в том как он используется.

В рамках воркшопа:

  1. Проанализируем из-за чего возникают проблемы с ростом кодовой базы

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

  3. Разберем кейсы из жизни:

    • «Сallback hell»
    • «Комбинаторный взрыв» кол-ва состояний системы
    • Засилие условных и кастомных валидаций
    • Опасные консерны

Об авторе:

Разработчик с 16-летним опытом работы (14 на Ruby on Rails), преподаватель на Хорошем программисте, автор  руководства по современному Make, создатель курса по GitLab CI

Выступал на RubyRussia, RubyConf, Euruko, SECON, RubyC и многих других международных конференциях. 

В прошлом соучредитель агенства 7bits, со-организатор конференций HappyDev, работал в Гитлабе, писал код для компаний Roomorama, Groopt, Bioproximity, Fieldwork и еще десятка других. 

 

Про что расскажу:

  • Три типа валидаций. Где какую использовать и как реализовывать в коде
  • Application logic vs business logic. Применение принципа на практике
  • По какому принципу стоит наруливать абстракции в рельсах, и как не нарулить бессмысленных абстракций
  • Про универсальную замену колбэков
  • Чему место в моделях, а чему нет, и почему
  • CQS и репозитории
  • Как организовывать сервисный слой оптимально с учетом идей DDD и принципа Single Layer Abstraction
  • Как делить код на типовые слои и как вводить дополнительные

После воркшопа

  1. Будете знать где подстелить соломки в следующий раз когда придется писать на рельсах с нуля
  2. Будете знать как нарулить простую масштабируемую архитектуру не воюя при этом против Rails
  3. Сможете спокойно в одного отрефакторить небольшое приложение на 50 моделей/контроллеров в обозримый срок
  4. Научитесь смотреть на происходящее в коде с разных сторон
  5. Научитесь не только отличать хороший код от плохого, но и будете знать как написать хороший самостоятельно
  6. Будете понимать почему именно хороший код хорош. Научитесь аргументированно отстаивать свою точку зрения
  7. На типовых задачах будете в среднем в 1.5-2 раза эффективней
  8. Cможете привести в порядок, например, такой код:


 

Самое главное, будет понятно как не допускать подобного.

Формат: Разогрев в пятницу + активная работа в субботу

  • 24 июля, пятница:
    • 19:00 мск (1.5 часа) — предварительный созвон: парад типичных рельсопроблем, настройка окружения, задачка для разогрева.
  • 25 июля, суббота: 
    • 11:00 мск (2.5 часа) — разбор кейсов, теория, домашка
    • 14:00 мск — самостоятельная работа с обсуждением в чате
    • 18:30 мск (1.5 часа) — разбор домашек, ответы на вопросы
  • По необходимости организуем дополнительный созвон в воскресенье

Что получает участник:

  • доступ к трем созвонам
  • видеозаписи созвонов + слайды с теорией
  • фидбэк по двум домашкам
  • поддержку в течение недели после воркшопа
  • подборку дополнительных материалов
  • доступ в чат Painless Rails Lab
  • доступ ко всем следующим версиям этого воркшопа

Поделиться:

1791 день назад
24 июля 2020, начало в 19:00

Событие пройдет онлайн

Уже есть билет
Ссылка на онлайн-событие рассылается за час до его начала.
Получить ссылку или сделать возврат

Поделиться:

Связь с организатором

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

На этот адрес придёт ответ от организатора.

По номеру с вами свяжется организатор

Подпишитесь на рассылку организатора

Возврат билета

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

Подробнее о возврате билетов