Search
Write a publication
Pull to refresh
156
0
Виктор @TyVik

Full-stack developer

Send message

Тайны пингвина: как работают исключения и прерывания в Linux?

Level of difficultyEasy
Reading time14 min
Views21K

image


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


Что это, как они работают в ОС и Linux? Давайте разберемся вместе!

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

eBPF и его возможности

Reading time10 min
Views37K
image

Откройте для себя современные возможности ядра GNU/Linux, которые пригодятся вам для обеспечения мониторинга, наблюдаемости, безопасности, инжиниринга производительности и профилирования – всё это достижимо при помощи eBPF. Ниже будет разобрано несколько практических случаев и дана информация, касающаяся внутреннего устройства BPF.
Читать дальше →

Поверхностный обзор источников по Obsidian

Level of difficultyEasy
Reading time12 min
Views21K

Прочитал и посмотрел почти все статьи и видео по Obsidian, которые вышли недавно (в среднем не более 1-2 ух месяцев назад). Дал каждому источнику субъективную оценку и написал короткий комментарий.

Окунуться в субъективный взгляд автора

Какой роутер для OpenWrt купить в 2025 году?

Level of difficultyEasy
Reading time21 min
Views302K

Я много пишу про OpenWrt и часто получаю вопросы о том, какой взять роутер под эту ОС. В прошлом году я уже делал обзор роутеров, лучше всего подходящих под OpenWrt. Тогда выбор был не очень большой, но сейчас всё изменилось в лучшую сторону. Поэтому я сделал новый актуальный разбор для тех, кто не знает, какой роутер выбрать.

Роутер, как и любой другой девайс, нужно покупать под запрос. Например, линуксоиды привыкли покупать ноутбуки именно под Linux, а не первый попавшийся. Также и тут: если нужен OpenWrt, то роутер тоже надо выбирать с умом, а не надеяться на то, что кастомная прошивка сделает конфетку из роутера за 700 р.

В 2023 и 2024 появились интересные роутеры, которые уже поддерживаются проектом OpenWrt. Эти роутеры сделаны на базе ARM-процессоров. Такие роутеры появились у нескольких компаний, и дальше их количество будет только увеличиваться.

Читать далее

Квантовые эксперименты на дому. Строим квантовый компьютер из лазера и полимеров

Level of difficultyMedium
Reading time21 min
Views26K

У меня хорошая новость для тех, кому надоело читать мои нудные лонгриды по квантовой теории и философии физики. В этой статье будет одна практика – квантовые эксперименты в домашних условиях, с минимальным бюджетом и без специального оборудования. Я решил снять и наглядно продемонстрировать, как построить квантовый компьютер своими руками и выполнить на нём квантовое вычисление - алгоритм Дойча. Всё, что я буду делать, вы сможете при желании воспроизвести у себя дома и убедиться, что это работает. Если у вас есть знакомые, которые сомневаются в квантовой механике и отрицают факт квантового превосходства, поделитесь с ними ссылкой на эту статью или видео, пусть посмотрят.

Читать далее

DIY устройство в подрозетник с датчиками окружающей среды в комнате

Level of difficultyEasy
Reading time2 min
Views14K

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

Читать далее

Запросы и лимиты в Kubernetes: разбираемся в деталях

Level of difficultyHard
Reading time10 min
Views12K

Управление ресурсами в Kubernetes немного напоминает зефирный тест, который иногда выходит из-под контроля. Если тщательно не лимитировать, сколько ресурсов может потреблять контейнер, он пойдёт вразнос, примерно как малыш, способный слопать большую пачку Skittles за один присест.

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

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

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

Читать далее

Снифферы трафика в мобильном тестировании: Обзор инструментов и их особенности

Level of difficultyEasy
Reading time10 min
Views14K

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

Давайте узнаем, как хватать и чем траффик.

Читать далее

Terra Invicta: «Самый реалистичный симулятор вторжения пришельцев»

Level of difficultyEasy
Reading time13 min
Views14K

Если вы вращались в англоязычном информационном пространстве, типа Реддита, в 2020–2021 годах, то наверняка видели посты, рекламирующие игру с достаточно интересным содержанием. «Самый реалистичный симулятор вторжения пришельцев», «Геополитика в вашей песочнице», «Проложите новый путь человечества» и всякие другие громкие слоганы. Так рекламировали Терра Инвикта — амбициозный проект Pavonis Interactive (ранее известные как Long War Team), где они попытались смешать несколько очень разных игр — 4Х стратегию, геополитический симулятор и игру о колонизации Солнечной системы. Какой получилась первая полновесная игра команды, которая ранее занималась только разработкой модов? Давайте посмотрим.

Будет совсем чуть-чуть спойлеров!

Хорошая планета. Мы захватим её!

Как сделать безопасную загрузку с полностью зашифрованным диском на Linux без загрузчика на UEFI

Level of difficultyHard
Reading time14 min
Views15K

Наша новая статья — для довольно искушённых пользователей Linux. В ней DevOps-инженер Алексей Гаврилов разобрал, как установить Debian или аналогичный дистрибутив на полностью зашифрованный диск без загрузчика на UEFI с включённым Secure Boot. 

После завершения установки вы получите включённый Secure boot с использованием личных ключей для подписи EFI-файлов, подписанные ключом файл ядра и initramfs, а также зашифрованные разделы диска за вычетом EFI boot. Это позволит уменьшить возможность векторного взлома ноутбука и усложнит жизнь потенциальному взломщику, поскольку в его распоряжении будут только подписанные EFI-файлы.

Читать далее

PostgreSQL 16. Снимки данных. Часть 4

Level of difficultyMedium
Reading time5 min
Views4.7K

Данная статья является продолжением: PostgreSQL 16. Страницы и версии строк. Часть 3.

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

Читать далее

Создание процессора с нуля для чайников

Reading time18 min
Views52K

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

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

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

Читать далее

4 тысячи заметок?! Как я веду личную базу знаний в Obsidian

Reading time6 min
Views72K

В моей базе знаний 4 000 заметок.

Да, у меня немного съехала крыша на этой теме. Но решение создать систему для ведения заметок три года назад — пока что лучшая из моих интеллектуальных инвестиций. В этом посте хочу поделиться, зачем я это делаю, в каком формате и какие полезные практические кейсы для себя нашел. Тема бездонная, на самом деле. Можете взять часть идей и развить у себя.

Читать далее

Как попасть на день рождения Губки Боба? Решаем интересные задачи с CTF-турнира

Level of difficultyMedium
Reading time4 min
Views2K

Привет, Хабр! Давно я не публиковал свои похождения по CTF — пора это исправить! За прошедшее время мне удалось попробовать себя в трех турнирах. В ImaginaryCTF, посвященном кибербезопасности, Umasscybersec, адаптированном под Губку Боба, и n00bzCTF, который сделали для опытных n00bz.

Категорий задач на турнирах было много. Среди них — OSINT, Reverse, Forensics, Pwn и Web. Последнее направление для меня самое интересное, поэтому его я и выбрал. Что из этого получилось, рассказываю под катом!

Читать далее

Обзор и гайд по Tortoise ORM: собрал в одну статью все, что надо знать об инструменте и своем опыте работы с ним

Level of difficultyMedium
Reading time26 min
Views53K

Привет, Хабр! Меня зовут Даниил Лихачев, я Python backend developer в диджитал-продакшене Далее. Сегодня я хотел бы представить вашему вниманию асинхронную библиотеку для работы с базами данных под названием Tortoise ORM. Это обзорная статья, чтобы показать, что из себя представляет данная библиотека и для каких проектов она подойдет. Также на основе своего опыта постараюсь осветить аспекты, в которых Tortoise ORM хороша и удобна, а также те, в которых ее возможностей может не хватать и как это обойти. Также бонусом предоставлю свой шаблон в стеке FastAPI + Tortoise ORM.

Читать далее

JavaScript: структуры данных и алгоритмы. Часть 3

Level of difficultyMedium
Reading time46 min
Views8.4K


Привет, друзья!


В этой серии статей мы разбираем структуры данных и алгоритмы, представленные в этом замечательном репозитории. Это третья часть серии.



Сегодня мы будем говорить о таких структурах данных, как деревья. В этой статье мы рассмотрим двоичное дерево поиска, АВЛ-дерево и красно-черное дерево.


Код, представленный в этой и других статьях серии, можно найти в этом репозитории.


Интересно? Тогда прошу под кат.

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

Как я превратил обычный бизнес в IT компанию, читая книги

Level of difficultyEasy
Reading time14 min
Views10K

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

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

Казалось бы, что могло пойти так?

ИИ LLama3 без ограничений: локальный запуск, GROQ и интеграция в Телеграм бота с помощью Python

Level of difficultyMedium
Reading time25 min
Views34K

Друзья, приветствую вас в очередной статье. Сегодня я расскажу, как использовать LLAMA3 ИИ в своих проектах. После небольшой подготовки мы приступим к созданию полноценного Telegram бота.

Сегодня мы:

Научимся устанавливать LLama3 на локальную машину.

Научимся бесплатно запускать LLama3 через платформу GROQ.

Разберемся с преимуществами и недостатками первого и второго способа развертывания LLama3.

Напишем полноценного Telegram бота с использованием aiogram3, который сможет работать как с локальной версией LLAMA3, так и через сервис GROQ (технически он сможет работать с любой подключенной нейросетью).

Запустим Telegram бота на VPS сервере (опционально).

Читать далее

ТРИЗ глазами продакта и/или предпринимателя

Level of difficultyMedium
Reading time37 min
Views6.5K

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

Впервые прочитав книгу Генриха Сауловича Альтшуллера «Найти идею. Введение в ТРИЗ — теорию решения изобретательских задач», мне не давала покоя история о том, как он консультировал представителей стекольного производства:

Читать далее

Крекер. SQL инъекции. Уязвимость LFI

Reading time4 min
Views7.8K

Введение

Рады вновь приветствовать дорогих читателей! Начиная с этой статьи мы запускаем новую рубрику "Крекер", в серии этих статьей мы будем разбирать различные уязвимости, их эксплуатацию. В этой вступительной статье мы разберём уязвимости SQL, LFI, ADB и инструменты их эксплуатации.

Дисклеймер: Все данные, предоставленные в статье, взяты из открытых источников. Не призывают к действию и являются только лишь данными для ознакомления, и изучения механизмов используемых технологий.

Читать далее

Information

Rating
8,855-th
Location
Краснодар, Краснодарский край, Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Software Architect
Lead
Python
PostgreSQL
Linux
Docker
Kubernetes
RabbitMQ
Elasticsearch