Привет!

15 февраля, в субботу, приглашаем на очередную встречу сообщества PHP-разработчиков в офисе Badoo. 

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

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

Регистрация по ссылке, обязательная (важно: пишите свои данные кириллицей). Не забудьте дождаться подтверждения участия, оно придет дней за 10 до митапа. 

Первый доклад в 12:00. В программе пять докладов, практически не ограниченное свободное общение за кофе, викторина, розыгрыш билета на PHPRussia, а в качестве afterparty — очередная встреча сообщества BeerPHP Moscow

Программа




«Безболезненная победа над legacy»


Антон Жуков, Area Tech Lead, ManyChat



«То, что вы сейчас называете новым кодом, разработанным с умом и с учетом текущего качества кодовой базы, через неопределенный срок превратится в legacy. Это срок может быть несколько недель, просто потому что новая фича не прошла A/B-тест. Может быть — несколько лет, когда страшный процедурный код, закрывший ряд проблем в моменте, оброс такими же страшными комитами, разросся до огромного компонента, который невозможно читать, но как-то надо поддерживать.

В докладе я расскажу о том, как провести рефакторинг legacy-кода без влияния на работу приложения, протестировать функциональность и производительность, а также бесшовно переключиться на новую версию в production».



«Итерационный подход в борьбе с legacy»


Алексей Коротин, тимлид команды «Платформа», SuperJob



«Легаси — неизбежное явление для любого крупного проекта, и SuperJob тут не исключение. Я расскажу о том, что вообще можно считать легаси, как мы последовательно боремся с ним в своём проекте и какие инструменты для этого используем.

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




«Мёртвый код: найти и обезвредить»


Данил Мухаметзянов, senior PHP-developer, Badoo



Главная проблема легаси, которую мы решаем, — это то, что  инженеры бесполезно тратят время на чтение мёртвого кода.

Причины его появления в новом коде — интенсивная продуктовая разработка с поддержкой API для сотен версий различных клиентских приложений.

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

  • как заботимся об удалении завершенных А/Б тестов
  • контролируем все доступные версии клиентов
  • поддерживаем чистоту API
  • автоматически находим мертвый код и информируем об этом разработчиков




«Тактика распила PHP-монолита»


Лакосников Павел, senior backend engineer в Авито



«Последние три года мы в Авито активно разделяем PHP-монолит на микросервисы. В процессе нашли много устаревших продуктовых и технологических решений — неактуальные хранилища, слишком «толстые» ответы, неиспользуемые методы API.

В докладе расскажу, как мы избавлялись от легаси:? выносили словари и другую статику, выделяли интерфейсы, упрощали иерархию наследования и совершенствовали покрытие тестами. А ещё — как улучшаем то, что пока осталось в монолите.».



«Рефакторинг PHP-кода с применением DDD»


Виталий Чирков, senior backend developer, FunCorp



«Это доклад про рефакторинг PHP кода с использованием тактических паттернов DDD. Я покажу на примерах, с какими проблемами мы столкнулись, какие приёмы работают.

Цель — продемонстрировать подход к реанимации legacy-кода на основе DDD-примитивов и поделиться своим опытом его применения».







Адрес: Москва, Цветной бульвар, д.2, подъезд А, Cafetera (1 этаж)
Регистрация гостей с 11:00
Начало докладов в 12:00.

В перерывах желающие могут посмотреть офис Badoo. 

Пожалуйста, при регистрации указывайте свои имена и фамилии на русском языке. Для пропуска в БЦ захватите с собой документ, удостоверяющий личность. 
 
Количество мест ограничено, обязательно дождитесь подтверждения регистрации (придет за пару недель до митапа). 

Трансляция митапа


Трансляция будет на нашем YouTube-канале, анонсы будут в группах VK и FB. Записи опубликуем там же и в блоге на Habr.

Присоединяйтесь к чату митапа, там регулярно бывают интересные обсуждения!