Пых
8.28K subscribers
180 photos
10 videos
4 files
467 links
Блог @vudaltsov о разработке на PHP.

Хобот: @phpyhobot
YouTube: https://youtube.com/@phpyh
VK Видео: https://vkvideo.ru/@phpyh
Мемы: https://t.me/isPHPdying
Статистика: https://t.me/INOTAROBOT?start=st1219340804

Реклама и вакансии НЕ размещаются.
Download Telegram
Пых
Коллекционный PHP-слоник 💙 Пых! Как вы все знаете, маскот языка PHP — слон. В 1998 году Vincent Pontier придумал дизайн оригинального плюшевого слоника, который с тех пор был многократно переосмыслен по различным поводам. Я давно мечтал о слоне для Пыха…
Последняя возможность купить 💙 слона!

В прошлую среду кампания по сбору средств на партию коллекционных слоников Пых достигла финансовой цели, преодолев порог в ₽400к! Это очень круто, я не ожидал, что всё получится так быстро — спасибо вам огромное за такую мощную поддержку!

Производство стартовало ещё на прошлой неделе, ориентировочная дата завершения — 1 июля. С учётом доставки партии из Иркутска в Москву, я надеюсь, что начну вам отправлять слоников уже 7 июля.

А теперь радостные новости по поводу лекции. Сегодня я связался с менеджером planeta.ru, объяснил, что нам нет смысла ждать 20 апреля, и она согласилась завершить проект досрочно — 2 апреля!

Это означает, что у тех, кто ещё не заказал слоника, осталось 3 дня, чтобы поддержать проект. А я тем временем начинаю готовиться к лекции по MessageBus. До встречи!

https://planeta.ru/campaigns/phpyh_slon
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Пых
Open Source Цех #4 / PHP-CS-Fixer, Brick\Math, Infection Сегодня в очередном выпуске Цеха изучим ревью моего PR в PHP-CS-Fixer с прошлых стримов, поконтрибьютим в пару проектов и посмотрим на канал @open_source_php от Димы Дерепко. Приходите в 18, разогрею…
Смерджили мой PR в Brick\Math с Open Source Цеха #4!

https://github.com/brick/math/pull/90

Суть изменения тривиальна: сузить возвращаемый тип BigInteger::__toString() и BigDecimal::__toString() до numeric-string, чтобы после приведения к строке значения можно было передавать в numeric-string и non-empty-string параметры (мне это потребовалось в недрах Typhoon).

Сначала на стриме я попробовал по-честному расставить типы по всей внутрянке, но упёрся в то, что в местах конкатенации numeric-string не выводится и его нужно форсить (прописывать @var или assert). В итоге предложил автору лёгкий путь: зафорсить тип только в самом методе __toString() и больше ничего не менять.

BenMorel согласился с моими доводами и зарелизил улучшение в 0.13.1.

Процесс контрибьютинга от форка до PR:
https://youtu.be/viWYmUUsD5I?t=3900s
https://vkvideo.ru/video-228746873_456239037?t=1h7m20s
Пыхап #3 / 18 апреля 2025

Ровно через 2 недели состоится третий Пыхап! В программе 2 доклада и так полюбившийся вам Открытый микрофон:

😨 Раскапываем редис
Алексей Сидоркин раскроет нам все нюансы работы с Redis: кластеризация, AOF vs RDB, структуры данных и клиенты для PHP.

💰 Лайвкодим крипту на PHP
Сергей Жук снова достанет свои Money и, пошарив экран, покажет, как перевести крипту и не остаться с "нонсом".

🎤 Открытый микрофон (только офлайн)
В конце митапа любой участник сможет на 5-10 минут завладеть микрофоном и флипчартом и поделиться насущной проблемой, элегантным решением или историей про то, как уронил накануне прод.

🍕 В перерывах традиционное пицца-driven общение, а после митапа афтепати в грузинском ресторане.

Пыхап пройдёт всё там же — в уютном лофте «Событие» на Таганке. Собираемся в пятницу в 18:30. Ну и конечно же митап будет транслироваться на YouTube и VK Видео с записью!

https://phpyh.timepad.ru/event/3250220/#register

Спонсор третьего Пыхапа — YCLIENTS.
Please open Telegram to view this post
VIEW IN TELEGRAM
PHP True Async: обсуждаем RFC с автором

1 марта Дмитрий опубликовал первую версию RFC "PHP True Async". Цели предложения: установить стандарт конкурентного программирования на PHP, разработать С-API, отрефакторить существующие функции и расширения.

В процессе бурного обсуждения в internals было поднято несколько важных вопросов:
▸ На какие этапы следует разбить такой большой проект?
▸ Нужно ли явно активировать Scheduler и как это связано с обратной совместимостью?
▸ Нужна ли в PHP structured concurrency? Как это согласуется с файберами?
▸ Будет ли поддержка многопоточности, как, например, в Go?

Чтобы во всём этом разобраться, я решил организовать стрим с участием Дмитрия, разработчика RFC, и Вадима, автора доклада Чем вам не угодил асинхронный PHP? на PHP Russia 2024.

Встречаемся в эту среду 9 апреля в 19:00 МСК:
https://youtu.be/K9FnRQIzklM
https://vkvideo.ru/video-228746873_456239042

Предвкушаю непростой для понимания разговор, поэтому приступил к изучению матчасти. Вот несколько полезных ссылок:
Первая версия RFC, 1-я фаза обсуждения
Обновлённая версия RFC, 2-я фаза обсуждения
Репозиторий с самыми актуальными текстами Дмитрия на GitHub
Notes on structured concurrency, or: Go statement considered harmful
Java Virtual Threads, Kotlin Coroutines, Swift Structured concurrency
Пых
Пыхап #3 / 18 апреля 2025 Ровно через 2 недели состоится третий Пыхап! В программе 2 доклада и так полюбившийся вам Открытый микрофон: 😨 Раскапываем редис Алексей Сидоркин раскроет нам все нюансы работы с Redis: кластеризация, AOF vs RDB, структуры данных…
Регистрация на Пыхап #3 открыта!

https://phpyh.timepad.ru/event/3250220/#register

В конце следующей недели пройдёт третий Пыхап. В программе 2 доклада, Открытый микрофон (только офлайн), пицца и афтепати.

🗓 18 апреля в 18:30 (пятница)

📍 Событие Лофт на Таганке

💸 1000р. за офлайн-билет, участие онлайн бесплатное

Спонсор митапа — YCLIENTS.
Please open Telegram to view this post
VIEW IN TELEGRAM
Property Hooks во всей красе

Вчера на курсе обратил внимание, что низкоуровневый интерфейс обработчика сообщений, о котором многие из вас скоро узнают на лекции по MessageBus, в PHP 8.4 было бы в разы приятнее имплементировать. Как это выглядит сейчас:


interface Handler
{
public function id(): string;

public function handle(Context $context): mixed;
}

final readonly class CallableHandler implements Handler
{
public function __construct(
private string $id,
private Closure $handler,
) {}

public function id(): string
{
return $this->id;
}

public function handle(Context $context): mixed
{
return ($this->handler)($context);
}
}


Бесит, что для id в имплементации надо так много всего написать. А вот аналогичный вариант в PHP 8.4:


interface Handler
{
public string $id { get; }

public function handle(Context $context): mixed;
}

final readonly class CallableHandler implements Handler
{
public function __construct(
public string $id,
private Closure $handler,
) {}

public function handle(Context $context): mixed
{
return ($this->handler)($context);
}
}


Ну кайф же? -5 строк кода! К сожалению, я пока не могу себе позволить писать опенсорсные либы с "php": "^8.4", но хоть вы за меня на проектах оттянитесь!
___________

Тем временем разобрали половину билетов на Пыхап в следующую пятницу. Регистрация продолжается: https://phpyh.timepad.ru/event/3250220/#register
Пых
PHP True Async: обсуждаем RFC с автором 1 марта Дмитрий опубликовал первую версию RFC "PHP True Async". Цели предложения: установить стандарт конкурентного программирования на PHP, разработать С-API, отрефакторить существующие функции и расширения. В процессе…
PHP True Async: обсуждаем RFC с автором

Сегодня в 19:00 по Москве мы встретимся с Дмитрием и Вадимом, чтобы обсудить RFC PHP True Async и перспективы появления нативной асинхронности в PHP. Основные темы:

▸ Опыт других языков.
▸ Экосистемы AMPHP, ReactPHP, Swoole.
▸ Нужна ли в PHP structured concurrency? Как это согласуется с файберами?
▸ Будет ли поддержка многопоточности, как, например, в Go?
▸ На какие этапы будет разбит такой большой проект?

https://youtu.be/K9FnRQIzklM
https://vkvideo.ru/video-228746873_456239042

🎫 Авторы самых интересных вопросов в чате трансляции получат бесплатные билеты на третий Пыхап!

Для подготовки рекомендую изучить RFC, а также посмотреть доклад Вадима Чем вам не угодил асинхронный PHP? Другие полезные ссылки в первом анонсе.
Please open Telegram to view this post
VIEW IN TELEGRAM
Краудфандинг. Лекция по MessageBus

Проект Коллекционный PHP-слоник Пых успешно собрал средства. Вы перевыполнили план аж на 21%! 💙

Как мы действуем дальше:

▸ Завтра (12 апреля) в 14:00 я прочитаю лекцию по MessageBus. Для получения ссылки на трансляцию обратитесь к новоиспечённому помощнику канала Пых — Хоботу.

▸ По слоникам PHP 8 я передал информацию Сергею Пантелееву. Он уже всем написал в личку и приступил к отправке.

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

Ещё раз всем спасибо за участие и до встречи на лекции!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Пыхап в эту пятницу вечером!

Третий митап от канала Пых пройдёт 18 апреля в 18:30 в Лофте Событие на Таганке.

Как всегда, мы будем транслировать доклады на YouTube и VK Видео с записью, однако завести полезные знакомства, задать вопросы команде YCLIENTS и душевно подискутировать на Открытом микрофоне можно только офлайн!

Регистрируйся, осталось всего несколько билетов: https://phpyh.timepad.ru/event/3250220/

В программе:

😨 Раскапываем редис
Алексей Сидоркин раскроет нам все нюансы работы с Redis: кластеризация, AOF vs RDB, структуры данных и клиенты для PHP.

💰 Лайвкодим крипту на PHP
Сергей Жук снова достанет свои Money и, пошарив экран, покажет, как перевести крипту и не остаться с "нонсом".

🎤 Открытый микрофон (только офлайн)
В этой секции любой участник сможет на 5-10 минут завладеть сценой, поделиться проблемой или решением и получить обратную связь. Кирилл Несмеянов и Антон Морев уже планируют принять участие. Напиши мне, если тоже хочешь выступить.

🍕 Традиционное пицца-driven общение в перерывах, а после митапа — афтепати в грузинском ресторане.

💛 Спонсор третьего Пыхапа — YCLIENTS.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Пых
Пыхап в эту пятницу вечером! Третий митап от канала Пых пройдёт 18 апреля в 18:30 в Лофте Событие на Таганке. Как всегда, мы будем транслировать доклады на YouTube и VK Видео с записью, однако завести полезные знакомства, задать вопросы команде YCLIENTS…
Сегодня вечером состоится третий Пыхап!

🏘 Офлайн
В 18:30, мы будем ждать тебя в лофте «Событие» на Николоямской, 28. Там тебя встретит Инна, будь готов показать ей билет, который пришёл на почту после регистрации.

Если у тебя поменялись планы, ты можешь вернуть билет с полной компенсацией через TimePad. И наоборот, если ты только сегодня надумал прийти, у нас найдутся билеты.

📹 Онлайн
Трансляция начнётся в 19:00 в YouTube, VK Видео и Telegram. Все вопросы из чата я обязательно задам спикеру. По этим же ссылкам Пыхап, как обычно, можно будет посмотреть в записи.
Please open Telegram to view this post
VIEW IN TELEGRAM
Пых
Сегодня вечером состоится третий Пыхап! 🏘 Офлайн В 18:30, мы будем ждать тебя в лофте «Событие» на Николоямской, 28. Там тебя встретит Инна, будь готов показать ей билет, который пришёл на почту после регистрации. Если у тебя поменялись планы, ты можешь…
Пыхап #3

Буквально через несколько минут начнётся третий Пыхап! Залетайте в трансляцию в YouTube, VK Видео и Telegram, комментировать можно прямо под этим постом!

😨 Раскапываем редис
Алексей Сидоркин раскроет нам все нюансы работы с Redis: кластеризация, AOF vs RDB, структуры данных и клиенты для PHP.
⬇️Слайды

💰 Лайвкодим крипту на PHP
Сергей Жук снова достанет свои Money и, пошарив экран, покажет, как перевести крипту и не остаться с "нонсом".
Получившийся код Серёга выложит после Пыхапа.

🎤 Открытый микрофон (только офлайн)
В этой секции любой участник сможет на 5-10 минут завладеть сценой, поделиться проблемой или решением и получить обратную связь.

💛 Спонсор третьего Пыхапа — YCLIENTS.
Please open Telegram to view this post
VIEW IN TELEGRAM
Пых
Пыхап #3 Буквально через несколько минут начнётся третий Пыхап! Залетайте в трансляцию в YouTube, VK Видео и Telegram, комментировать можно прямо под этим постом! 😨 Раскапываем редис Алексей Сидоркин раскроет нам все нюансы работы с Redis: кластеризация…
Третий Пыхап прошёл на ура!

Спасибо огромное всем, кто помогал с организацией, кто выступал, кто присутствовал онлайн и офлайн и задавал вопросы. 💙

Доклады Алексея и Сергея мы скоро зальём отдельными роликами. Открытый микрофон прошёл так же душевно и разнопланово, как и в прошлый раз:

Антон Морев рассказал, как меняется отношение разработчика к работе и деньгам, когда он начинает свой бизнес.

Сергей Исаков озадачился нехваткой молодых пыхарей и предложил пройти мини-опрос джунам, которые ищут работу на PHP.

Николай Шаповалов посвятил в положение дел в сообществе Drupal.

Кирилл Несмеянов подловил на незнании нескольких особенностей PHP.

Следующий Пыхап мы проведём совместно с Lamoda Tech в июне. Подробности будут чуть позже. До встречи!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM