TGViewer
Channel Public Channel
Пых

Пых

@phpyh

Блог Валентина Удальцова о разработке на PHP.

Хобот @phpyhobot
https://youtube.com/@phpyh
https://vkvideo.ru/@phpyh
https://t.me/isPHPdying

Статистика: https://t.me/INOTAROBOT?start=st1219340804

Для связи используйте личные сообщения канала.
Subscribers
7.82K
Photos
287
Videos
20
Links
629

Showing posts older than #371 · Back to latest

Older Posts 20 shown
Post #370 6.65K
Пых PHP Extended Type System v0.1.0 Пыхари, сегодня мы наконец-то увидим, как я на чём-то ставлю тег, пусть и 0.1.0! Встречаемся через час на уютном PHP Point! https://youtu.be/5c0WdgAnH_k
PHP Extended Type System 0.1.0 🚀

https://github.com/php-extended-type-system/type/releases/tag/0.1.0
https://github.com/php-extended-type-system/type-stringifier/releases/tag/0.1.0
https://github.com/php-extended-type-system/type-reflection/releases/tag/0.1.0

УРА!!! Всем спасибо!
GitHub Release 0.1.0 🚀 · typhoon-php/type Released during live stream at PHP Point. Спасибо Пыхарям за поддержку ❤️
  • 🔥 29
  • 🍾 9
  • 🎉 5
  • 👍 1
Post #369 5.7K
PHP Extended Type System v0.1.0

Пыхари, сегодня мы наконец-то увидим, как я на чём-то ставлю тег, пусть и 0.1.0!

Встречаемся через час на уютном PHP Point!

https://youtu.be/5c0WdgAnH_k
YouTube PHP Extended Type System v0.1.0 Подписывайтесь на наши каналы в Telegram: • Пых https://t.me/phpyh, • PHP Digest https://t.me/phpdigest, • PHP умирает?! https://t.me/isPHPdying. Поддержите канал на Boosty: https://boosty.to/phpyh.
  • 🔥 32
  • 👍 12
  • 🤩 2
Post #368 5.71K
🎲 Разыгрываю билет на Podlodka PHP Crew!

Как вы уже знаете, ранее я отобрал двух участников воркшопа по статанализу на Podlodka PHP Crew, и сегодня вечером в 19:00 мы с Алесем и Андреем обмажемся типами по-полной, уж поверьте мне. Но внезапно я вспомнил, что у меня есть дополнительная проходка на конфу, и решил её разыграть!

Билет на Подлодку получит тот, кто первым правильно решит задачку: https://psalm.dev/r/ed78fa67f7. Там нужно поправить все ошибки одним изменением, не прибегая к @psalm-suppress.

Исправленный сниппет присылайте в личку так же ссылкой на psalm.dev. Решение задачи разберём завтра на PHP-линче в 21:00 (проведём после Подлодки).
  • 👍 12
  • 🔥 6
  • 🤮 3
Post #367 5.2K
  • 🤣 42
  • 😨 16
  • 👍 5
  • 🔥 5
  • 🤔 3
  • 🤝 3
Post #366 5.04K
function phpyh(array &$value): void
{
$value = 1;
}

$value = [];
phpyh($value);

var_dump($value);
  • 👍 9
Post #365 6.37K

Forwarded from PHP умирает?!

Конкурс от канала PHP умирает?!

До 1-ого марта скинь в личку @vudaltsov идею для озвучки сцены из фильма или сериала.

Условия:
• сцена должна быть короткой (не дольше 30 секунд),
• предлагаемый вариант озвучки должен быть связан с PHP,
• преимущество получат самые смешные варианты, которые не выставляют PHP в плохом свете (по крайней мере, явно).

Примеры:
• https://t.me/isPHPdying/19,
• https://t.me/isPHPdying/26,
• https://t.me/isPHPdying/124,
• https://t.me/isPHPdying/125.

Что присылать:
• фрагмент фильма или сериала или ссылку на него с тайм-кодом,
• текст альтернативной озвучки,
• можно несколько вариантов.

Призы:
🥇 месяц подписки object на Пых Boosted,
🥈 месяц подписки array на Пых Boosted,
🥉 месяц подписки array на Пых Boosted.

Все три ролика будут обязательно озвучены и выложены на канале после подведения итогов. С нетерпением ждём ваших идей!
  • 🔥 6
  • 👍 4
  • ❤ 1
Post #364 6.14K
Post #363 6.55K
Не игнорьте .idea в репозитории
(Реинкарнация старого доброго поста)

Я считаю, что на проекте не должно быть строгой фиксации на IDE. Каждый может кодить в чём хочет. Главное, чтобы в итоге код был причёсан в согласованном командой стиле. И для этого нужны не git-хуки и не расшаренные конфиги IDE, а CI с проверкой на Code Style. Тогда можно хоть с телефона в браузере левой ногой правки вносить — вмерджить неправильный код в мастер всё равно не получится.

А теперь мысленно доведём ситуацию до абсурда, чтобы выявить проблему. Представим, что каждый из 100 разработчиков проекта решил использовать свою кастомную IDE с уникальными временными файлами и предложил по одному PR в каждый из 100 микросервисов на изменение .gitignore. Поздравляю, у нас 10_000 PR! 😮

Вывод: код должен быть IDE-агностик, то есть не зависеть от среды разработки!

И это элементарно достигается настройкой глобального .gitignore на машине разработчика. Каждый прописывает себе те исключения, которые необходимы для его ОС, IDE и прочих инструментов, а затем спокойно открывает абсолютно любой проект, не боясь закоммитить лишнее.

Добавьте всего лишь две команды в ваш чек-лист для онбоардинга:

git config --global core.excludesfile ~/.gitignore
echo '.idea/' >> ~/.gitignore

—————————
PHP-линч #9 сегодня в 19:00.
  • 👍 80
  • 💩 21
  • ✍ 4
Post #362 5.05K
Пых Ищу любителей статанализа для воркшопа на Podlodkа PHP Crew 28-ого февраля в 19:00 на второй Подлодке PHP я проведу воркшоп "Упарываемся по статанализу: условные типы и вложенные дженерики". Для выступления мне потребуются два добровольца, которые под моим…
Спасибо всем откликнувшимся, мне было очень приятно связаться с каждым! К сожалению, пришлось выбирать, так как по сценарию нужно 2 участника. Но что-то мне подсказывает, что это не последняя движуха такого рода. 😉

Правильное решение задачи: https://psalm.dev/r/064023dcb7.

И всех ещё раз приглашаю на Podlodkа PHP Crew, в частности на мой воркшоп "Упарываемся по статанализу: условные типы и вложенные дженерики" 28-ого в 19:00.
podlodka.io Онлайн-конференция Podlodka PHP Crew, сезон #8 Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным вопросам PHP-индустрии, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
  • 👍 21
Post #361 7.06K
Post #360 6.65K
Ищу любителей статанализа для воркшопа на Podlodkа PHP Crew

28-ого февраля в 19:00 на второй Подлодке PHP я проведу воркшоп "Упарываемся по статанализу: условные типы и вложенные дженерики". Для выступления мне потребуются два добровольца, которые под моим руководством выполнят несколько познавательных заданий и на следующий день смогут перейти на Kotlin или Haskell.

Короче, пыхарь, если ты практикуешь статанализ, готов пообщаться в онлайне и не занят через две недели во вторник вечером, пиши мне в личку @vudaltsov. Чтобы проверить свои знания, реши задачку https://psalm.dev/r/e7e74a61cf.

Ах, да, те, кого я отберу, получат бесплатные билеты на Podlodkа PHP Crew!

————————————
PHP-линч #8 будет в четверг в 18:00.
  • ❤ 14
  • 👍 10
  • 🔥 10
Post #359 5.59K
Пых Пыхарь, важнейший вопрос во вселенной! Какой порядок ключевых слов при объявлении класса в PHP 8.2 ты считаешь наиболее логичным?
Оказывается, уточнение по этому вопросу дожидается своего релиза в мастере PER coding style. В соответствии с рекомендацией правильный вариант — первый.

Спасибо @samdark.
GitHub per-coding-style/spec.md at master · php-fig/per-coding-style PER coding style. Contribute to php-fig/per-coding-style development by creating an account on GitHub.
  • 👍 37
  • ❤ 2
Post #358 5.23K
  • 🤣 19
  • 👎 4
  • 🔥 3
  • 😁 1
Post #357 5.47K
🎧 Самописные инфраструктурные компоненты

На подкасте Пятиминутка PHP вышла наша третья (!) встреча с Петром Мязиным. Очень приятно вспомнить, что Пётр — первый человек, который вытащил меня в медийное пространство PHP в мохнатом 2019-ом году (Symfony Hackathon в Брюсселе глазами очевидца). 💙

В этом выпуске я, по сути, подвожу черту под инфраструктурной частью моей работы в Happy Inc. Рассказываю, как и на кой чёрт мы написали три крупных компонента: Thesis, Hydrator и Message Bus. А ещё в выпуске есть немного про Message Driven Architecture, паттерн Outbox и принятие странных решений.

Всем приятного вечера и прослушивания: https://5minphp.ru/episode99/.
  • 🔥 24
  • 👍 8
Post #356 5.15K
👨‍🔬 Лекция от Пыха. Как переиспользовать то, для чего не предусмотрено переиспользование?

Пока готовил новую лекцию для Boosty, придумал ещё одну. Название снова загадочное, но ничего не могу с собой поделать...

https://boosty.to/phpyh/posts/fc068aa4-c4e9-4c97-bc6e-3b4e31259a68
  • 👍 23
  • 👎 10
  • 🔥 6
  • 😁 2
  • 😱 2
  • 😭 1
Post #354 6.32K
  • 🤔 45
  • 👍 6
  • 👎 4
  • 🤡 2
Post #353 6.4K
Размещение кэшей dev-инструментов в самом проекте — хорошо или плохо?

В последнее время мне нравится собирать все артефакты запуска dev-инструментов в загитигноренную папку var в корне проекта. При таком подходе "мусор" не растекается по всей файловой системе и появляется возможность "вынести" его одной командой rm -rf ./var/ (можно оформить как скрипт Composer или Makefile, чтобы не ошибиться). Кроме того, разгружается корень проекта от ненужных файлов.

Вот несколько идей со ссылками на конфиги:
• кэш PHP CS Fixer (по умолчанию .php-cs-fixer.cache лежит в корне проекта),
• кэш PHPUnit (по умолчанию .phpunit.result.cache лежит в корне проекта),
• кэш Psalm (по умолчанию папка весом в несколько мегабайт лежит либо в $XDG_CACHE_HOME, либо в $HOME, либо в sys_get_temp_dir),
• кэш PHPStan (аналогично, лежит в sys_get_temp_dir).

Однако в случае Psalm и PHPStan есть и минусы:
• теперь за кэш отвечаете вы сами, операционная система его не почистит,
• если делаете бэкапы, в них попадёт бесполезная информация.

Пишите в комментариях, что думаете по поводу такого подхода.
  • 👍 24
  • 🔥 8
  • 🤨 3
Post #351 5.59K
Post #350 5.36K
Пых 🧑‍🎓 Первая лекция от Пыха: Что такое контракт и как его тестировать? Активно собеседуя разработчиков на вакансию в Happy Inc., я заметил, что некоторые темы особенно сильно западают у большинства соискателей. Мне хочется помочь, но консультацию каждому не…
Я прислушался к вашим комментариям и переосмыслил свой Boosty.

Вместо платных постов теперь 3 уровня подписки:
• scalar за 200 руб./мес. — поддержка бесплатного контента на каналах Пых, PHP Point и PHP Умирает?!,
• array за 1000 руб./мес. — доступ ко всем лекциям (планирую закидывать по 2-3 в месяц),
• object за 3500 руб./мес. — доступ к лекциям + часовая персональная консультация с возможностью записи.

Всем, кто вчера храбро оплатил первую лекцию, я выдам бесплатный доступ к array на первый месяц. Пожалуйста, свяжитесь со мной, чтобы я скинул ссылку на "подарок".

Остальных приглашаю на обновлённую страницу: https://boosty.to/phpyh!
  • 👍 45
  • 💩 22
  • ❤ 9
  • 🔥 9
Post #349 5.25K
🧑‍🎓 Первая лекция от Пыха: Что такое контракт и как его тестировать?

Активно собеседуя разработчиков на вакансию в Happy Inc., я заметил, что некоторые темы особенно сильно западают у большинства соискателей.

Мне хочется помочь, но консультацию каждому не проведёшь, а судьба курса по PHP пока неизвестна, поэтому я решил записать несколько платных обучающих видео для всех.

Итак, встречайте первую лекцию про контракты и контрактные тесты! 1000 рублей, 15 минут, 0% воды. С нетерпением жду ваших комментариев!

https://boosty.to/phpyh/posts/483bbfbe-0924-4e97-b833-da108935121e
  • ❤ 19
  • 😢 16
  • 👍 9
  • 👎 7
  • 💩 6
  • 🔥 3
  • 🤩 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →