Обновить
128K+

PHP *

Скриптовый язык общего назначения

78,83
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Лечение амнезии между AI-сессиями разработки

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели4.9K

Статья о том, как решить проблему «забывчивости» LLM между AI-сессиями разработки. Рассматривается причина деградации контекста и предлагается практический подход с использованием ai_readme файлов и агентских хуков, которые принудительно возвращают модель к важным инструкциям. Материал ориентирован на опытных промт-инженеров и показывает, как повысить стабильность и качество генерации кода в реальных больших проектах и при больших контекстных окнах.

Читать далее

Новости

Как навести порядок в запросах Laravel с помощью кастомных Query Builders

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели8.9K

Про кастомные Query Builders в Laravel написано уже немало, но на практике мало что меняется. В 2026 году в проектах по-прежнему можно встретить запросы, разбросанные по всему коду - в контроллерах, сервисах и моделях. В такой структуре быстро теряется понимание, что происходит и где искать нужную логику.

Узнать что такое кастомные Query Builders

Fast Atomic Flow: PHP 8.4, Swoole, NATS, Go и Закон Табуна

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели7K

Как переезд в деревню, рефакторинг жизни и парное программирование с DeepSeek привели к созданию демо на Swoole, NATS и Go. Без купюр и без пони.

🐎 В галоп!

Почему RBAC недостаточно: опыт построения тарифно-зависимой системы доступа в SaaS или о чём молчат в статьях компаний

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели9K

Тема разграничения доступности действий в рамках конкретного тенанта выходит далеко за рамки ERP домена и требует особо пристальной реализации. Это особенно применимо для коммерческих систем (коей и является Kroncl - название системы), в которых классический RBAC требует определённых доработок, включающих адаптацию к упрощённой features-based access control (в народе - FBAC, является своего рода реализацией ABAC). Кроме того, технологические компании крайне редко (уникальные случаи всё же есть) посвящают публичные статьи внутреннему устройству своих систем тарификации, что крайне печально, ведь это буквально могли быть рассказы о том, как архитектурные решения напрямую влияют на маркетинг и как следствие доходность компании.

Как же строить системы определения доступа не вокруг конкретных действий, а экономической модели платформы? Как легко переусложнить то, что переусложнять априори не стоит? Где заканчивается гибкость и начинается ад поддержки?

Читать далее

Никакой магии: только лексер, парсер и интерпретатор на чистом PHP

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели9.4K

Вы вроде бы пишете код на чистом PHP, но почему-то каждый день используете маленькие языки: DQL в Doctrine («u.age > 18»), Twig-выражения («user|length > 0»), Symfony ExpressionLanguage («user.is_active and order.total > 100`). Никогда не возникало мысли о том, что хорошо бы избавиться от всех этих дополнений и использовать язык собственной разработки для решения нужных задач?

В этой статье мы рассмотрим DSL — язык, заточенный под узкую задачу.

Разобрать DSL

Реактивные серверы, или как перестать писать JavaScript и начать жить

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели8.6K

Обзор Phoenix LiveView и его друзей из других стеков: Rails Hotwire, Laravel Livewire и Go Live/HLive

Все эти фреймворки позволяют создавать динамические страницы без ручного вызова API (и без AJAX :)

Неужели совсем без JS?!

Проектирование иерархии моделей данных в многослойном приложении

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели8.5K

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

Рассмотрим модель данных application model, которая потребуется в дальнейшем изложении и которая используется в паттерне CQRS.

Реализация архитектурного паттерна CQRS, используемого в приложении для функционала application logic, представляет собой набор классов наследников базовых классов QueryHandler / CommandHandler и набор классов данных, которые являются наследниками базовых классов Query / Command. Классы наследники Query / Command представляют собой модель данных application logic. Такую модель данных логично назвать application model.

Используя application model и другие известные модели данных слоёв приложения можно построить полную схему моделей данных многослойной архитектуры приложения.

Читать далее

Я устал читать 100+ сообщений в Telegram и написал бота, который делает саммари и отвечает как AI-ассистент

Время на прочтение4 мин
Охват и читатели6.9K

Всем привет, меня зовут Ян, я разработчик. Мне интересно следить и участвовать в дискуссиях на разные темы: разработка, devops, it стартапы, чаты друзей, собственников жилья — не важно). Все эти обсуждения живут в Telegram и в Max в том числе, но сейчас речь про Telegram.

Однажды утром я проснулся и увидел в чате друзей 127 новых сообщений. Чтобы понять, о чём вообще был разговор, мне нужно было:

— Пролистать весь чат.
— Прочитать десятки реплик.
— Восстановить контекст обсуждения в своей голове.

В какой‑то момент появилась простая мысль:
«Почему нельзя просто получить краткое саммари обсуждения прямо в личку по подписке или увидеть сводку в чате? Чтобы бот прочитал всё за меня и выдал краткую, но понятную выжимку».

Читать далее

Анализ и модернизация коннектора баз данных с помощью AI-агентов

Уровень сложностиСредний
Время на прочтение23 мин
Охват и читатели5.4K

4-я статья из цикла туториалов о вариантах кастомизации своего бизнес-портала в Битрикс24.

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

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

Читать далее

Очерки установки Zabbix на Lubuntu

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели6.9K

В начале Апреля 2026 года устанавливал я Zabbix 7.4, самой новый на тот момент, на LUbuntu v. 25.10 - тоже самой новой на начало апреля.

Выбрал пакетный вариант установки.

Читать далее

LOTIS: Новая парадигма WEB-разработки для бизнес-приложений

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели12K

После того как моя статья об LOTIS вызвала интерес, я решил подробнее раскрыть его архитектуру и привести примеры кода.

LOTIS решает одну фундаментальную проблему: разделение логики на клиент и сервер мешает разработке бизнес-приложений. Вместо того чтобы думать о бизнес-логике, разработчики тратят время на:

Читать далее

Laravel + TrueAsync: настоящая конкурентность без Swoole

Время на прочтение9 мин
Охват и читатели6.5K

В 2025 году в PHP отклонили RFC про нативные корутины. Автор не сдался и продолжил работу - так появился TrueAsync, расширение которое добавляет в PHP настоящую асинхронность без изменений в коде приложения.

Я решил запустить на этом Laravel. Фреймворк проектировался под FPM-модель и совершенно не готов к тому что один воркер будет обрабатывать тысячи запросов параллельно.

Как это починить без клонирования контейнера, почему PDO Pool даёт настоящую конкурентность которой нет в Swoole, и что получилось в бенчмарке против Octane.

Читать далее

Я потратил 10 лет на создание легкого PHP фреймворка для разработки WEB-приложений

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели10K

Привет, All!

Как вам идея, отказаться от тегов вообще и делать WEB-проекты исключительно на классах? А еще, чтобы и клиентский, и серверный коды шли рядом, как в десктопном приложении.И чтобы с одними и теми же переменными можно было работать и в PHP, и в JavaScript.

«Зачем?» — сапросит кто‑то. Отвечу: чтобы можно было строить не DOM‑элементы, а объекты предметной области бизнес‑процессов, которые автоматизирует мое приложение. И чтобы не тратить время на разные async, promise, ajax и так далее, пусть за это отвечает фреймворк!

Я говорю примерно вот о таком построении WEB-приложения:

Читать далее

Ближайшие события

Когда Excel — это часть архитектуры, или история одной не совсем обычной интеграции

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7.3K

Есть одна мебельная фабрика. Исторически у этой фабрики IT хозяйство было не очень развито и со временем накопилось множество внутренних сервисов для расчета материалов, нагрузки на станки, учета временных затрат работников, доставки и прочего. Исходя из этих расчетов составляется себестоимость продукции. Далее накладывается маржа, и идет расчет доставки и сборки, в зависимости от условий. Фабрика захотела объединить все сервисы в один, основанный на веб, чтобы все расчёты и результаты можно было видеть в одном месте. Было выбрано делать новую веб систему на фреймворке Symfony (PHP).

Читать далее

Отказались от идеального решения, чтобы всё начало работать: мы сделали игровую платформу без опыта в разработке

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели6.5K

Отказались от идеального решения, чтобы всё начало работать: мы сделали игровую платформу без опыта в разработке

Привет! Я Алина Бриленкова, руководитель онлайн-направления в ивент-агентстве NIGHT STREET. В 2022 году я взялась делать игровую платформу для онлайн-тимбилдингов, марафонов и конкурсов без опыта в IT. Думала, что разработка — это спринт: сделал и выдохнул. Оказалось, что это миф, и на самом деле этот процесс вообще не заканчивается.

Довольно быстро стало понятно, что продукт собирается не из того, что ты сделал, а из того, от чего ты отказался. Хотелось создать продукт для ивент-индустрии с идеальной архитектурой с микросервисами, но мы решилипойти простым путём и не ошиблись. 

В этой статье — о проблемах Телеграм-ботов как систем управления участниками, решениях, от которых пришлось отказаться на первых этапах разработки и о том, как на практике происходит создание продукта с нуля, если ты заходишь в разработку не из IT. Будет полезно тем, кто сам через это проходит. Остальным — статья может понравиться как формат «под похрустеть попкорном».

Читать далее

Как мы сделали PWA для управления ремонтными проектами: от чата до ИИ-дизайнера интерьеров

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели5.5K

Привет, Хабр! Меня зовут Алексей, я разработчик в строительной компании ВитионГруп. Мы занимаемся ремонтом квартир в Москве, одновременно ведём 30–75 объектов, за 18 лет завершили более 1000 проектов.

В 2022 году я начал разрабатывать внутренний инструмент для управления ремонтными проектами. За три года из «чата с заказчиком» вырос полноценный продукт: PWA с чек-листами и таск-трекером, видеонаблюдением, конструктором смет, финансовым модулем и интеграцией с ИИ. Сейчас на базе этой системы работают два продукта по подписке, которыми пользуются строительные компании, а также частные мастера и их заказчики из разных регионов России и Казахстана.

Читать далее

От рефакторинга до психотерапевта: как мы переписывали карточку задачи в Битрикс24

Время на прочтение13 мин
Охват и читатели6.1K

Привет! Никита Щербо на связи, backend-разработчик и тимлид в Битрикс24.

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

Читать далее

Joomla-дайджест. 1-й квартал 2026 года

Время на прочтение25 мин
Охват и читатели5.1K

Все главные новости из мира Joomla за 1-й квартал 2026 года в одной статье. Традиционно дайджест собирает новости сообщества, релизы, расширения, интеграции, видео и статьи из мира Joomla. Прошлый выпуск доступен на Хабре.

Читать далее

Укрощение 1С-Битрикс: оптимизация новостного сайта, который падал под нагрузкой

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели6K

Привет, Хабр! Расскажу, как мы спасли крупный новостной сайт ugra-news.ru от постоянных падений — без покупки нового железа и переписывания с нуля. Только точечные оптимизации, знание архитектуры Битрикс и немного детективной работы. Приступим.

Читать далее

Как делать приложения для Маркетплейса Битрикс24 и не сойти с ума: подводные камни, которых нет в документации

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели6.1K

За пару лет я сделал с десяток приложений для Маркетплейса Битрикс24 — коннекторы мессенджеров, роботы, iframe-панели. На PHP, TypeScript и Python. Каждый раз одно и то же: документация разбросана, примеры устарели, а реальные подводные камни вылезают только в продакшене.

Эта статья — сборник всего, что я хотел бы знать перед тем, как начать: формат токенов при установке, мультитенантность, обновление OAuth, петля сообщений в коннекторах и ещё десяток граблей с кодом и решениями.

Читать далее
1
23 ...