tgindex
PHP Fart Time

Привет, фартаны! Дурачимся, пилим OpenSource и рассказываем про пердовые технологии в php. Авторы контента: @roxblnfk и @butschster

Последний пост
5 авг.
Последнее чтение
09:45
Постов за неделю
0
Всего постов
26
Тип
открытый
Язык
русский
Категория
Технологии
В каталоге с
12 авг.
Подписчики
1 974
−4 за 4 дн.
Сутки
−1
−0,05%
Неделя
 
Месяц
 
Просмотров на пост
1 669
25 постов
Вовлечённость
84,5%
к подписчикам
Постов в день
0,0
всего 26
Упоминаний
3
каналов
Охват размещения
оценка
1/24сутки в ленте
1 146
1/48двое суток
1 313
1/72трое суток
1 416

Оценка по просмотрам недавних постов: пост набирает почти всё за первые сутки.

Посты

  • 5 авг.950284

    Давайте тоже заполним этот опросник от JB и напомним миру, что есть такие замечательные опенсорсы, как Spiral, Yii3, Testo, Buggregator, RoadRunner и Rapira.

  • 29 июл.1 635592

    #ТоксикСреда На днях я запостил в блоге Testo отчёт о том, как я сравнивал тестовые фреймворки в проекте stitcher.io. В той работе тесты на PHPUnit работали слишком медленно и я полез разбираться. Одна из причин замедления — атрибут #[Before] на методе setUp() приводил к тому, что setUp() вызывался дважды (по конвенции именования и по атрибуту). Статья ушла в релиз и её даже кто-то прочитал. А потом в PHPUnit появилась вот эта ишуя. "У меня в голове не укладывается, что человек, впервые обнаруживший эту ошибку, упомянул о ней только в своем блоге, а не создал тикет", Пишет Себастиан. Я даже и не подумал, что это баг. Скорее мысли были "а нафига так сделано?". В общем, сегодня хейтим меня, ибо я, получается, поступил как мудак. Из хорошего для деда: он прочитал отличную статью.

  • 16 июл.1 3264

    видео или голосовое, без подписи

  • 16 июл.1 265174из phpyhconf

    Программа Пыхника’26 У нас сразу три отличные новости! 🔥 Мы расширили программу: вместо запланированных восьми секций на Пыхнике’26 будет одиннадцать. Все доклады из шорт-листа оказались слишком крутыми, и мы решили никого не вычёркивать. Цена билета та же. 🥳 Онлайн-доклады пройдут в прямом эфире с 7 по 9 сентября. Пыхник’26 теперь не однодневное мероприятие, а целая PHP-неделя, которая завершится большой офлайн-встречей 11 сентября в Art Village. 🤩 Первый онлайн-доклад Дмитрия Dantes будет открытым! Посмотреть его смогут все желающие. 7 сентября 📹 • Компилируемый PHP: перспективы и возможности — Дмитрий Dantes 8 сентября 📹 • AI-first архитектура для приложений на PHP — Дмитрий Кириллов • Возвращаем gRPC в PHP — Вадим Занфир 9 сентября 📹 • Testo: тестирование со вкусом хинкали — Алексей Гагарин 11 сентября 🏠 • Request-Reply без ожидания и блокировок — Валентин Удальцов • От скучной генерации к инженерии с ИИ — Данил Щуцкий • Ломаем PHP-системы, чтобы они не падали — Маргарита Моногарова • PHP в бинарнике на примере YiiPress — Александр Макаров • Архитектура PHP-приложений с внешними интеграциями — Олег Мифле • AI-трансформация PHP-команды: путь, процессы и ошибки — Денис Кукуреко • Флипчарт-сессия «Архитектурный экстремизм» Программа готова — дальше дело за вами: https://planeta.ru/campaigns/pyhnik26 Билет теперь можно оплатить от компании — присылайте на conf@phpyh.ru тип, количество, реквизиты.

  • 9 июл.1 682515

    Пацанский стиль В продолжение поста из канала Пых. ——— Вот есть Йода-стиль if (<scalar> === <var>), который в симфе издревле был за стандарт (хз как сейчас). Он для додиков, чтобы случайно присваивание в if не записали. if (false = $x) упадёт в рантайме, в отличии от if ($x = false), и тем самым предупредит, что автор забыл ещё одно равно (а лучше два). ——— А <cond> and/or <act> — немного другое. Это пацанский стиль, из нулевых. Читается также, как "PVP или зассал!". А ещё это классика из PHP 4: mysql_connect($host, $user, $pass) or die("could not connect"); Смотрите, как компактно и понятно выглядит лапша валидации (узкая телега может испортить восприятие. Лучше смотреть на гитхабе или в редакторе): $warmup >= 0 or throw new \InvalidArgumentException('Warmup must be greater than or equal to 0.'); \count($callables) >= 1 or throw new \InvalidArgumentException('At least one callable must be provided.'); $calls > 0 or throw new \InvalidArgumentException('Calls must be greater than 0.'); $iterations > 0 or throw new \InvalidArgumentException('Iterations must be greater than 0.');

  • 8 июл.1 390283

    Я думал народ на Пыхник набьётся за один-два дня. А тут 21% всего. Что с сообществом случилось?

  • 1 июл.1 888249

    Новости перспективных асинков. ⛸️ TrueNativePHP Только что TrueAsync успешно собрался на Андроид со всем своим багажом, корутинами, CURL, таймерами. Если кто-то хотел создать аналог ReactNative — самое время! Пришлось сделать небольшой патч в PHP-ядре ради такой штуки. Но учитывая, что проект и так весь в патчах по сути считаем, что это официальный PHP + Андроид проект! То есть ядро! Автор NativePHP уже брызжет слюной: с бозоном не договорился, может тут чего выйдет :) ⛸️ WebSocket Не прошло и 20 лет, а у PHP есть поддержка WebSocket, и даже на HTTP2. Но только под TrueAsync. Если честно, протокол устарел, да и SSE отлично работает. Нужно добавить что-то современнее. Документация уже готовится к вечеру. Следите за обновлениями. ⛸️ По-человечеки В нашей группе (в канале Rapira) уважаемый собутыльник автор самого душевного и вайбового проекта Folk, Энди, рассказывает про новые фичи: - Очереди по-человечески с портом на все фреймворки. - Стриминг для больших запросов и ответов: чтение чанками, мультипарты, стриминг ответов. Призываю активно участвовать в тестировании, ребята запрашивают фидбек.

  • 1 июл.2 0292440

    Качаем и тестируем облегчённый билд PHPStorm. - Оптимизирован запуск и порядок индексации. - Куча микрооптимизаций. - Меньше кнопочек. - Из коробки меньше лишних плагинов. - На базе EAP. В общем, работает быстрее. С фидбеком, как и всегда, можно идти 👩‍💻 сюда.

  • 29 июн.1 502323

    Продолжаем тему вайба. Для кого-то нет вайба в пайп-операторе. Кто-то люто вайбкодит. А тут ещё и VibePHP появился. Да что это за вайб такой? Как его пощупать? Как понять, где вайба больше и хорошо ли это вообще? Теперь вайб можно померить! На выходных я навибрировал Github Action, замеряющий Индекс Вайба в репозитории. Весь отчёт умещается в компактный бейдж с оценкой от 0 до 10: чем больше число, тем более весомый вклад AI и авто-ботов относительно человеческого. То есть просто считается доля коммитов (из последних 250) и строчек кода за (со)авторством ботов относительно всей репы. 0.0 — всё делается вручную. 4.0 — сбалансированный подход. 8.0 — код вибрируется, но с участием человека. 10 — здесь людей уже нет. Естественно, оценка может расходиться с реальностью: - соавторство агентов удаляется из коммитов — меньше вайб. - статистическая инерция. - индекс не отображает качество вайба. Как трактовать индекс — решать вам. Например, сам пакет Vibe Index имеет индекс 7.5. Он навибрирован на 100% агентами в редакторе ZED с моим пассивным ревью через чат. Не дотянул до ровных 8.0 баллов просто из-за того, что первые коммиты были нагенерены через Haiku, который не ставит соавторство. Это не критическая инфраструктура и даже не зависимость в node_modules, поэтому требования к качеству кода минимальные. А значит высокий индекс вайба здесь только на пользу: скорость фиксов или появления новых фичей скорее всего не будет проблемой. Давайте посмотрим, где вайба больше. - PHP: 0.0 — подозрительно. Серверы: - FrankenPHP: 2.7 - Folk: 5.2 — думал, будет больше. - RoadRunner — 1.5 dependabot на go-bump. Тестирование: - Testo: 1.2 — занижено, т.к. часто удалял соавторство при сквоше. - PHPUnit: 5.0 — куча коммитов от авто-ботов. - Pest: 0.1 — да кого вы пытаетесь обмануть? Пока писал этот пост, Vibe Index стал ещё и пакетом npm. Можно прочекать индекс вайба любого репозитория, например, вот так: npx @roxblnfk/vibe-index spiral/framework

  • 26 июн.1 544142

    Сделал группировку тестов в Testo. Как оказалось с фичёй наследования, которую пользователи просили в PHPUnit, но так и не получили.

  • 25 июн.1 7634928

    Вероятно, нет вайба.

  • 25 июн.1 47657

    Мэтью Браун (автор псалма) сообщает, что перевибрировал Psalm на Rust. Получился Pzoom. Типа х10 быстрее но хз как писать на него плагины. Вот песочница. Позже выяснилось, что ещё один пользователь вибрировал Psalm на Rust. Получился Mir. Вот песочница. Куда катится этот мир?

  • 17 июн.1 9535810

    #ТоксикСреда Одна из величайших проблем PHP Кто голосует за PHP RFC? Кто решает, каким PHP станет? А зайдите и посмотрите на RFC по дженерикам и тред обсуждения. Голосовали ПРОТИВ: Из PHP Core и Foundation: - Derick Rethans — Xdebug, release manager. - Tim Düsterhus — core C-слой. - Matteo Beccati — core/security. - Gina Banyard (girgias) — core, автор конкурирующего подхода «Compile-time generics» через монтоморфизацию. Не Core: - Rowan Tommins (imsop) — активный участник internals. - Ben Ramsey — release manager 8.1, автор ramsey/uuid, дед. - Aleksander Machniak (alec) — Roundcube. Топят за то, что дженерики должны быть нестираемыми и делать проверки в рантайме. Хотят отложить до PHP 9. Не высказали позицию: Sara Golemon (pollita), Jakub Zelenka (bukka), Kalle Sommer Nielsen (kalle). Не из Core, но позицию тоже не объяснили: - Sebastian Bergmann (sebastian) — автор PHPUnit, дед. - Volker Dusch (edorian) — свита Себастиана. - Shivam Mathur (shivam) — setup-php (CI-инфраструктура PHP в GitHub Actions), на PHP не пишет. - duncan3dc — Craig Duncan, мейнтейнер thephpleague/climate. - jordikroon — Jordi Kroon, нидерландский backend/DevOps-разработчик. Право голоса — по коммитам в инфраструктуру php.net. - kguest — Ken Guest, «PEAR guy»: мейнтейнер PEAR-пакетов (Services_OpenStreetMap, Net_IMAP), контрибьютор build-инструмента Phing. Высказались ЗА: - Ondřej Mirtes — создатель PHPStan. - Matthew Brown — создатель Psalm. - Daniil Gentili — мейнтейнер Psalm. - Brent Roose — DevRel PhpStorm (JetBrains), Tempest. - Nicolas Grekas — core Symfony. - Frederik Bosch (MoneyPHP), Benjamin Außenhofer, Arvids Godjuks — работяги из сообщества. Из них проголосовал только Nicolas Grekas. — Это подтверждает тезис, что Люди, которые будут пользоваться этой функцией каждый день, не голосуют. Голосуют те, кто никогда не напишет Collection<User> Соглашусь с Брентом из его статьи A generic tragedy, что похрен на то, что дженерики сейчас не приняли. Меня беспокоит то, что у языка нет дизайнера, нет единого видения. Почему-то за важные фичи голосуют какие-то деды без всякой аргументации, писатели документации и девопсы. Да, к настоящим core-разрабам надо прислушиваться, как к технарям-экспертам, но дизайн языка это больше про DX. Чуваки из Core не пишут на PHP. Вот реально, на списках фичей следующей версии PHP можно ставки делать. Нет дорожной карты. Каждый год хер его знает, что там будет через год. Как бы Рома Пронский не упрекал меня в душности, я всё равно останусь при своём мнении: текущая система принятия RFC - говно. PHPF стоило бы заняться именно этим, а не инклюзивностью. Например, найти экспертов в дизайне ЯП (только нормальных экспертов!), составить несколько планов развития и предложить их сообществу, раз без голосования нельзя. — Нужен ли нам доброжелательный диктатор на дизайне языка или идти по пути голосований — сложный вопрос. Но я на 100% уверен, что неэкспертов надо убирать из голосований.

  • 16 июн.1 78415

    видео или голосовое, без подписи

  • 16 июн.2 29113

    видео или голосовое, без подписи

  • 16 июн.2 20914

    видео или голосовое, без подписи

  • 16 июн.1 85713

    видео или голосовое, без подписи

  • 16 июн.1 65814

    видео или голосовое, без подписи

  • 16 июн.1 62814

    видео или голосовое, без подписи

  • 16 июн.1 54613

    видео или голосовое, без подписи