DiscoverМежду Скобок
Claim Ownership
14 Episodes
Reverse
Обсуждаем с Сашей его ощущения от многолетнего опыта работы над open source фреймворком. Как управлять разработкой, как бороться с хейтерами, как продвигать свою разработку.
Содержание:
0:45 Почему open source токсичный?
7:30 Как Yii оказался без медиа поддержки
13:10 Сколько людей/времени нужно для жизни фреймворка
14:05 Зачем идти делать фреймворк
16:05 Как Саша стал лидом в Yii
17:30 Что нового в Yii3
19:00 Есть ли текучка в команде Yii
22:55 Как выглядит работа над фреймворком
30:35 Почему так мало обучающего контента
33:40 Будущее Yii
35:50 Yii скорее жив или мёртв
36:40 Поддержка от компаний
37:35 Потребительское отношение к open source
39:30 Open source в будущем
43:40 Есть ли жизнь в Yii1
48:50 Как Саша до сих пор не выгорел
49:50 Что не нравится в Yii3
51:20 Как происходит создание новой фичи в фреймворке
56:40 С какими мыслями идти в open source
1:00:20 Как Саша контрибьютил в CodeIgniter
Обсуждаем с Антоном, для чего нам в PHP-проектах может понадобится gRPC. В конце даже решили немного пофилософствовать на тему производительности в PHP.
Содержание:
0:15 Чем занимается Infrastructure Engineer?
2:07 Какую проблему мы пытаемся решить с gRPC?
3:45 Зачем нам ещё один протокол?
7:07 Что такое gPRC как фреймворк
8:12 Что такое protoc buffers
11:38 Могу ли я гонять простой текст или json по gRPC?
12:30 Почему мы всё время обсуждаем gRPC и protobuf?
13:45 Насколько больно использовать gRPC в PHP
17:30 Твой путь к gPRC
23:19 Распиливать на Go-сервисы или внедрять gRPC в PHP?
24:15 Как мне понять, что мне нужен gPRC
32:00 Насколько больно будет переехать с Rest на gRPC?
35:50 Worst practices для gRPC
46:15 Подходит ли PHP для gRPC?
48:15 PHP как язык прототипирования
53:00 В какую сторону развивается PHP?
55:40 Для кого писать код: для людей или для машин?
Обсуждаем с Антоном, что значит быть архитектором большого (легаси) PHP-проекта. Что входит в задачи архитектора и как их совмещать с деврел активностью.
Содержание:
2:40 От лида до архитектора
3:40 Обязанности архитектора
9:01 Валидация рещений архитектора
12:20 Архитектурный еженедельник
16:37 Лог факапов
17:30 Как совмещать работу архитектора и деврел
25:40 Таймменеджмент
35:10 Что такое команда архитектуры
37:20 Рефакторинг большого легаси монолита
42:33 Как продать бизнесу команду архитекторы
46:50 Приоритетность задач архитектора
49:00 Позиция архитектора на счет хотфиксов и костылей
50:30 Взаимодействие архитектора с другими командами
51:50 Подходящее ли сейчас время
Telegram канал DevLead (о веб-разработке и управлении) - https://t.me/devlead
Обсуждаем с Валентином статический анализ в PHP:
- Почему PHP пошел в сторону строгой типизации
- Для чего нужны статические анализаторы и как они работают
- Будущее статических анализаторов
Содержание:
0:55 Почему PHP пошел в сторону строгой типизации
4:00 Для чего нужны статические анализаторы
7:05 Как они работают под капотом
15:35 Почему Psalm?
20:44 Внедрение статического анализа в команде
27:22 Визуальный долг
30:35 Статический анализ в CI
35:03 Сообщество Psalm
39:17 Минусы статического анализа
44:13 Будущее статических анализаторов
51:20 Добавлять ли статический анализ в новый проект
Telegram канал Пых - https://t.me/phpy
Статьи Валентина - https://medium.com/phpyh
YouTube канал PHP Point - https://www.youtube.com/channel/UCgqg8zPxOopwK-FoNeThByA
Рассуждаем с Владимиром о том, нужны ли в обычном PHP веб-приложении unit-тесты или вполне достаточно будет функциональных. Обсуждаем когда бывают полезны mock-и и зачем тестировать свои собственные тесты.
Содержание:
0:40 Функциональные тесты vs юнит тесты
8:15 Кейсы для юнит тестов
11:40 Мокать или нет
17:20 Моки, фейки, стабы
22:02 Нужно ли тестировать приватные методы
24:14 Test coverage
28:40 Когда нужно думать о dummy-реализациях
32:44 Когда использовать мутационное тестирование
Доклад "Мутационное тестирование в PHP" - https://youtu.be/EPU47QqtMiU
Открываем завесу тайны над магией АОП в PHP с автором АОП фреймворка для PHP Александром Лисаченко: что такое аспектно-ориентированное программирование, как это работает, кому и в каких кейсах будет полезно.
Содержание:
0:16 Что такое АОП?
2:54 Идея написать свой фреймворк
7:25 Почему фреймворк называется Go?
10:20 АОП с точки зрения клиентского кода
17:40 История архитектуры АОП фреймворка
21:27 Как АОП дружит с разными PHP фреймворками
24:40 Сообщество АОП PHP
33:15 Отношение PHP сообщества к АОП
36:40 Как понять нужен ли мне АОП?
39:00 Кейсы для АОП
44:25 Документация фреймворка
48:15 Самые необычные кейсы АОП
53:08 Планы на будущее
55:45 Кому и когда подойдёт АОП
Репозиторий фреймворка Go! AOP PHP - https://github.com/goaop/framework
Документация к фреймворку - https://go-aop-php.readthedocs.io/en/dev/
Официальный сайт + статьи об АОП - http://go.aopphp.com
Доступ к внутренним структурам PHP из самого PHP - https://github.com/lisachenko/z-engine
Design by Contract фреймворк для PHP - https://github.com/php-deal/framework
Доклад Саши про АОП (англ) - https://youtu.be/CIXfYbnom6s
Обсудили с Олегом его опыт наставничества в IT. Кто такой наставник? Как это совмещать с основной работой? Зачем менторить других людей? На все эти вопросы мы попытались найти ответы в этом выпуске.
Содержание:
0:22 Кто такой ментор
1:56 В чём мотивация быть ментором
8:38 Опыт работы в Htmlacademy
10:00 Не мешает ли это твоему собственному развитию
13:27 Где брать время менторство
15:23 Работа с учениками
26:44 Личный проект "nauchuka"
38:27 Работа с негативным фидбэком
42:35 Про скилы преподавателя
47:20 Нужен ли наставник в IT?
50:22 Планы на будущее
Доклад Олега "Как стать наставником в IT" https://youtu.be/mzvmLavzNvw
YouTube канал Олега -
https://www.youtube.com/user/olegsklyarov
Проект "nauchuka" - https://nauchuka.ru
Обсудили с Юлией (архитектор в iSpring) как они у себя в команде решали проблемы монолитного приложения, не переходя на микросервисную архитектуру, какие шишки набили и какие выгоды получили.
Содержание:
0:12 Чем должен заниматься архитектор
2:15 Что такое монолит
9:03 Как организовать код модулей в проекте
12:33 Как внедряли DDD и Clean Architecture
18:32 Как поддерживать архитектуру приложения
21:15 Как получать в одном контексте данные из других контекстов
24:19 Проблема с дублированием кода
26:52 Роль ивентов в общении между модулями
29:17 Для каких приложений подойдёт монолит
34:00 Новая фича: модуль в монолите или отдельный микросервис
35:16 Монолит - промежуточный шаг к микросервисам?
38:17 Тяжело ли внедряется новая архитектура
42:39 Презентация новой архитектуры команде/бизнесу
Доклад Юлии "Модульный монолит как альтернатива микросервисам" - https://youtu.be/xT25xiKqPcI
Вторая часть интервью с Алексеем Корнеевым - devrel Skyeng. В этом выпуске мы будем обсуждать актуальную сейчас тему - проведение онлайн митапов. Обсудим какие инструменты использовать для проведения трансляции и как организовать обсуждение доклада. Какое будущее дальше у онлайн событий и что будет когда самоизоляция закончится.
Содержание:
0:36 Как отразилась самоизоляция на жизни PHP сообщества
6:52 Перенос оффлайн митапа в онлайн
10:55 Опыт создания онлайн митапа
14:04 Как организовать обсуждение доклада в онлайн
16:53 Почему не записывали на видео обсуждение докладов
26:40 Фидбэк после онлайн митапа
28:50 Планы на будущее по онлайн митапам
32:30 Конкуренция между онлайн ивентами
38:05 Есть ли смысл звать англоязычных спикеров на онлайн митап
41:42 Судьба онлайн митапов после самоизоляции
45:05 Зачем собираться оффлайн когда есть онлайн?
Записал новый выпуск с Алексеем Корнеевым - devrel Skyeng. Запись получилась очень большая, поэтому решил разбить её на несколько выпусков.
В первом выпуске мы поговорили о PHP-сообществах в России. Обсудили что нужно чтобы создать своё региональное сообщество с нуля. Как искать помещение для проведения митапов, как делать онлайн трансляцию.
Содержание:
0:18 Чем занимается devrel в Skyeng
2:35 Состояние PHP сообщества в России
6:15 Что нужно, чтобы в регионе создать своё PHP-сообщество
11:02 Роль личности в организации сообщества
14:38 Как искать помещение для митапа
24:00 Нужна ли видео трансляция на митапе
32:00 Что делать с хейтерами
33:22 Нужно ли афтепати и как собирать фидбэк по митапу
40:28 Персональный бренд сообщества
46:50 Чеклист начинающего сообщества
Рассказ Михаила о том, как в компании ManyChat построили highload на Redis и PHP.
0:13 Что такое ментор бэкенд коммьюинити
5:20 Highload стэк в ManyChat
9:22 Использование Redis в качестве очереди
14:10 Адаптация архитектуры под стремительный рост нагрузки
19:20 Как PHP справляется с большим потоком данных
23:55 Опыт с асинхронным PHP и ReactPHP
32:36 Об использовании фреймворка Yii
33:55 Планы по изменению стэка на другие языки и фреймворки
37:40 Опыт использования ReactPHP в продакшене
41:45 Дальнейшие планы по росту
45:04 Мониторинг
Статья на Хабре "Обработка миллионов событий в сутки при помощи каскадов очередей" - https://habr.com/ru/company/manychat/blog/492964/
Доклад Миши "Обрабатываем 30+ миллионов событий в сутки, без магии и смс " - https://youtu.be/MW5ggSimrKc
Обсуждаем с Дмитрием его опыт перехода с Doctrine ORM к CQRS.
2:10 Что такое CQRS: команды и запросы
5:15 Роль ORM в CQRS
8:40 Нужна ли асинхронность
10:55 CQRS на уровне HTTP-ендпоинтов
12:28 Путь от Doctrine к CQRS
16:45 Применение CQRS на уже написанный проект
18:40 От CQRS к Event Sourcing
21:08 Для каких приложений подходит CQRS
26:25 С какими проблемами можно столкнуться
28:09 Тестирование
Доклад Дмтрия "Половина ORM или как перестать бояться CQRS?" - https://youtu.be/wfkLPF0pJmQ?t=3514
Антон Морев - основатель и технический директор компании Wormsoft делится своим опытом использования GraphQL в PHP проектах.
1:05 Почему решили переехать с REST на GraphQL?
4:10 Верно ли мы понимаем концепцию GraphQL
8:53 В чем приемущество для бэкенда
14:35 Обработка ошибок
19:07 Как внедряли GraphQL в проект
24:40 Проблемы, которые могут возникнуть
29:20 PHP и GraphQL
35:50 Старт нового проекта на GraphQL
39:10 Когда использовать REST, а когда GraphQL?
42:25 GraphQL - это не серебрянная пуля
Доклад Антона "Переход от REST API к GraphQL на примере реальных проектов" http://bit.ly/3dBhUUS
В этом выпуске мы с Дмитрием Косовым обсуждаем опыт переноса легаси приложения с фреймворка Zend на современный Symfony.
2:10 Причины переезда на новый фреймворк
8:20 Как продать это бизнесу
11:40 Roadmap переезда
18:16 Почему переезд на Symfony, а не другой фреймворк
20:00 Переписывать постепенно или написать всё с нуля
32:00 Как совмещать новые фичи и переезд на другой фреймворк
38:30 Тесты и возможные фейлы
42:25 Итоги 2ух лет переезда
45:11 Где найти силы на "бесконечный переезд"
53:20 Напутствие тем, кто хочет перенести легаси проект на новый фреймворк
Доклад Дмитрия "Чемодан без ручки"
https://youtu.be/tJvLJ_G2PEc?t=1