Блог

Пример настройки PHPStan

Всем привет! Сегодня хотел бы поделиться примером настройки инструмента статического анализа для PHP - PHPStan.

Сам инструмент, вероятно, в представлении не нуждается. Я использовал его в одном из своих проектов, и остался доволен. PHPStan помогает поддерживать код в хорошем состоянии, и особенно хорошо помогает находить ошибки типизации. Иногда бывает немного занудным, но в конечном итоге, все это к лучшему.

Предотвращение транзитивных зависимостей composer

Всем привет! Сегодня хотел бы рассказать про инструмент для отслеживания транзитивных зависимостей composer - ComposerRequireChecker.

VPN, который не заблокируют

Всем привет! Сегодня хотел бы поделиться простым способом настройки собственного VPN сервера.

Существует много различных сценариев использования VPN. Но, вероятно, наиболее распространенный из них - обход блокировок. Это особенно актуально для тех, кто живет в странах с тоталитарным режимом(Россия, Белоруссия и т.д.). Также это может быть актуально для тех, кто хочет пользоваться сервисами, доступ к которым недоступен из-за границы.

Курсы по реактивной архитектуре

Всем привет! Сегодня хотел бы рассказать о курсе по реактивной архитектуре от Lightbend Academy, который я прошел некоторое время назад.

Курс бесплатный, на английском, состоит из 6 частей. Время прохождения около 40 часов.

Анализ покрытия тестами с помощью Codecov

Всем привет! Сегодня хотел бы рассказать об использовании сервиса Codecov. А также интеграции с Github Actions. Сервис предназначен для отслеживания покрытия кода тестами.

Производительность покрытия тестами PHP проекта

Всем привет! Сегодня хотел бы рассказать о своем опыте оптимизации анализа покрытия теставми для PHP проекта.

Проект основан на Symfony компонентах и частично покрыт unit и интеграционными тестами. В какой-то момент захотелось узнать точное покрытие, и в дальнейшем мониторить состояние.

Полезные Github Actions для подготовки релизов

Всем привет! Сегодня хотел бы поделиться подборкой Github Actions для управления репозиторием и автоматизации релизов.

У меня была задача автоматизировать существующий ручной процесс подготовки релиза(создание ветки, обновление файла и т.д.). А также последующих действий - создание тега/релиза, слияние веток, удаление релиз бранча и т.д.)

Фикстуры в Symfony + Codeception DataFactory

Всем привет. Сегодня хотел бы поделиться способом организации фикстур в Symfony приложении с помощью Codeception Doctrine2 модуля.

Фикстуры используются для генерации тестовых данных. Чаще всего, для тестовые данные бывают нужны для интеграционных тестов. В Symfony фикстуры реализованы в рамках DoctrineFixturesBundle.

Сервис feature-флагов

Всем привет! Сегодня хотел бы рассказать о создании простого сервиса для управления feature-флагами. Feature-флаги позволяют мгновенно включать и выключать определенный функционал в приложении. Для этого не требуется заново выкладывать или откатывать его. Достаточно включить или выключить определенный флаг. В то же время, в ключевых местах в коде добавляются проверки флагов.

К примеру, нужно добавить на сайт форму обратной связи. И в то же время нужно иметь возможность быстро откатить изменения. Для этого можно создать feature-флаг contact-form и проверять его при выводе формы и обработчика.

Удаленная работа через ИП по USD контракту

Всем привет! Сегодня хотел бы рассказать о работе с иностранной компанией через ИП, а также получением оплаты в иностранной валюте. Основная идея - работа на иностранную компанию, без посредников, с соблюдением всех требований. Получение оплаты в долларах.

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