Разбить файл на части

Мне тут недавно потребовалось загрузить файл размером 1,5 ГБ в некоторое облачное хранилище, где было ограничение на загрузку до 1 ГБ. Погуглил и нашёл три замечательных способа: Split me! Так как split умеет резать всё что угодно, в том числе zip и tar, то сосредоточимся на нём. Разбить большой файл (например, видео): После нарезки получим … Читать далее

Как перестать следить за терминалом: уведомления из CLI, CI/CD и Codex

Долгий скрипт наконец закончил работу. Деплой завершился — или упал. Ночной бэкап отработал. AI-агент несколько минут разбирался с задачей и подготовил ответ. Во всех этих случаях хочется одного: не следить за терминалом, а получить уведомление, когда произошло что-то важное. Для этого можно использовать Депешер — сервис технических уведомлений для разработчиков. Он принимает события от скриптов, … Читать далее

Как выполнить SQL запрос в консоли PostgreSQL

Чтобы выполнить SQL в PostgreSQL, запустите консольный клиент psql, подключитесь к базе данных и введите SQL-запрос, завершив его точкой с запятой ;. Как подключиться к базе Откройте терминал или командную строку.Введите команду для входа: psql -U имя_пользователя -d имя_базыВведите пароль, если система его запросит. Как выполнять команды Внутри клиента psql: просто напишите SQL-запрос, например SELECT … Читать далее

Мини-гайд: как добавить логирование в Symfony через Docker + Alloy → Loki → Grafana

Tg banner 2025 11 20 23 29 57

В этом мини-гайде мы поднимем локальный стек логирования (Alloy → Loki → Grafana) и настроим отправку JSON-логов из Symfony. Всё запускается через Docker Compose, занимает около 10 минут и полностью повторяемо. В проекте использую свежую версию Symfony webapp: Эта статья — первая из цикла статей по настройке логирования и мониторинга. 1. Настройка логов Symfony (JSON … Читать далее

Запуск встроенного PHP сервера в проекте на Symfony

В консольной утилите Symfony есть встроенный сервер для локальной разработки. Но что, если у тебя не установлена эта утилита? Не беда, можно запустить встроенный в PHP сервер! Делается это командой php -S с флагом -t для указания root-директории.

7 фактов о тестах: как тестирование экономит время и силы разработчика и команды

Tg banner 2025 10 09 20 08 51

Пролог Чтобы статья была поживее, начну со своего опыта НЕ_тестирования, тебе ведь нравится читать как коллеги тупят по 20 с лишним лет? 😉 Начал я программировать, когда мне было лет 7–9, точно уже не помню.Первым языком, ещё в школе, был BASIC — помню, как мы в DOS рисовали какие-то геометрические фигуры.Потом (уже осознанно) пришёл Perl, … Читать далее

301 Редирект через .htaccess (для одной страницы)

Ой давно я не работал с Apache серсером, shared-хостингами и .htaccess… Но жизнь как всегда вносит свои коррективы, и мне потребовалось сделать пару 301 редиректов через этот прекрасный файл. Итак, самый простой редирект для одной страницы: Слева откуда перенаправляем, справа — куда. Вариант чуть сложнее: RewriteCond + RewriteRule это очень гибкая парочка и именно через … Читать далее

Полезная команда GIT: archive

Как заархивировать репозиторий или отдельную ветку? Очень просто! В Гит есть встроенная возможность создать архив! Для этой цели служит команда git archive. У команды есть несколько важных и полезных опций. format — формат архива: tar, zip, tar.gz, tgz Далее указываем или HEAD, имя ветки или тега, который помещаем в архив. Также выходной файл можно задать … Читать далее

Ошибка при выполнении composer update — curl error 28 while downloading: SSL connection timeout

На некоторых проектах (хостингах) при запуске PHP приложения в среде docker-compose появляется ошибка: Для решения необходимо синхронизировать MTU у сетевого адаптера Докера и в конфиге docker-compose.yml Текущий MTU сетевого адаптера можно посмотреть в выводе команды ifconfig В выводе ищем строку с Докером: Значение MTU из этой строки подставляем в конфиг сети докера в docker-compose.yml

Апгрейд Symfony (минорная версия, 7.1.10 до 7.2.*)

Обновление фреймворка В одном из проектов потребовалось обновить версию Symfony. Ну не то чтобы потребовалось, просто дебаг-панель показала, что моя версия устарела 🙂 Для обновления минорной версии необходимо обновить в composer.json версии пакетов, связанных с Symfony (начинаются с symfony/). Но обновлять необходимо только те пакеты, версия которых совпадает с текущей версией установленного фреймворка. Это связанно … Читать далее