Pull to refresh
3
0.5

WEB-программист, сетевой администратор

Send message

Магия CSS на практике: советы по вёрстке от гика. Часть 6

Level of difficultyMedium
Reading time6 min
Views6.1K


Хабр, привет! Я снова пришёл к вам со статьёй, где показываю мои любимые техники вёрстки. Моя цель — поделиться опытом с вами. Я использую не только трюки известных экспертов, есть лично мои придумки. Но, пожалуйста, относитесь к этому контенту как просто к альтернативному мнению. Мои техники не являются единственными правильными решениями.


Сегодня мы рассмотрим:

  • мой подход к написанию стилей для динамической сетки без использования БЭМ-модификаторов;
  • как я перестал писать свойство text-decoration со значением none для элемента <button>;
  • способ для вычисления значения свойства width в зависимости от контента элемента;
  • почему вам стоит удалить все стили с использованием псевдо-класса :focus.

Давайте посмотрим, что я вам подготовил.

Читать дальше →

Как переопределить кнопки на клавиатуре в Linux

Level of difficultyMedium
Reading time2 min
Views7.2K

Мне было неудобно, что расположение клавиш End, Page Up и PageDown на моей клавиатуре A4Tech FS не совпадало с их расположением на ноутбуке. Решил переставить, но не нашел толковой инструкции на этот счет в интернете, решил написать тут, вдруг кому пригодится. На самом деле всё просто, доступно каждому.

Читать далее

От PPP до облака: как развивался и зачем нужен SD-WAN

Reading time6 min
Views2.7K

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

Ранее мы в beeline cloud рассказывали, зачем нужен WAF.

Читать далее

Как настроить SQLAlchemy, SQLModel и Alembic для асинхронной работы с FastAPI

Reading time9 min
Views64K

В этом руководстве предполагается, что у вас есть опыт работы с FastAPI и Postgres с помощью Docker. Вам нужна помощь, чтобы ускорить работу с FastAPI, Postgres и Docker?

Читать далее

Книга «Linux для сетевых инженеров»

Reading time7 min
Views13K
Здравствуйте, уважаемые читатели!

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

Книга позволит вам уверенно разобраться в организации многочисленных служб сети и научит правильно их конфигурировать. В ней вы узнаете, как снизить стоимость обслуживания серверов и решать поставленные задачи, используя некоммерческие открытые продукты. Значительная часть книги посвящена вопросу защиты сети от возможных атак, который будет рассмотрен с позиции распространенных тактик злоумышленников и эффективных способов противодействия им.

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

Далее я более подробно раскрою содержание книги по частям и приведу фрагменты текста, чтобы вы могли наглядно оценить охват ее материала и пользу.
Читать дальше →

Я мучился с Git, поэтому создал про него игру

Level of difficultyMedium
Reading time8 min
Views28K

Прошло два года...


… с тех пор, как я разработал и выпустил Git-Sim — бесплатный опенсорсный инструмент для визуализации команд Git непосредственно в репозиториях пользователя.

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

Через несколько недель после релиза я задумался… Визуализация и симуляция вывода команд Git при помощи удобных диаграмм — это, конечно, здорово, но стало понятно, что они помогают только тем, кто уже в той или иной степени знакомы с Git.
Читать дальше →

Сложно о простом. Как работает интернет. Часть 4. Что такое LAN, MAN, WAN, сети Clos и иерархия операторов

Level of difficultyMedium
Reading time20 min
Views34K

Приветствую, коллеги! Меня зовут зовут @ProstoKirReal. Мне бы хотелось с вами обсудить как работает интернет от кабелей на витой паре, соединяющие простые локальные сети до подводных коммуникационных кабелей соединяющие между собой континенты и основные операторские сети.

В предыдущей статье я рассказывал о маршрутизации в локальных сетях, а также рассматривал некоторые узконаправленные «фичи», связанные с маршрутизацией – Proxy ARP и super VLAN.

В этом цикле статей я не стану учить вас настраивать оборудование и проектировать сети. Я расскажу об основных (и не только) принципах построения сети, а также о функционировании сети и сетевых протоколов в стеке TCP/IP.

Читать далее

AFFiNE — Obsidian здорового человека

Reading time5 min
Views44K

9 сентября — это был последний день, когда мы могли еще нормально использовать Notion. Объективно, я что тогда, что сейчас так и не нашел инструмента лучше, удобнее, гибче и ПРОЩЕ, чем Notion. Да, он во всем был лучше как для жизни, так и для работы.

В конце концов, о его уходе анонсировали еще в конце августа, и я до сих пор помню статью «Obsidian — Notion свободного человека», после которой я, как и, думаю, многие другие, пытались пересесть. Однако у меня так и не вышло это, как бы я ни пытался — всегда слишком много сложностей и деталей. Так вот, эта история про поиск альтернативы.

Читать далее

Методы поиска скрытой информации в Telegram

Level of difficultyEasy
Reading time1 min
Views22K

Последнее время я ломал голову над вопросом: «как искать Telegram‑каналы, где публикуют информацию об информационной безопасности?»
В Twitter, например, всё просто: купил подписку — и получаешь доступ к куче данных, которые легко парсить. В Telegram же официальных способов для такого поиска нет.

Но я был уверен, что «хитрушки» существуют. И сегодня я их нашёл! Всё оказалось до безобразия просто.

Есть ресурсы, которые используют множество ботов. Эти боты добавляются во все возможные Telegram‑каналы и сохраняют всё, что там публикуется. Потом на этих ресурсах можно искать по ключевым словам и находить каналы, где упоминается нужная вам информация.

Долгое время я находил только платные сервисы, доступ к которым стоил космических денег — около 50к в месяц. Но сегодня я нашел ДВА КРУТЫХ БЕСПЛАТНЫХ РЕСУРСА, которые дают просто фантастические результаты.

Например, при поиске по фразе «CVE-2025», эти сервисы выдают список каналов, где публикуют информацию об уязвимостях. Причём это могут быть как крупные каналы (которые легко найти через обычный поиск), так и каналы с 20 подписчиками (которые без таких инструментов обнаружить почти невозможно).

Ссылки на ресурсы:

1️⃣ tgdev.io/tme/
2️⃣ https://cse.google.com/cse?q=+&cx=006368593537057042503:efxu7xprihg (Telegago)

Пример результата:

Читать далее

Опыты в домашней лаборатории: Эмулируем arm64 OpenWRT роутер в Proxmox VE

Level of difficultyEasy
Reading time8 min
Views10K

В моей домашней лаборатории основная платформа виртуализации - Proxmox VE. Так как это все же дом, к интернету она подключена вместе со всеми остальными устройствами через обычный роутер с прошивкой OpenWRT.  

В большинстве экспериментов я практикую подход "если что-то пойдет не так... разберемся, а потом просто перезапустим терраформ". В ходе очередного такого эксперимента мне понадобилось перенастроить пару вещей глубоко внутри OpenWRT роутера, и внезапно пришло понимание, что домашний роутер совсем не эфемерный ресурс. На вопрос: «Если я окирпичу роутер, то смогу ли я его оживить без отвертки, паяльника и, самое главное, без доступа в интернет?» ответ был «¯\_(ツ)_/¯».  

Раз такое дело, сначала нужно потренироваться на кошках, а значит, нам понадобится эмулятор маршрутизатора OpenWRT. Причем arm64 версия, так как пакетная база между arm и x86 может существенно отличаться. На просторах интернета я не встретил инструкции, которая бы заработала сразу и была бы легко автоматизируема. Надеюсь, данный гайд заработает у вас "из коробки", а сэкономленное время пойдет на эксперименты.

Читать далее

Именно эти умения и навыки делают меня аналитиком

Level of difficultyMedium
Reading time7 min
Views16K

4 000 часов в роли системного аналитика или обзор навыков, умений и личных качеств, которые превращают человека в аналитика.

Читать далее

Пишем простое расширение для браузера

Level of difficultyEasy
Reading time6 min
Views11K

Всем привет! В этом туториале я хотел бы описать создание расширения для браузера на основе Chromium (Google Chrome, Brave, Яндекс Браузер и др.).

Расширения для браузеров создаются с использованием веб-технологий: HTML, CSS и JavaScript/TypeScript и все. Можно конечно еще использовать либы React, JQuery или фрейворки Vue например, но можно обойтись Vanilla JS.

Читать далее

Паттерны «Банды четырех»: примеры применения в реальном проекте

Level of difficultyMedium
Reading time16 min
Views11K

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

Будет много схем и кода, демонстрирующих практические примеры применения паттернов Композит, Билдер, Визитер, Цепочка обязанностей и Декоратор. Не смотря на то, что примеры кода написаны на PHP, статья может оказаться интересной и для разработчиков, использующих другие языки.

Читать далее

«Мы просто обновили рабочий таск-трекер, а команда обновила резюме»

Level of difficultyEasy
Reading time10 min
Views50K

В компании решили обновить софт, потому что «так будет лучше», а вместо обучения — документация на 40 страниц. Знакомая ситуация?

Руководство уверено, что «все привыкнут», но на деле половина сотрудников ищет кнопки, другая — способы обойти систему, а третья просто уходит. Новый таск-трекер? Задачи по-прежнему в Google Таблицах. Свежая CRM? Клиенты всё так же в Telegram. В итоге продукт «внедрили», но им никто не пользуется.

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

Читать далее

Docker для начинающих: простое развертывание приложения за несколько шагов

Level of difficultyMedium
Reading time7 min
Views25K

Всем привет! Для своей первой статьи я решил выбрать проблему, с которой сам столкнулся при изучении Java и попытке упаковки приложения в докер-контейнер. К сожалению не нашел ни одной исчерпывающей статьи, как это делать, поэтому решил написать свою.

Начну, пожалуй, с самого сервиса. Я написал достаточно простое веб-приложение на стеке - Java, Spring, Maven, REST, HTTP, Hibernate, Postgresql, JSP/JSTL. Пока приложение представлено достаточно в сыром виде, но для понимания, как оно упаковывается в контейнер, вполне подойдет. Если вкратце, то это сервис для голосования за лучший ресторан, где можно зарегистрироваться, добавить ресторан, его описание, оставить отзыв и проставить рейтинг. Также, в зависимости от роли, можно посмотреть информацию о пользователях и редактировать ее. 

Читать далее

CI/CD: основы написания Workflow

Level of difficultyEasy
Reading time16 min
Views12K

Сначала я думал, что CI/CD – нечто сложное и чуждое разработчику, но понял, что ни один проект – будь то фриланс, Open Source или пет-проект – не может обойтись без этой практики, которая значительно повышает эффективность работы.

Статьи по теме:

Читать далее

Использование Annotated в Python

Level of difficultyMedium
Reading time8 min
Views15K

Всем привет. Ранее мы с вами разбирали универсальные типы в python. Продолжая тему подсказок типов, в данной статье, я расскажу о примерах использования Annotated из модуля typing. Если вы слышите о Annotated в первый раз, то для лучшего понимания, стоит ознакомится с PEP 593 – Flexible function and variable annotations.

Данный инструмент очень полезен, если вы разрабатываете различные фреймворки или библиотеки. И даже если вы занимаетесь написанием прикладного кода, то не будет лишним знать и понимать, что происходит "под капотом" фреймворков и библиотек использующих Annotated.

Читать далее

BGP-anycast

Level of difficultyMedium
Reading time5 min
Views2.1K

Привет! Хочу поделиться реализованным кейсом на тему георезервирования между двумя инфраструктурными площадками. Эта информация может быть полезной для компаний или коллективов, которым нужно обеспечить доступность критически важных сервисов, даже если один из инфраструктурных сегментов (ЦОДов) выйдет из строя.

Читать далее

Полезные ресурсы по Python, которые я собрал

Level of difficultyEasy
Reading time7 min
Views36K

Примерно два года назад я начал изучать Python и Django. В течение этого времени сохранял ссылки, которые считал полезными. Недавно решил структурировать их. Также стало интересно, а какие ресурсы считают полезными другие разработчики. В данной статье я собрал разнообразные ссылки по Python, которые сохранял, либо которые меня заинтересовали (внимание больше на web). Буду благодарен, если в комментариях поделитесь своими полезными ссылками.

Мои изыскания показали, что меня и большинство других людей (чьи статьи я нашел) во-первых интересует обучение. Таких ссылок получилось больше всего. На втором месте - сообщества и мероприятия. На третьем -  поиск работы. Еще меня интересовала тема наставничества и менторства, нашел несколько ссылок и на эту тему.

Читать далее

HTTP или SOCKS прокси, что выбрать? Чем отличаются HTTP(S) и SOCKS прокси — разбор дилетанта

Level of difficultyMedium
Reading time10 min
Views13K

Прокси-серверы давно стали неотъемлемой частью современной сети. Они используются для повышения анонимности, обхода блокировок, балансировки нагрузки и контроля трафика. Однако далеко не все понимают, что существует принципиальное различие между HTTP(S)-прокси и SOCKS-прокси. В этой статье я попробую подробно разобрать технические аспекты работы обоих типов, рассмотрю их преимущества и ограничения, а также приведу примеры настройки и использования, но это уже скорее в виде факультатива (можно и без этого, просто хочется).

Читать далее

Information

Rating
3,549-th
Location
Екатеринбург, Свердловская обл., Россия
Date of birth
Registered
Activity