29 ИюнFooter CSS: создание красивого подвала сайта

Давайте честно: про подвал сайта (footer) вспоминают в последний момент. А зря! Кривой, унылый, нечитабельный футер — сразу минус к доверию, даже если остальной сайт в порядке. Я видел и такие: текст сливается с фоном, ссылки разлетаются по экрану, на мобилках всё едет. Сегодня разберёмся, как сделать красивый, адаптивный и полезный футер на CSS — без костылей и хакастых решений.

 

Читать полностью…

Все о Разное

29 ИюнGit для начинающих: полное руководство по командам pull, push, fetch и rebase

Если ты когда-нибудь работал с кодом в команде или просто хранишь свои проекты не только на локальном диске, ты точно слышал о Git. Это не просто система контроля версий, а целый культ среди разработчиков. Но если ты только начинаешь разбираться, команды вроде pull, push, fetch и rebase могут звучать как заклинания из древнего манускрипта. Давай разложим всё по полочкам: что это, зачем, как использовать и как не наломать дров.

Читать полностью…

Все о Разное

29 ИюнGit Flow: эффективная стратегия ветвления для команды разработчиков

Если у тебя в команде больше двух разработчиков, рано или поздно вы упрётесь в бардак из-за веток в Git. То фичи смешались с багфиксами, то релизы неотслеживаемые, то кто-то случайно замержил не туда… Короче, хаос. Вот тут и приходит на помощь Git Flow — стратегия ветвления, которая реально помогает держать проект под контролем. Рассказываю, как внедрить, не сломать и не возненавидеть Git.

Читать полностью…

Все о Разное

29 ИюнGoogle Authenticator: двухфакторная аутентификация

Если ты хоть раз терял доступ к важному аккаунту из-за взлома или утечки пароля, ты уже знаешь, насколько двухфакторная аутентификация (2FA) — не просто дополнительная опция, а must have. В этой статье разберём, как Google Authenticator спасает от кражи аккаунтов, почему это не серебряная пуля, и как его правильно внедрять, чтобы не было мучительно больно за потерянные коды.

Читать полностью…

Все о Разное

29 ИюнGunicorn: WSGI сервер для Python веб-приложений

Если ты когда-нибудь пытался выкатить свой Python веб-проект в продакшен, то наверняка сталкивался с тем, что стандартный Flask или Django runserver — это так, только для локальной разработки. В проде нужен надежный WSGI сервер, который умеет крутить приложение под нагрузкой, правильно работать с процессами и не падать от первого же кривого запроса. И вот тут на сцену выходит Gunicorn — один из самых популярных WSGI серверов для Python. В этом посте расскажу, как его готовить, ставить, запускать и не облажаться.

Читать полностью…

Все о Разное

29 ИюнJenkins в Docker: настройка CI/CD с docker-compose

Если ты хоть раз настраивал CI/CD на Jenkins, то знаешь, что это тот еще квест: плагины, агенты, права, обновления, конфиги – список бесконечен. А теперь представь, что можно поднять Jenkins в Docker-контейнере, собрать все нужные сервисы через docker-compose и не мучиться с локальной установкой. Это не только ускоряет старт, но и позволяет держать окружение чистым, воспроизводимым и легко переносимым. В этом посте разберемся, как это сделать без боли, с минимумом костылей и максимумом пользы.

Читать полностью…

Все о Разное

29 ИюнMySQL UPDATE: обновление данных с примерами запросов

Когда речь заходит о обновлении данных в MySQL, все почему-то сразу вспоминают DELETE или INSERT. Но, ребята, UPDATE — это тот самый workhorse, который на проде спасает от лишних миграций и позволяет элегантно чинить баги в данных. Без него никуда: от массовых правок до точечных фиксов.

В этом посте покажу, как работает UPDATE в MySQL, какие есть варианты использования, где можно вляпаться, и как делать все по уму. Погнали!

Читать полностью…

Все о Разное

29 ИюнNginx Proxy Manager: обратный прокси с веб-интерфейсом

Если вы когда-либо пытались поднять несколько веб-сервисов на одном сервере (даже дома на мини-ПК или VPS), то наверняка сталкивались с задачей: как удобно и безопасно «разруливать» входящие запросы на разные приложения? Традиционный способ — писать конфиги для Nginx или Apache вручную, а потом еще помнить, где какой SSL, какие прокси-хедеры, где что сломалось… Короче, боль и страдания. Особенно если хочется быстро, просто и с минимумом ручного шаманства.

Вот тут-то и появляется Nginx Proxy Manager — штука, которая позволяет управлять обратным прокси через удобный веб-интерфейс. Без ssh, vi и чтения мануалов на ночь. Давайте разберёмся, как это работает, зачем оно нужно и как поставить всё за 10 минут.

Читать полностью…

Все о Разное

29 ИюнPortainer: веб-интерфейс для управления Docker контейнерами

Если ты хоть раз возился с Docker, то наверняка сталкивался с ситуацией, когда хочется быстро глянуть, что у тебя там крутится, перезапустить контейнер, глянуть логи или запустить новый сервис без вечного копания в CLI. Конечно, терминал — наше всё, но иногда хочется чуточку комфорта. Вот тут и приходит на помощь Portainer — лаконичный и весьма мощный веб-интерфейс для управления Docker-контейнерами. Без лишней бюрократии, регистраций и прочей боли. Да, есть аналоги, но Portainer прост и дружелюбен, даже если ты не DevOps с бородой по пояс.

Читать полностью…

Все о Разное

29 ИюнPrettier в VS Code: автоматическое форматирование кода

Давайте честно: никто не любит разбирать код, где у каждого свой стиль, отступы скачут, а скобки живут своей жизнью. Даже если ты один в проекте, спустя месяц сам себя не поймёшь. А если вас трое, пятеро, десять? Ад кромешный. Вот тут-то и приходит на помощь Prettier — автоматический форматтер кода, который избавит тебя от холиваров «где ставить пробел» и «как переносить строки». Особенно, если ты работаешь в VS Code.

Читать полностью…

Все о Разное