Напоминаю, что не время отдыхать. Время кодить!
Прошло несколько дней с начала акции помощи проекту #Buggregator.
Чего мы достигли:
🪲 Buggregator
- @markin_igor улучшил инициализацию приложения через фичу Spiral Command Sequence
- @butschster наделал кучу фичей, которые теперь нуждаются в документировании: #168, #167, #165, #157, #150
💾 Trap
- @dimajolkin обнаружил, что у файла
- @hello_l0gic решил превентивно закрыть задачи, запланированные на далёкое будущее: внести
- В это время новый пользователь багри накидал годных ишуёв #61, #60
- @roxblnfk наконец-то добавил в Trap DI конетйнер и подгрузку конфигов через DI. В следующей версии trap будет доступно конфигурирование UI порта в т.ч. через env переменные.
👩💻 PHPStorm Plugin:
- @Danil42Russia плотно занялся плагином. Уже выполнен один заход на CI и выдвинуто дельное предложение.
Если честно, я ожидал, что Trap и плагин обойдут стороной, т.к. Trap довольно специфичен, а на плагине Kotlin и узкая специфика JB плагинов. И мы будем видеть большинство участников на доке и Server, т.к. там привычный стэк или кодить не надо.
Всё вышло наоборот: один пришел — оказался магистром плагинов, другой взял psalm (мягко говоря, не конфетка) и никто не пошёл в доку. Что же вы творите на работе, если на выходных берётесь за такое?🙃
В общем, большое спасибо всем участникам! Взяли хороший темп✊ ✊ ✊
Поделитесь с нами в комментариях, а что вам мешает начать контрибьютить?
Мем дня от @markin_igor
Прошло несколько дней с начала акции помощи проекту #Buggregator.
Чего мы достигли:
- @markin_igor улучшил инициализацию приложения через фичу Spiral Command Sequence
- @butschster наделал кучу фичей, которые теперь нуждаются в документировании: #168, #167, #165, #157, #150
- @dimajolkin обнаружил, что у файла
/bin/trap
выставлены не самые удобные права для запуска, и пофиксил это. А также взялся за бэклог по уменьшению psalm baseline и значительно уменьшил его.- @hello_l0gic решил превентивно закрыть задачи, запланированные на далёкое будущее: внести
trap()
в список debug-функций EA Extended плагина для PHPStorm и добавить киллер-фичу трэпа — команду joke
. Последняя из-за невнятного ТЗ немного подзависла.- В это время новый пользователь багри накидал годных ишуёв #61, #60
- @roxblnfk наконец-то добавил в Trap DI конетйнер и подгрузку конфигов через DI. В следующей версии trap будет доступно конфигурирование UI порта в т.ч. через env переменные.
- @Danil42Russia плотно занялся плагином. Уже выполнен один заход на CI и выдвинуто дельное предложение.
Если честно, я ожидал, что Trap и плагин обойдут стороной, т.к. Trap довольно специфичен, а на плагине Kotlin и узкая специфика JB плагинов. И мы будем видеть большинство участников на доке и Server, т.к. там привычный стэк или кодить не надо.
Всё вышло наоборот: один пришел — оказался магистром плагинов, другой взял psalm (мягко говоря, не конфетка) и никто не пошёл в доку. Что же вы творите на работе, если на выходных берётесь за такое?
В общем, большое спасибо всем участникам! Взяли хороший темп
Поделитесь с нами в комментариях, а что вам мешает начать контрибьютить?
Мем дня от @markin_igor
Please open Telegram to view this post
VIEW IN TELEGRAM
Микродайджест багри-видосиков:
👉 На нашем канале публикуются записи лайвкод-стримов Павла на тему рефакторинга SMTP в Buggregator: две части уже в релизе, ещё две на подходе.
📱 Часть 1
📱 Часть 2
👉 Сегодня и завтра Павел планирует на стримить рефакторинг вебхуков багри и переписывание джобов на Symfony Messenger в связке с RoadRunner.
👉 В очередной раз порадовал канал CutCode: в этот раз Данил сделал то, чего мы не смогли сделать сами — профессионально обозрел #Buggregator.
Встречаем лучший существующий обзор Багрегатора:
📱 Смотреть
👉 Кстати, зацените наш промо-ролик на английском. #ChatGPT очень старался.
📱 Заценить
👉 На нашем канале публикуются записи лайвкод-стримов Павла на тему рефакторинга SMTP в Buggregator: две части уже в релизе, ещё две на подходе.
👉 Сегодня и завтра Павел планирует на стримить рефакторинг вебхуков багри и переписывание джобов на Symfony Messenger в связке с RoadRunner.
👉 В очередной раз порадовал канал CutCode: в этот раз Данил сделал то, чего мы не смогли сделать сами — профессионально обозрел #Buggregator.
Встречаем лучший существующий обзор Багрегатора:
👉 Кстати, зацените наш промо-ролик на английском. #ChatGPT очень старался.
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Buggregator introduction
#buggregator #php #docker
Сегодня планируется очередной стрим на канале по Buggregator и разработке. Продолжение рефакторинга вебхуков https://youtube.com/live/UqHMUSAfZa0
YouTube
Buggregator livecoding - Рефакторинг Webhooks и покрываем тестами (Часть 2 из 2)
На стримах я пишу код, делаю рефакторинг кода, доабвляю новые фичи и пишу тесты для Багри.
#php #buggregator #spiral #development
#php #buggregator #spiral #development
Небольшой обзор всякой фигни вокруг PHP фреймворков и опенсорса с жиром и шутками ниже пояса 🚽
Notion
Telegraph (с поехавшими ссылками)
#Article #PHP #МыслиВслух
Notion
Telegraph (с поехавшими ссылками)
#Article #PHP #МыслиВслух
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegraph
В мире PHP #0
Продвинутая рефлексия Symfony посмотрели на типун Удальцова и захотели такой же. Получился компонент типунфъ в сдержанном и консервативном стиле от дедов. Хочешь не хочешь, а эта херня получит распространение. Кирилл Несмеянов, кстати, подсуетился раньше…
Товарищи. Валентин Удальцов прорубает окно в #PHP SRC.
9 мая запущено голосование за его RFC. Будьте уверены, большинство голосов будут за него!
После столь значимого события мы, сообщество PHP, незамедлительно воспользуемся протоптанным маршрутом и войдём в историю, как новаторы.
Для реализации возможности повлиять на будущее PHP нужно зайти на канал @phpyh, тегнуть там @vudaltsov и попросить сделать всего-лишь тоже самое, что и с первым RFC, только с новой мега-киллер-фичей (ради светлого будущего PHP ему будет не сложно).
Вот варианты киллер-фичей:
- Неблокирующий IO во всём PHP
- Сахарок async await, EventLoop и порутины
- Виртуальные интерфейсы
- Трейты с ограниченным скопом
-
- Дженерики
- Внедрение Typhoon на уровне ядра
- Добавить в ядро функцию
- Добавить функцию
Только представьте, какое будущее нас ждёт!
9 мая запущено голосование за его RFC. Будьте уверены, большинство голосов будут за него!
После столь значимого события мы, сообщество PHP, незамедлительно воспользуемся протоптанным маршрутом и войдём в историю, как новаторы.
Для реализации возможности повлиять на будущее PHP нужно зайти на канал @phpyh, тегнуть там @vudaltsov и попросить сделать всего-лишь тоже самое, что и с первым RFC, только с новой мега-киллер-фичей (ради светлого будущего PHP ему будет не сложно).
Вот варианты киллер-фичей:
- Неблокирующий IO во всём PHP
- Сахарок async await, EventLoop и порутины
- Виртуальные интерфейсы
- Трейты с ограниченным скопом
-
implements
внутри трейтов- Дженерики
- Внедрение Typhoon на уровне ядра
- Добавить в ядро функцию
fart()
, которая будет воспроизводить звук пердежа- Добавить функцию
get_objects()
, которая вернёт WeakMap
всех созданных PHP объектов.Только представьте, какое будущее нас ждёт!
📣 Анонсы стримов переехали в отдельную тему. Первый анонс уже там.
UPD:
Если вы поддерживаете это решение и не хотите часто видеть анонсы на каждый стрим, ставьте 🔥
Однако, если анонсы в канале не мешают, ставьте 💊
UPD:
Если вы поддерживаете это решение и не хотите часто видеть анонсы на каждый стрим, ставьте 🔥
Однако, если анонсы в канале не мешают, ставьте 💊
Никто не верил, но это произошло. Валентин уже во всю выполняет заказы фичей в PHP:
- закидывает get_objects() в PHP Internals
- решает нерешаемые вопросы дженериков в PHP
Что дальше? Функция fart(🔥 ) в ядре?
Если да, то попрошу сделать её сразу неблокирующей 👌
- закидывает get_objects() в PHP Internals
- решает нерешаемые вопросы дженериков в PHP
Что дальше? Функция fart(
function fart(int $power, \DateInterval $duration, float $toxicity = 0.1)
Если да, то попрошу сделать её сразу неблокирующей 👌
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
PHP умирает?!
😄
Пора и нам подумать о #PHP. Начнём прямо сегодня, в 19:00МСК.
В гостях Антон Титов. Поговорим про будущее PHP.
https://youtube.com/live/B2LJDGEsPYk?feature=share
В гостях Антон Титов. Поговорим про будущее PHP.
https://youtube.com/live/B2LJDGEsPYk?feature=share
Telegram
Moz Vkusni in PHP Fart Time Chat
Forwarded from Pavel Buchnev
🕘 В 21:00 по Мск запускаем стрим. Пишем PHP микросервисы с GRPC на Spiral + RoadRunner
https://www.youtube.com/watch?v=En0InnKsryA
https://www.youtube.com/watch?v=En0InnKsryA
YouTube
Как создать PHP микросервисы с GRPC: Spiral и RoadRunner | Полное руководство
В этом стриме мы подробно рассмотрим создание PHP микросервисов с использованием gRPC, Spiral и RoadRunner. Пройдемся по всему процессу от настройки до реализации:
Код проекта: https://github.com/php-fart/grpc-microservices
0:00 Начинаем
4:35 Что такое…
Код проекта: https://github.com/php-fart/grpc-microservices
0:00 Начинаем
4:35 Что такое…
Forwarded from Pavel Buchnev
🕘 В 21:00 по Мск продолжаем стрим по GRPC
План такой:
1. Создать каркас приложения
2. Настройка БД
3. Регистрация, Авторизация пользователей
4. Docker compose
5. Если останется время, то OpenTelemetry
https://youtube.com/live/i0Bb9U7SHX4?feature=share
План такой:
1. Создать каркас приложения
2. Настройка БД
3. Регистрация, Авторизация пользователей
4. Docker compose
5. Если останется время, то OpenTelemetry
https://youtube.com/live/i0Bb9U7SHX4?feature=share
YouTube
Как создать PHP микросервисы с GRPC: Docker, Interceptors, OpenTelemetry | Часть 2
Присоединяйтесь к нам во второй части нашего стрима, где мы продолжаем разработку PHP микросервисов с GRPC. В этом эпизоде мы фокусируемся на следующем:
📌 Основные темы:
- Docker окружение: настройка PHP, баз данных, OpenTelemetry, и Buggregator.
- Интерсепторы:…
📌 Основные темы:
- Docker окружение: настройка PHP, баз данных, OpenTelemetry, и Buggregator.
- Интерсепторы:…
Forwarded from Pavel Buchnev
Всем привет. Сегодня планирую очередной стрим по созданию сервисов с gRPC. https://www.youtube.com/watch?v=li3nw7Bidzc В этом стриме будет добавлять еще Temporal в нашу инфру и начинать его использовать.
YouTube
Как создать PHP микросервисы с Temporal + gRPC: Авторизация и регистрацая пользователей | Часть 3
Присоединяйтесь к нам в третьей части нашего стрима, где мы продолжаем разработку PHP микросервисов с GRPC. В этом эпизоде мы фокусируемся на следующем:
📌 Основные темы:
- Docker окружение: установка и настройка Temporal.
- База данных: завершение создание…
📌 Основные темы:
- Docker окружение: установка и настройка Temporal.
- База данных: завершение создание…
Forwarded from Pavel Buchnev
Всем любителям temporal привет. Антон на досуге написал статью по обработке очереди задач с Temporal.
Подготовил перевод для тех, кто не хочет напрягать мозг https://gist.github.com/butschster/2af0b06f693ec615ce55e0c2d4131e53
Оригинал https://spiralscout.com/blog/leveraging-temporal-for-efficient-document-life-cycle-management для тех, кому не нравится перевод ChatGPT )
Подготовил перевод для тех, кто не хочет напрягать мозг https://gist.github.com/butschster/2af0b06f693ec615ce55e0c2d4131e53
Оригинал https://spiralscout.com/blog/leveraging-temporal-for-efficient-document-life-cycle-management для тех, кому не нравится перевод ChatGPT )
Gist
Использование Temporal для эффективного управления жизненным циклом документов
Использование Temporal для эффективного управления жизненным циклом документов - readme.md
Forwarded from Pavel Buchnev
Всем привет! В 21:00 по МСК будет очередной стрим по разработке микросервисной архитектуры на PHP и gRPC. https://youtube.com/live/DJEh8pa7KO4
📌 Основные темы:
- Авторизация пользователя в web сервисе
- Передача авторизационного токена между сервисами (Интерсепторы)
- Обсуждение темы ограничения доступа к определённым эндпоинтам с настройкой прав доступа
- Лайфхаки по работе с инфраструктурой
Жду всех на стрим. Не забывайте про лайки.
📌 Основные темы:
- Авторизация пользователя в web сервисе
- Передача авторизационного токена между сервисами (Интерсепторы)
- Обсуждение темы ограничения доступа к определённым эндпоинтам с настройкой прав доступа
- Лайфхаки по работе с инфраструктурой
Жду всех на стрим. Не забывайте про лайки.
YouTube
Как создать PHP микросервисы с gRPC: Авторизация пользователей | Часть 4
Присоединяйтесь к нам в четвертой части нашего стрима, где мы продолжаем разработку PHP микросервисов с GRPC. В этом эпизоде мы фокусируемся на следующем:
📌 Основные темы:
- Авторизация пользователя в web сервисе
- Передача авторизационного токена между…
📌 Основные темы:
- Авторизация пользователя в web сервисе
- Передача авторизационного токена между…
Не пропустите эксклюзивное интервью с Антоном Давыдовым, ведущим солюшн-архитектором!
🚀 Погрузимся в мир профессионального роста. Обсудим перспективы карьеры после достижения статуса Senior Developer.
💡 Поговорим о роли солюшн-архитектора: что это за специальность, каковы её ключевые задачи и какие навыки необходимы для успеха в этой роли.
🍺 Посидим-попердим. Да и просто нормально проведем время.
⚠️ Закидывайте вопросы в тред, постараемся задать их Антону. А то свои мы так и не подготовили (как обычно).
🚀 Погрузимся в мир профессионального роста. Обсудим перспективы карьеры после достижения статуса Senior Developer.
💡 Поговорим о роли солюшн-архитектора: что это за специальность, каковы её ключевые задачи и какие навыки необходимы для успеха в этой роли.
🍺 Посидим-попердим. Да и просто нормально проведем время.
⚠️ Закидывайте вопросы в тред, постараемся задать их Антону. А то свои мы так и не подготовили (как обычно).
YouTube
🚀От Сеньора к Архитектору: Разбор карьерных троп с Антоном Давыдовым!
🚀 Узнайте, как прокачать свои навыки и вырасти из senior разработчика в незаменимого архитектора ПО! Присоединяйтесь к нашему стриму с Антоном Давыдовым, который раскроет все секреты карьерного роста и мастерства в IT
✨ На стриме обсудим, как элементы системы…
✨ На стриме обсудим, как элементы системы…
Please open Telegram to view this post
VIEW IN TELEGRAM
Сегодня в 21:00 по МСК проводим стрим по профилированию PHP приложений и о том как искать медленный код (Bottlenecks) на примере Laravel и Spiral Framework + Buggregator.
Мы подготовим PHP приложение к запуску с xhprof, сбору профилей и отправки их в Buggregator для анализа. Заодно посмотрим как вообще запускать профайлер, какую информацию он отдает, как ее интерпретировать и т.д. и т.п.
Не пропустите, будет интересно
https://youtube.com/live/CU6gCj5UU84?feature=share
Мы подготовим PHP приложение к запуску с xhprof, сбору профилей и отправки их в Buggregator для анализа. Заодно посмотрим как вообще запускать профайлер, какую информацию он отдает, как ее интерпретировать и т.д. и т.п.
Не пропустите, будет интересно
https://youtube.com/live/CU6gCj5UU84?feature=share
YouTube
Profiling Laravel Apps with XHProf and Buggregator on Steroids!
🚀 Заходите на наш последний стрим, где мы разбираемся с профилированием PHP приложений через XHProf. Узнаете, почему старые инструменты устарели и как с помощью Buggregator превратить профилирование в удовольствие! 🎯
- 🤔 Что новенького? Обсудим проблемы…
- 🤔 Что новенького? Обсудим проблемы…
Очередной упоротый обзор всякой фигни вокруг PHP с жиром и шутками 🚽
https://telegra.ph/V-mire-PHP-2-06-05
Зеркало на Notion, если телеграф опять все ссылки поломает.
⬆️ предыдущая часть
#Article #PHP #МыслиВслух
ℹ️ Если в конце статьи нет ссылки на следующую часть, то статья в телеге подгрузилась не полностью. В этом случае можно открыть в браузере.
https://telegra.ph/V-mire-PHP-2-06-05
Зеркало на Notion, если телеграф опять все ссылки поломает.
⬆️ предыдущая часть
#Article #PHP #МыслиВслух
ℹ️ Если в конце статьи нет ссылки на следующую часть, то статья в телеге подгрузилась не полностью. В этом случае можно открыть в браузере.
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegraph
В мире PHP #1
⬅️ предыдущая часть Мутационное тестирование Напомню, что мутационное тестирование — это отличный способ убедиться в том, что написанные тесты – говно и ничего не тестируют даже при 100% покрытии. Infection Infection теперь поддерживает кастомные мутаторы.…
Всем привет!
🕘 В 21:00 по МСК проведем очередной стрим для любителей RoadRunner, а также для тех, кто слыхал что-то про него, но не понимает зачем оно нужно. 💩
🚀 В стриме будем обсуждать как вдохнуть новую жизнь в монолит на PHP с помощью очередей RoadRunner.
😎 Наш гость, активный контрибьютор в RoadRunner, Владимир Плахотников (@embargo2710)
🧨 Обсудим:
- Проблемы старых демонов: что с ними не так и как RoadRunner делает жизнь лучше.
- Почему RoadRunner? Минимум технических сравнений, только суть.
- Истории из траншеи: как я начал учить Go и не прогадал.
- Обсудим критические ошибки и мелкие фишки, которые мы добавили.
- Итоги внедрения: что у нас получилось и как это помогло.
- Что дальше? Готовимся к HTTP-запросам!
не забудь про лайк и подписку на канал, мы их каждый день пересчитываем и складываем в копилку 🐷
https://www.youtube.com/live/otFglUGsSi0"
🕘 В 21:00 по МСК проведем очередной стрим для любителей RoadRunner, а также для тех, кто слыхал что-то про него, но не понимает зачем оно нужно. 💩
🚀 В стриме будем обсуждать как вдохнуть новую жизнь в монолит на PHP с помощью очередей RoadRunner.
😎 Наш гость, активный контрибьютор в RoadRunner, Владимир Плахотников (@embargo2710)
🧨 Обсудим:
- Проблемы старых демонов: что с ними не так и как RoadRunner делает жизнь лучше.
- Почему RoadRunner? Минимум технических сравнений, только суть.
- Истории из траншеи: как я начал учить Go и не прогадал.
- Обсудим критические ошибки и мелкие фишки, которые мы добавили.
- Итоги внедрения: что у нас получилось и как это помогло.
- Что дальше? Готовимся к HTTP-запросам!
не забудь про лайк и подписку на канал, мы их каждый день пересчитываем и складываем в копилку 🐷
https://www.youtube.com/live/otFglUGsSi0"
YouTube
Разбираем, как вдохнуть новую жизнь в монолит на PHP с помощью RoadRunner Jobs. 🚀
Привет, всем! Сегодня у нас особенный стрим: разбираем, как можно вдохнуть новую жизнь в монолит с помощью RoadRunner Jobs. 🚀
Что ждет нас сегодня:
- Проблема старых демонов: что с ними не так и как RoadRunner делает нашу жизнь лучше.
- Почему выбрали RoadRunner?…
Что ждет нас сегодня:
- Проблема старых демонов: что с ними не так и как RoadRunner делает нашу жизнь лучше.
- Почему выбрали RoadRunner?…