В мире PHP редко задумываются о мьютексах — до первого дублированного платежа, двух параллельных крон джоб или сломанных ограничений на отправку писем.
Этот доклад Олега Мифле на Пых.конф’25 — не обзор инструментов, а попытка ответить на важный вопрос:
зачем в PHP вообще нужны мьютексы, какие задачи они решают честно, и где их применение — просто баг с хорошим лицом.
👉 https://www.youtube.com/watch?v=dyy8KLoq2oY
#php #mutex #phpyhconf
👮♂️ Злой полицейский
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Свежий релиз open-source админки для Laravel проектов (хотя, говорят, и с другими фреймворками можно использовать).
Что нового:
— полностью обновлённый дизайн и вёрстка
— генератор палитр прямо в MoonShine
— TailwindCSS 4
— новая архитектура проекта
— FortyFive — AI-инструмент для быстрой сборки админок
А сегодня в 19:00 (мск) Данил Щуцкий расскажет обо всём в прямом эфире.
👉 Эфир - https://youtube.com/live/ynKqr9zxDzk
👉 Промо - https://youtu.be/3BXkf6WYEJ8
#php #laravel #MoonShine
👮♂️ Злой полицейский
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤1
5 причин зайти в гости к SingularityApp (у нас есть Galaga, пофигисты и бенто!)
Сбить сотню вражеских звездолетов в аркадной стрелялке из 80-х, узнать, трудоголик-мазохист ты или просветленный дзен-мастер, найти все отсылки на «Звездные войны» и посмотреть, как падающие звезды двигаются по физически выверенным траекториям — все это можно сделать на новом сайте планировщика SingularityApp. Еще там можно скачать приложение, но это вы и так знаете. Так что давайте лучше про секретики, пасхалки и БДСМ в тайм-менеджменте.
👉 https://vc.ru/singularityapp/2341522-pyat-prichin-posetit-singularityapp
#SingularityApp #productivity
👮♂️ Злой полицейский
Сбить сотню вражеских звездолетов в аркадной стрелялке из 80-х, узнать, трудоголик-мазохист ты или просветленный дзен-мастер, найти все отсылки на «Звездные войны» и посмотреть, как падающие звезды двигаются по физически выверенным траекториям — все это можно сделать на новом сайте планировщика SingularityApp. Еще там можно скачать приложение, но это вы и так знаете. Так что давайте лучше про секретики, пасхалки и БДСМ в тайм-менеджменте.
👉 https://vc.ru/singularityapp/2341522-pyat-prichin-posetit-singularityapp
#SingularityApp #productivity
👮♂️ Злой полицейский
1❤4
Yii3 кардинально отличается от предыдущих версий и других фреймворков. Сегодня Yii3 — это более 100 независимых пакетов и несколько шаблонов приложений.
Разберем интересные моменты из внутренностей фреймворка, которые делают его уникальным: DI-контейнер, конфигурирование приложения, обработка ошибок, работа с базой данных, поддержка long-running приложений и другие технические детали. Также затронем вопросы философии Yii3, компонентного подхода, принципов разработки и обеспечения качества.
👉 https://vkvideo.ru/video-228746873_456239112?list=ln-2ROaUS3I93reBZdhuf
#php #yii
👮♂️ Злой полицейский
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍2👎1😁1
Сегодня намечается релиз РНР 8.5
Оно содержит множество новых возможностей, таких как: модуль URI, оператор Pipe, поддержка изменения свойств при клонировании и многое другое.
👉 https://www.php.net/releases/8.5/ru.php
#php #core
👮♂️ Злой полицейский
Оно содержит множество новых возможностей, таких как: модуль URI, оператор Pipe, поддержка изменения свойств при клонировании и многое другое.
👉 https://www.php.net/releases/8.5/ru.php
#php #core
👮♂️ Злой полицейский
🔥6👍1😢1
💡Эргономичная архитектура
В своей книге The Problem with Software: Why Smart Engineers Write Bad Code Адам Барр пишет, что вопреки тому, что деятельность по разработке ПО часто называют "software engineering", а людей, которые разрабатывают ПО - "software engineer", на самом деле эта деятельность инженерной не является.
Потому что все - и научное сообщество, и коммерческие компании, и сами разработчики отказались от научного подхода к поиску наилучших способов разработки ПО. В результате, буквально все рекомендации, методологии и прочие руководства по разработке ПО основаны на личном опыте их авторов, а не на научно доказанных законах (вроде закона всемирного тяготения) или хотя бы статистически достоверных свидетельствах того, что применение той или иной рекомендации коррелирует с улучшением той или иной характеристики ПО.
Например, глядя на Чистую архитектуру, можно предположить, что у Роберта Мартина был негативный опыт, вызванный добавлением новых инфраструктурных компонентов в систему. И ответом на этот опыт стал принцип инверсии зависимостей в частности и Чистая архитектура в общем.
А мой негативный опыт был связан с отсутствием структуры в кодовой базе. Ответом на мой опыт стала Эргономичная архитектура.
👉 https://ergowiki.azhidkov.pro/docs/models/ergo-arch/
#patterns #arch
👮♂️ Злой полицейский
В своей книге The Problem with Software: Why Smart Engineers Write Bad Code Адам Барр пишет, что вопреки тому, что деятельность по разработке ПО часто называют "software engineering", а людей, которые разрабатывают ПО - "software engineer", на самом деле эта деятельность инженерной не является.
Потому что все - и научное сообщество, и коммерческие компании, и сами разработчики отказались от научного подхода к поиску наилучших способов разработки ПО. В результате, буквально все рекомендации, методологии и прочие руководства по разработке ПО основаны на личном опыте их авторов, а не на научно доказанных законах (вроде закона всемирного тяготения) или хотя бы статистически достоверных свидетельствах того, что применение той или иной рекомендации коррелирует с улучшением той или иной характеристики ПО.
Например, глядя на Чистую архитектуру, можно предположить, что у Роберта Мартина был негативный опыт, вызванный добавлением новых инфраструктурных компонентов в систему. И ответом на этот опыт стал принцип инверсии зависимостей в частности и Чистая архитектура в общем.
А мой негативный опыт был связан с отсутствием структуры в кодовой базе. Ответом на мой опыт стала Эргономичная архитектура.
👉 https://ergowiki.azhidkov.pro/docs/models/ergo-arch/
#patterns #arch
👮♂️ Злой полицейский
🔥4🤔1
Архитектура Laravel: 7 ловушек и практичные решения
Laravel завоевал авторитет у бизнеса и программистов за эффективность решения задач. По данным BuiltWith (данные на ноябрь 2025), Laravel используется на более чем 700 000 сайтах, а основной репозиторий имеет свыше 75 000 звёзд на GitHub — это один из самых популярных PHP-фреймворков в мире. Дружелюбная подача, удобная среда, гибкость, не слишком строгие требования к коду сделали его выбором для стартапов и enterprise-проектов.
Автор не раз встречал суждение среди коллег, что опыт разработки на Symfony и Laravel равнозначны. Оба хороши, все молодцы. На самом деле Laravel ускоряет разработку, но цена скорости — риск архитектурного расползания логики. Если проект живёт больше года, это становится проблемой. Ниже — 7 ловушек Laravel и решений без отказа от фреймворка.
👉 https://habr.com/ru/articles/970642/
#php #laravel #arch
👮♂️ Злой полицейский
Laravel завоевал авторитет у бизнеса и программистов за эффективность решения задач. По данным BuiltWith (данные на ноябрь 2025), Laravel используется на более чем 700 000 сайтах, а основной репозиторий имеет свыше 75 000 звёзд на GitHub — это один из самых популярных PHP-фреймворков в мире. Дружелюбная подача, удобная среда, гибкость, не слишком строгие требования к коду сделали его выбором для стартапов и enterprise-проектов.
Автор не раз встречал суждение среди коллег, что опыт разработки на Symfony и Laravel равнозначны. Оба хороши, все молодцы. На самом деле Laravel ускоряет разработку, но цена скорости — риск архитектурного расползания логики. Если проект живёт больше года, это становится проблемой. Ниже — 7 ловушек Laravel и решений без отказа от фреймворка.
👉 https://habr.com/ru/articles/970642/
#php #laravel #arch
👮♂️ Злой полицейский
👍3
Все про soft skills: что это, какие нужны и как развивать
Технически вы идеальный кандидат: опыт, скиллы, сертификаты — все при вас. А оффер ушел другому. Ну, тому, который на созвоне не мямлил, внятно обосновывал и не вызывал у HR-а лютое желание выключить камеру через три минуты.
В чем секрет «энергии кота Бориса»? Прокачанные soft skills — гибкие навыки, которые нельзя подтвердить дипломом. Но без них диплом может так и остаться в рамочке на стене. В статье поговорим, какие софт скиллы реально влияют на карьеру и как их прокачать.
👉 https://vc.ru/hr/2631361-soft-skilly-chto-eto-kak-razvivat
#SoftSkills #teamlead
👮♂️ Злой полицейский
Технически вы идеальный кандидат: опыт, скиллы, сертификаты — все при вас. А оффер ушел другому. Ну, тому, который на созвоне не мямлил, внятно обосновывал и не вызывал у HR-а лютое желание выключить камеру через три минуты.
В чем секрет «энергии кота Бориса»? Прокачанные soft skills — гибкие навыки, которые нельзя подтвердить дипломом. Но без них диплом может так и остаться в рамочке на стене. В статье поговорим, какие софт скиллы реально влияют на карьеру и как их прокачать.
👉 https://vc.ru/hr/2631361-soft-skilly-chto-eto-kak-razvivat
#SoftSkills #teamlead
👮♂️ Злой полицейский
❤2
Многие, даже опытные PHP-разработчики теряются при выборе подходящей архитектуры для нового проекта.
Что лучше использовать:
- Богатые или анемичные модели?
- Стоит ли сразу хвататься за CQRS или Event Sourcing?
- Как правильно проектировать сущности, если вам нужен REST API?
В результате вы:
- узнаете, как упростить разработку с помощью грамотно выстроенной архитектуры
- научитесь осознанно выбирать инструмент под задачу
- посмотрите на полезные практические приёмы
Авторский вебинар Дмитрия Кириллова посвящён научному подходу к архитектуре в зависимости от специфики конкретного проекта с примерами на PHP.
👉 https://vkvideo.ru/video-145052891_456248209
#php #arch
👮♂️ Злой полицейский
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Разбираемся с FSD — самой надёжной архитектурой для фронтенда
Сегодня, когда бизнес-требования меняются, бывает сложно найти подходящую и надёжную программную архитектуру и придерживаться неё. Нужна архитектура, которая была бы гибкой, легко масштабировалась, поддерживалась, а также была бы понятна – чтобы новички могли быстро вкатываться в работу с ней.
Вот почему в этой статье мы хотим рассказать вам об архитектуре FSD (Feature-Sliced Design, дословно «послойное проектирование фич»), одной из самых современных, надёжных и спроектированной специально для фронтенд-проектов. Она подходит почти для любых бизнес-условий, позволяет решать повседневные проблемы и интуитивно понятна разработчикам-новичкам.
👉 https://habr.com/ru/companies/piter/articles/744824/
#arch #fsd
👮♂️ Злой полицейский
Сегодня, когда бизнес-требования меняются, бывает сложно найти подходящую и надёжную программную архитектуру и придерживаться неё. Нужна архитектура, которая была бы гибкой, легко масштабировалась, поддерживалась, а также была бы понятна – чтобы новички могли быстро вкатываться в работу с ней.
Вот почему в этой статье мы хотим рассказать вам об архитектуре FSD (Feature-Sliced Design, дословно «послойное проектирование фич»), одной из самых современных, надёжных и спроектированной специально для фронтенд-проектов. Она подходит почти для любых бизнес-условий, позволяет решать повседневные проблемы и интуитивно понятна разработчикам-новичкам.
👉 https://habr.com/ru/companies/piter/articles/744824/
#arch #fsd
👮♂️ Злой полицейский
👍3
📦 Пакет Laravel Data от Spatie
Открыл для себя великолепный пакет Laravel Data от бельгийского разработчика Spatie. Пакет позволяет создавать DTO на стероидах, DTO внутри DTO и делать валидацию на аннотациях.
Раньше для этих целей я просто брал пакет symfony/validator и игрался с ним.
Symfony Validator
1. DTO:
2. Валидация в сервисе:
Оно работало так достаточно долго, но выглядело немного инородно, пока я не встретил пакет Laravel Data, который отлично интегрирован в Laravel и кажется ламповым и родным.
Laravel Data от Spatie
1. DTO:
2. Валидация в сервисе
👉 https://spatie.be/docs/laravel-data/v4/introduction
#php #laravel #dto #LaravelData
👮♂️ Злой полицейский
Открыл для себя великолепный пакет Laravel Data от бельгийского разработчика Spatie. Пакет позволяет создавать DTO на стероидах, DTO внутри DTO и делать валидацию на аннотациях.
Раньше для этих целей я просто брал пакет symfony/validator и игрался с ним.
Symfony Validator
1. DTO:
use Symfony\Component\Validator\Constraints as Assert;
class UserDto
{
#[Assert\NotBlank, Assert\Email]
public string $email;
#[Assert\NotBlank, Assert\Length(min: 2, max: 255)]
public string $name;
#[Assert\NotBlank(groups: ['create']), Assert\Length(min: 8)]
public string $password;
}
2. Валидация в сервисе:
use Symfony\Component\Validator\Validator\ValidatorInterface;
class UserService
{
public function __construct(private ValidatorInterface $validator) {}
public function createUser(array $data): UserDto
{
$dto = new UserDto();
$dto->email = $data['email'];
$dto->name = $data['name'];
$dto->password = $data['password'];
$violations = $this->validator->validate($dto, null, ['create']);
if (count($violations) > 0) {
throw new ValidationException($violations);
}
return $dto;
}
}
Оно работало так достаточно долго, но выглядело немного инородно, пока я не встретил пакет Laravel Data, который отлично интегрирован в Laravel и кажется ламповым и родным.
Laravel Data от Spatie
1. DTO:
use Spatie\LaravelData\Data;
use Spatie\LaravelData\Attributes\Validation\{
Email, Required, Max, Min
};
class UserData extends Data
{
public function __construct(
#[Required, Email]
public string $email,
#[Required, Max(255), Min(2)]
public string $name,
#[Required, Min(8)]
public string $password,
) {}
}
2. Валидация в сервисе
use Spatie\LaravelData\Data;
class UserService
{
public function createUser(array $data): UserData
{
$userData = UserData::from($data);
return $userData;
}
}
👉 https://spatie.be/docs/laravel-data/v4/introduction
#php #laravel #dto #LaravelData
👮♂️ Злой полицейский
🔥6
Agile — философия, которая изменила подход к управлению проектами
Если на рабочем совещании коллеги вдруг заговорили про Agile-разработку, а вы все еще не до конца понимаете, что это такое, — не переживайте.
Agile — это не тайный метод IT-специалистов и не мода из Кремниевой долины. Это способ работы, при котором можно не планировать все на полгода вперед, не сидеть ночами в дедлайнах и все-таки сдавать задачи вовремя.
В статье разберемся, что такое методология управления Agile, зачем она нужна и почему ее выбирают как стартапы, так и крупные компании. Расскажем, как внедрить методологию с помощью популярных инструментов планирования проектов и задач.
👉 https://singularity-app.ru/blog/agile/
#teamlead #agile
👮♂️ Злой полицейский
Если на рабочем совещании коллеги вдруг заговорили про Agile-разработку, а вы все еще не до конца понимаете, что это такое, — не переживайте.
Agile — это не тайный метод IT-специалистов и не мода из Кремниевой долины. Это способ работы, при котором можно не планировать все на полгода вперед, не сидеть ночами в дедлайнах и все-таки сдавать задачи вовремя.
В статье разберемся, что такое методология управления Agile, зачем она нужна и почему ее выбирают как стартапы, так и крупные компании. Расскажем, как внедрить методологию с помощью популярных инструментов планирования проектов и задач.
👉 https://singularity-app.ru/blog/agile/
#teamlead #agile
👮♂️ Злой полицейский
🔥3
Репозиторий дня: Requestly
Requestly - мощный API-клиент для замены Postman и Charles Proxy.
Его можно использовать прямо в браузере через расширения Chrome или установить как настольное приложение.
Это Bruno на максималках.
👉 https://github.com/requestly/requestly
👉 https://requestly.com
#RepositoryOfTheDay #Requestly
👮♂️ Злой полицейский
Requestly - мощный API-клиент для замены Postman и Charles Proxy.
Его можно использовать прямо в браузере через расширения Chrome или установить как настольное приложение.
Это Bruno на максималках.
👉 https://github.com/requestly/requestly
👉 https://requestly.com
#RepositoryOfTheDay #Requestly
👮♂️ Злой полицейский
❤3👍2
Когда ваш сервис обрабатывает сотни тысяч транзакций в секунду, потеря даже одного события может стоить бизнесу миллионы.
Transaction Outbox кажется простым паттерном, пока не начинает ломаться под реальной нагрузкой: WAL переполняется, реплики отстают на часы, а CDC-коннекторы падают от back-pressure.
👉 YouTube
👉 VK
👉 Тезисы и презентация
👉 Канал Олега
#arch #TransactionOutbox
👮♂️ Злой полицейский
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍2❤1
Архитектурный шаблон
Porto
Porto это современный архитектурный шаблон программного обеспечения, состоящий из методических рекомендаций, принципов и шаблонов, которые помогают разработчикам организовать свой код максимально удобным и многократно используемым способом.
Porto - отличный вариант для средних и крупных веб-проектов, поскольку со временем они, как правило, становятся более сложными.
👉️ https://github.com/dnsoftware/porto_ru
#arch #php #patterns #porto
👮♂️ Злой полицейский
Porto
Porto это современный архитектурный шаблон программного обеспечения, состоящий из методических рекомендаций, принципов и шаблонов, которые помогают разработчикам организовать свой код максимально удобным и многократно используемым способом.
Porto - отличный вариант для средних и крупных веб-проектов, поскольку со временем они, как правило, становятся более сложными.
👉️ https://github.com/dnsoftware/porto_ru
#arch #php #patterns #porto
👮♂️ Злой полицейский
1👍6🤯2
Паттерн "Обработчик" (Handler) с использованием DTO и VO
- Изоляция бизнес-логики: Бизнес-логика изолирована в обработчиках, что позволяет сделать код более организованным и легко поддерживаемым.
- Тестируемость: Обработчики легко тестируются отдельно, так как они не зависят от инфраструктурного кода (например, контроллеров).
- Переиспользование: Обработчики могут быть легко переиспользованы в различных частях приложения.
- Ясность и читаемость кода: Использование DTO и VO позволяет четко определить структуру передаваемых данных, что улучшает читаемость и понимание кода.
- Соблюдение принципов SOLID: Обработчики помогают соблюдать принципы единственной ответственности (SRP) и разделения интерфейсов (ISP).
- Иммутабельность VO: Значения VO не изменяются после создания, что помогает избежать непреднамеренных изменений и улучшает предсказуемость кода.
👉 https://laravel.su/p/primer-ispolzovaniia-patterna-obrabotcik-handler-s-ispolzovaniem-dto-i-vo
#laravel #patterns #dto #handlers
👮♂️ Злой полицейский
- Изоляция бизнес-логики: Бизнес-логика изолирована в обработчиках, что позволяет сделать код более организованным и легко поддерживаемым.
- Тестируемость: Обработчики легко тестируются отдельно, так как они не зависят от инфраструктурного кода (например, контроллеров).
- Переиспользование: Обработчики могут быть легко переиспользованы в различных частях приложения.
- Ясность и читаемость кода: Использование DTO и VO позволяет четко определить структуру передаваемых данных, что улучшает читаемость и понимание кода.
- Соблюдение принципов SOLID: Обработчики помогают соблюдать принципы единственной ответственности (SRP) и разделения интерфейсов (ISP).
- Иммутабельность VO: Значения VO не изменяются после создания, что помогает избежать непреднамеренных изменений и улучшает предсказуемость кода.
👉 https://laravel.su/p/primer-ispolzovaniia-patterna-obrabotcik-handler-s-ispolzovaniem-dto-i-vo
#laravel #patterns #dto #handlers
👮♂️ Злой полицейский
👍4
Старый, но всё ещё актуальный доклад Юлии Николаевой (iSpring) о том, как решить проблемы монолитного PHP приложения, не переходя на микросервисную архитектуру.
👉 https://www.youtube.com/watch?v=xT25xiKqPcI
#php #arch #ClearCode #ddd
👮♂️ Злой полицейский
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Перебои и ошибки в работе распределённых систем (будь то Web или IoT) — совершенно обычная ситуация. Проблемы в работе с сетью, перебои в работе зависимостей и банальный человеческий фактор — та цена, которую мы платим за общую стабильность системы, лёгкую масштабируемость и гибкость в разработке.
👉 https://www.youtube.com/watch?v=WWTq-tbZwUE
#arch #patterns
👮♂️ Злой полицейский
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
В этом интервью на TeamLead Conf 2025 в Москве Ольга из Московского кредитного банка максимально внятно рассказывает о необходимом качестве руководителя: лидерстве.
То есть руководитель + лидер = эффективное производство.
Подписывайтесь на Профессиональный Союз Русских Программистов — регулярно публикуем интервью с ИТ-конференций, разборы управленческих ситуаций и советы от практиков!
👉 https://vkvideo.ru/video-224489316_456239046?list=98878d3df0622351a4
👉 https://www.youtube.com/watch?v=z1K_FRW3XZ8
👉 https://rutube.ru/video/3d575ca0dda209c23fab5b384e44c556/
#prptut
👮♂️ Злой полицейский
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1