Обновить
0
Серегй Королев@Gray85read⁠-⁠only

Пользователь

Отправить сообщение

Это — всё что вам надо знать о белых списках: как устроены и 6 способов обхода

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели232K

Думаю, вы уже в курсе, что происходит в РФ с белыми списками: работают белые списки, ТСПУ в режиме drop-all пропускает только одобренные IP + SNI, рунет медленно, но верно становится интранетом

Мы просканировали 46 млн российских IP-адресов, нашли 63 тысячи выживших, разобрали работу ТСПУ. И главное - актуальные методы пробива (от Serverless-функций и покупки VPS с белым IP до туннелей через WebRTC).

Читать далее

Инструменты, которые должен знать каждый, кто арендует первый VDS

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели25K

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

Читать

Зачем мне фото- и видеоредакторы с GUI, когда есть FFmpeg?

Уровень сложностиПростой
Время на прочтение17 мин
Охват и читатели18K

...или записки из палаты Линуксоида

Часто ли вам пригождается базовая обработка фото или видео? Понизить разрешение, вырезать область, нанести текст, перекодировать в другой формат и другие задачи. Раньше я пользовался для этих целей самыми разными средствами - загрузка в веб-редакторы, Paint, Photoshop, Sony Vegas.

Пока в один прекрасный момент не пересел на Linux...Удобного видеоредактора для себя не нашёл, а к рабочему процессу в командной строке и установке через dnf install уже привык (я использую Fedora). И понеслась...

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

Увидеть нестандартный workflow

StillCore — мониторинг чипа для Mac, который я всегда хотел

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели10K

StillCore — лёгкое приложение для отслеживания энергопотребления, частоты, нагрузки, температуры и состояния батареи из строки меню macOS. Это анонс и небольшая история о том, как я его писал.

Читать далее

VPS-бастион: доступ к домашнему серверу без белого IP

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели25K

У вас дома крутятся полезные сервисы: Home Assistant, code-server или Nextcloud. Или вы только собираетесь их запустить. Пока вы дома, всё открывается по локальному IP. Но стоит выйти за пределы квартиры, и сервисы пропадают. Причина: провайдер выдал серый IP-адрес, то есть применяет CGNAT. Белый адрес получить либо нельзя (примерно, как советский дефицит), либо он стоит дополнительных денег.

Читать далее

Паттерны организационного дизайна: практическое руководство

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели10K

Меня зовут Игорь Гранщиков, я руководитель разработки Авито Недвижимости. Эта статья о паттернах организационного дизайна основана на моём докладе на Saint TeamLead Conf 2025. Там, где что-то взято из книги, фреймворка или методологии, будут явные ссылки. Всё остальное — моё личное мнение, основанное на опыте. Каждый из этих паттернов я так или иначе пробовал в разное время и в разных компаниях: что-то приживалось надолго, а от чего-то приходилось довольно быстро отказываться.

Читать далее

Реверс-инжиниринг Xiaomi Smart Band 10

Уровень сложностиСложный
Время на прочтение16 мин
Охват и читатели32K

У носимых устройств есть парадокс: браслет измеряет ваши пульс, сон и активность, но готового открытого API для интеграции этих данных в сторонние системы (например, домашний мониторинг или локальную БД) производитель не предоставляет. Официальное приложение Xiaomi Mi Fitness показывает красивые графики, но данные остаются «запертыми» внутри мобильной экосистемы.

Изначальная задача была чисто прикладной: настроить автоматический сбор данных о здоровье в локальную SQLite-базу и выводить отчеты в семейный Telegram-бот. Поскольку браслет синхронизируется с приложением, а то в свою очередь с облаком Xiaomi, данные гарантированно передаются по сети. Нужно было понять, в каком формате они передаются и как их забрать.

Эта статья - технический разбор пути от анализа сетевого трафика и настройки доверия к собственному CA до реверс-инжиниринга RC4-протокола Xiaomi, расшифровки AES/CBC-объектов из хранилища FDS и парсинга проприетарного бинарного формата сна.

Читать далее

Байты, нибблы, и подсветка: пишем свой TUI hex-редактор на Python

Уровень сложностиСложный
Время на прочтение36 мин
Охват и читатели12K

В жизни каждого разработчика иногда приходится рассматривать бинарные файлы через специальные HEX-редакторы.

Мы открываем его, видим три колонки цифр и букв, и кажется что все предельно ясно-понятно. Но почему адреса считаются шестнадцатеричными, что такое ниббл и зачем он вообще нужен? В этой статье мы не просто напишем свой hex-редактор на Python — мы разберем, как он устроен, от битового представления до цветовой подсветки. Выясним, чем подсветка по нибблам отличается от подсветки по категориям байтов, и почему градиенты в hex-дампе — это не просто украшение, а рабочий инструмент.

Также мы изучим, какие практики и паттерны используются при написании редактора — от mmap для чтения файла до интерпретации байтов.

Будет и код, и архитектура, и результат, и практика.

Читать далее

VBoxGuest для KolibriOS: архитектура и устройство драйвера

Уровень сложностиСложный
Время на прочтение55 мин
Охват и читатели10K

VBoxGuest — драйвер гостевых дополнений для KolibriOS, написанный с нуля на FASM.

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

Сравнение с upstream-реализациями для Linux/Windows/FreeBSD. Для системных программистов и энтузиастов OSDev.

Читать далее

iPXE без лишних слов, но с большим количеством пояснений

Уровень сложностиСредний
Время на прочтение24 мин
Охват и читатели13K

iPXE без лишних слов, но с большим количеством пояснений

Данная статья является туториалом и принципом "сделай сам", проект является завершённым и окончательным продуктом с возможностью дополнять и улучшать его до бесконечности, поскольку можно по аналогии добавлять свои пункты меню в iPXE или настроить графику под себя (подробнее в статье)

Весомым отличием статьи от остальных статей на тему pxe-загрузчиков по сети является то, что рассмотрены оба варианта, как UEFI так и Legacy режимы, настроен DHCP на уровне Active Directory с политиками определения по железу, кто Legacy, кто UEFI через Vendor Classes и 60 правило в DHCP
А также проект актуализирован для 2026 года и объяснены тонкости и нюансы автоустановки Linux Ubuntu, загрузчика sanboot, и принцип устройства BCD загрузчика WinPE и как его "отдавать" по сети для Legacy систем

Читать далее

Немного извращений из мира прокси и VPN

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели59K

XTLS-Reality, XHTTP, Naiveproxy и всякие там AnyTLS - это не интересно. Давайте копнем чуть глубже и посмотрим, где прячется настоящее безумие. Особенно учитывая, что мы живем во времена, когда даже самые, казалось бы, безумные вещи, могут оказаться весьма полезными чтобы не сойти с ума.

Читать далее

15 вещей, которые вы бы не хотели знать о мессенджере MAX: тайная запись звука с микрофона в звонках и много чего еще

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели225K

Я декомпилировал APK мессенджера MAX и проверил его поведение по коду. нашёл: скрытый SDK деанонимизации с отправкой реального IP в обход VPN на сторонний домен, недокументированную запись аудио со звонков по команде сервера, отключённую проверку TLS‑сертификатов в QUIC‑канале медиа, серверный C2-канал через WebSocket с командами выгрузки контактов и логов, аппаратный фингерпринт через Widevine DRM, ZipSlip в загрузчике моделей, передачу номера телефона по открытому HTTP, силовое обновление в обход Google Play, управление NFC‑payload из мини‑приложений, трекинг адресной книги в реальном времени и ещё несколько находок. Все находки сверены с реальным кодом, ссылки на файлы и классы в zarazaex69/m

Читать далее

Как оплачивать нейросети и остальное недоступное в РФ в 2026: 9 способов с ценами и рисками, где можно влететь

Время на прочтение29 мин
Охват и читатели15K

Эта статья – попытка собрать всё, что реально работает на май-июнь 2026 года. С ценами, ссылками, граблями и местами, где можно влететь на деньги или на статью КоАП.

Так-то я все способы знаю, но вдруг

Btrfs и btrbk: лёгкий и быстрый инкрементальный бэкап сервера и домашнего ПК

Уровень сложностиСредний
Время на прочтение21 мин
Охват и читатели17K

Старая сисадминская пословица гласит: люди делятся на две категории — на тех, кто уже делает резервные копии, и тех, кто только будет их делать.

Связка Btrfs + btrbk — это революция в мире бакапа. Ещё никогда не было так просто и быстро создавать дифференциальные резервные копии. Никаких лицензий и подписок — всё полностью бесплатно и встроено в ядро Linux.

Читать далее

Отказоустойчивый запуск WSGI приложения. Обзор архитектуры Gunicorn

Уровень сложностиСредний
Время на прочтение36 мин
Охват и читатели9.4K

Gunicorn кажется простым, пока не сталкиваешься с эксплуатацией: внезапные ошибки 502, зависшие воркеры и странное поведение при перезапусках. За этими симптомами стоят вполне конкретные причины — от медленных клиентов и отсутствия буферизации до особенностей реализации GThread и механики Graceful Shutdown.

В этой статье разберём реальные сценарии отказов, посмотрим, как менялась архитектура GThread в разных версиях Gunicorn, и соберём практичную конфигурацию с Nginx, Docker и Kubernetes, которая ведёт себя предсказуемо под нагрузкой.

Читать далее

Как технически устроена DPI-фильтрация у российских провайдеров и как её детектировать: разбор open-source инструментов

Уровень сложностиСложный
Время на прочтение11 мин
Охват и читатели25K

В последние пару лет любой пользователь рунета научился различать “интернет дома” и “интернет в гостях у бабушки”. На одном провайдере YouTube открывается, на другом нет. Это ощущается как непредсказуемость, но за каждой такой деградацией стоят вполне конкретные технические механизмы. Запустил open-source инструмент dpi-checkers на трёх своих подключениях, разобрался с методами TCP 16-20 и CIDR-вайтлистами и расскажу, что технически происходит с вашим трафиком на L4 — от SNI-фильтрации до QUIC-блокировок.

Читать далее

Вам не нужен OpenClaw — напишите свой

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели54K

Привет, Хабр! Меня зовут Никита Пастухов — автор FastStream, Principal Engineer и мейнтейнер AG2 (фреймворк для разработки агентов). Я уже 8 лет в разработке, последний год - по уши в агентах.

И я хочу доказать вам, что написать своего агента не сложнее, чем написать CRUD

Почему это вообще нужно доказывать? Потому что есть заметный разрыв между тем, что происходит с AI в мире, и тем, что происходит в среднестатистической российской компании. В мире — в каждой компании подписка на OpenAI, миллиард стартапов с AI-продуктами, агенты глубоко интегрированы в бэкофис. В России — «опасно, хостим свои модели», «непонятно» и чат-боты поддержки. В мире инженеры уже умеют разрабатывать агентов. В России — «что это вообще такое?»

Поэтому давайте разберём устройство агентов на примере OpenClaw — самого хайпового “личного AI-агента” прямо сейчас. Он живёт в вашем мессенджере, разбирает почту, ведёт соцсети, пишет код, деплоит сервисы. Его популярность — свидетельство того, насколько мало люди пока используют агентов в быту. Для тех, кто в теме, OpenClaw не привнёс ничего нового.

Давайте разбираться

Как Rust обманывает процессор: тайная жизнь niche-оптимизации, drop flags и MIR

Время на прочтение5 мин
Охват и читатели13K

Большинство статей про Rust заканчиваются на borrow checker и lifetimes, как будто внутри компилятора живёт только проверяльщик заимствований и злой шрифтовый дизайнер для сообщений об ошибках. На деле там целый зоопарк механизмов, о которых редко пишут даже на конференциях. Я собрал несколько по настоящему любопытных вещей, которые меняют представление о том, как устроен язык изнутри, и подкрепил каждый сюжет кодом, который можно скопировать и проверить самому.

Начнём с того, чего никто не ждёт. Знакомая всем конструкция Option ссылки занимает ровно столько же байт, сколько и обычная ссылка. Это кажется магией: ведь у Option должен быть тег, отличающий Some от None. Никакого тега нет. Компилятор знает, что ссылка в Rust никогда не может быть нулевой, и использует нулевой адрес как представление варианта None. Этот трюк называется niche optimization, и он работает гораздо шире, чем принято думать. Проверим руками.

Читать далее

Дорожная карта домашнего мини-ПК в 2026: что развернуть, в каком порядке, и зачем — план апгрейда от инфраструктурщика

Уровень сложностиСредний
Время на прочтение20 мин
Охват и читатели24K

Каждый месяц с карты списываются деньги за подписки. Spotify, Яндекс Плюс, Notion, Obsidian Sync, Google One — суммы небольшие по отдельности, в сумме набегает заметно. Параллельно с этим у меня работает VPS с несколькими проектами, на роутере крутится OpenWrt с AdGuard Home, в ноутбуке стоит Docker. Инфраструктурный опыт есть. Дома при этом — никакого сервера, всё в облаке.

Это начинает раздражать не только из-за денег. Сервисы меняют каталоги без предупреждения, поднимают цены, требуют доплат за объём, периодически ломают регионы. Контроль над собственными фотографиями, заметками и медиатекой постепенно перестал быть моим.

Решил спланировать переезд на свой мини-ПК. Пока разбирался с железом и стеком, обнаружил, что нормальной системной дорожной карты «бери и иди» в 2026 году нет. Есть каталоги «50 self-hosted сервисов», восторженные посты про конкретные приложения, треды на Reddit. Структурированного маршрута для нового человека — нет.

Этот текст — попытка такой маршрут собрать. Не «топ приложений», а архитектура от железа до приложений по слоям, с обоснованием каждого выбора, с тем, что я планирую поставить, и с тем, что осознанно не ставлю.

Читать далее

Создание архитектуры программы или как проектировать табуретку

Время на прочтение25 мин
Охват и читатели741K
Взявшись за написание небольшого, но реального и растущего проекта, мы «на собственной шкуре» убедились, насколько важно то, чтобы программа не только хорошо работала, но и была хорошо организована. Не верьте, что продуманная архитектура нужна только большим проектам (просто для больших проектов «смертельность» отсутствия архитектуры очевидна). Сложность, как правило, растет гораздо быстрее размеров программы. И если не позаботиться об этом заранее, то довольно быстро наступает момент, когда ты перестаешь ее контролировать. Правильная архитектура экономит очень много сил, времени и денег. А нередко вообще определяет то, выживет ваш проект или нет. И даже если речь идет всего лишь о «построении табуретки» все равно вначале очень полезно ее спроектировать.

К моему удивлению оказалось, что на вроде бы актуальный вопрос: «Как построить хорошую/красивую архитектуру ПО?» — не так легко найти ответ. Не смотря на то, что есть много книг и статей, посвященных и шаблонам проектирования и принципам проектирования, например, принципам SOLID (кратко описаны тут, подробно и с примерами можно посмотреть тут, тут и тут) и тому, как правильно оформлять код, все равно оставалось чувство, что чего-то важного не хватает. Это было похоже на то, как если бы вам дали множество замечательных и полезных инструментов, но забыли главное — объяснить, а как же «проектировать табуретку».

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

Данная статья является попыткой ответить на эти вопросы хотя бы в первом приближении.
Читать дальше →
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Пермь, Пермский край, Россия
Зарегистрирован
Активность

Специализация

Бэкенд разработчик, Фулстек разработчик
Средний
C#
Объектно-ориентированное проектирование
Разработка программного обеспечения