29 ИюнОткрытие портов в Linux: iptables и firewall настройка

Открытие портов в Linux — штука, про которую вспоминают, когда надо что-то быстро поднять: веб-сервер, VPN, кастомную API. Но если ты не хочешь, чтобы твой сервер внезапно стал частью ботнета или «просто не работал», лучше разобраться, как правильно настраивать iptables и firewall. Расскажу, как это делать, чтобы не наломать дров, не словить кучу ошибок и не сидеть потом на форумах с криком “почему у меня всё упало?”.

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

Все о Разное

29 ИюнРабота с датой и временем: datetime.strptime() и strftime()

Всем привет! Сегодня разберём, как работать с датой и временем в Python, а именно — datetime.strptime() и strftime(). Если вы хоть раз парсили логи, работали с таймстемпами или пытались сделать нормальный вывод времени для пользователей — вы точно сталкивались с этим зоопарком форматов. Не хочется каждый раз лезть в доку, так что держите подробный разбор с примерами и граблями, на которые сам наступал.

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

Все о Разное

29 ИюнСмена пользователя в Linux: su, sudo и переключение контекста

Если ты хоть раз работал с Linux, то наверняка сталкивался с ситуацией, когда нужно выполнить команду не от своего имени, а от другого пользователя или даже от root. Тут в игру вступают такие команды как su и sudo. Многие новички путают их, используют вслепую и нередко нарываются на проблемы с безопасностью или просто ломают систему. Давай разберёмся, зачем вообще менять пользователя, как это делать правильно и какие подводные камни тут могут быть.

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

Все о Разное

29 ИюнСоздание пользователя в Ubuntu: права sudo и группы

Вот ты поставил себе свежую Ubuntu (или тебе её воткнули на сервере, а ты теперь отвечаешь за этот зоопарк) — и тут сразу встаёт вопрос: как грамотно добавить нового пользователя, чтобы не дать ему сломать всё подряд, но и не ограничить настолько, что даже ls не выполнит? В этой статье разберёмся, как создавать пользователей, выдавать им права sudo, добавлять в группы и не наступить на грабли.

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

Все о Разное

29 ИюнСравнение списков в Python: эффективные методы сопоставления

Сравнение списков в Python — штука, с которой сталкивался каждый, кто хоть раз писал что-то сложнее “Hello, World!”. Нужно выяснить, чем два списка похожи, чем отличаются, что появилось, а что исчезло. Вроде бы просто, но как только начинаешь работать с большими данными или сложными структурами, быстро становится понятно: не всё так очевидно.

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

Все о Разное

29 ИюнСтатические методы в Python: @staticmethod и @classmethod

Если ты уже немного шаришь в Python, то наверняка сталкивался с @staticmethod и @classmethod. Но зачем они вообще нужны, когда есть обычные методы? Почему не просто писать функции вне класса? Давай разберёмся, когда и зачем их использовать, и почему это не просто «питоновская магия для галочки». Погнали!

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

Все о Разное

29 ИюнУдаление символов из строки Python: strip, replace и translate

Всем привет! Если вы хоть раз работали с текстом в Python, то наверняка сталкивались с задачей удаления лишних символов из строки. Будь то пробелы, спецсимволы, невидимые символы или что-то поэкзотичнее. Сегодня разберём три основных способа: strip(), replace() и translate(). Покажу как их использовать, где они реально полезны, а где могут подставить. Всё по-простому, с примерами, без лишней воды.

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

Все о Разное

29 ИюнТипизация в Python: аннотации типов и статическая проверка

Когда Python только начинался, никто особо не парился о типах. Все же «duck typing», «мы не такие как Java», свобода! Но вот прошло время, проекты разрослись, и внезапно выяснилось: без типизации реально тяжело. Особенно если ты не единственный человек, кто трогает код. Аннотации типов, type hints, и статическая проверка (типа mypy) — это не про занудство, а про то, чтобы не ловить баги в проде и не страдать при рефакторинге. Давайте разберёмся, как это работает, зачем оно надо и как внедрять у себя.

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

Все о Разное

29 ИюнУстановка Apache на Ubuntu: альтернатива Nginx

Когда речь заходит о веб-серверах на Ubuntu, все вокруг только и говорят про Nginx. Мол, модный, быстрый, легкий. Но что делать, если тебе нужен старый добрый Apache? Например, из-за специфики проекта, привычки или желания докопаться до тонкой настройки .htaccess? Давайте разберёмся, как поставить Apache на Ubuntu, чтобы всё работало как часы, и почему это вообще может быть отличной альтернативой Nginx.

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

Все о Разное

29 ИюнУстановка Docker на Ubuntu 22.04: полное руководство

Docker давно стал стандартом де-факто для упаковки, доставки и запуска приложений. Если ты ещё не пробовал контейнеризацию — самое время начать, ведь она реально упрощает жизнь, ускоряет деплой и минимизирует “работает у меня на машине”. В этом гайде разберём установку Docker на Ubuntu 22.04 (Jammy Jellyfish) — максимально подробно, с нюансами и примерами.

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

Все о Разное