Шпаргалка: извлечь текст из поля bytea (binary) в PostgreSQL

  6 Май, 2026

Cитуация: поле в таблице имеет тип bytea (бинарные данные), но вы точно знаете, что внутри него хранится обычный текст (например, из-за ошибки проектирования или legacy-системы).

Читать далее »

Как обновить ветку в Git без переключения на неё

  1 Май, 2026

Предположим, вы работаете в ветке feature, а коллеги обновили master. Вам нужно подтянуть свежие изменения в локальный master, но не хочется терять контекст и переключаться туда-обратно. Стандартный git pull работает только с текущей веткой. Что делать?

Читать далее »

Конвертер timestamp онлайн: перевод Unix-времени в дату и обратно

  26 Апр, 2026

Unix timestamp (или Unix time) — это система отсчёта времени, широко используемая в программировании, базах данных, API и логах. Она представляет собой количество секунд, прошедших с полуночи 1 января 1970 года (UTC) без учёта високосных секунд. Такой формат удобен для хранения и сравнения моментов времени, но нечитаем для человека.

Читать далее »

Как обновить базовую ветку фичи: кейс с rebase

  23 Апр, 2026

В командной разработке на Git регулярно возникает ситуация: вы работаете над фичей в ветке feature/xxx, ответвившись от master. Пока вы пишете код, коллеги успевают задеплоить в master несколько других фич, которые не пересекаются с вашей, но вносят изменения в общий код (например, исправляют баги, добавляют утилиты, меняют конфигурацию). Ваша задача — обновить свою ветку так, чтобы она включила эти “чужие” изменения, но при этом не тащила в историю лишние merge-коммиты и не смешивала логику. Идеальное решение — git pull origin master --rebase. Разберём этот кейс подробно.

Читать далее »

CSS-префиксер для изоляции стилей: добавляем класс-обёртку ко всем правилам

  20 Апр, 2026

При разработке крупных проектов или интеграции готовых UI-библиотек часто возникает проблема конфликта имён CSS-классов. Стили одной библиотеки могут неожиданно повлиять на элементы другой, даже если вы старались использовать уникальные имена. Обычно эту проблему решают через CSS Modules или Scoped CSS.

Читать далее »

Перенести доступ к метрике яндекс на свой аккаунт

  16 Апр, 2026

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

Читать далее »

C5BB 1.0.11 обновления

  11 Апр, 2026

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

Читать далее »

Эпоха заложников: когда дом построен на песке

  8 Апр, 2026

Когда я начинал в 1999 году, никаких «социальных сетей» ещё не существовало. Даже слова такого не было. Марк Цукерберг и Павел Дуров — будущие создатели Facebook и «ВКонтакте» — заканчивали школу (обоим было по 15 лет, они ровесники, оба 1984 года рождения). Идея «лайка» никому не приходила в голову, а интернет был другим — честным, неуклюжим и удивительно свободным.

Читать далее »

Изменяем историю коммитов в GIT

  18 Мар, 2026

Рассмотрим две наиболее частые операции — изменение названия коммита и слияние нескольких коммитов в один.

Читать далее »

Хак с Form API в Drupal 7: создаём HTML5‑поля (number, email, tel) без лишних модулей

  15 Мар, 2026

Drupal 7 предлагает мощный Form API для построения форм. Однако при работе с HTML5‑атрибутами можно столкнуться с неожиданным ограничением: если вы попытаетесь задать тип поля numberemail или tel стандартным способом, Drupal проигнорирует ваше значение и оставит тип text (или тот, который определён через #type).

Читать далее »