Обновить
13
Анатолий Никифоров@cybran24

BSc Computer Engineering

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

Артефактно-ориентированная разработка с AI-ассистентами: методология синхронизации контекста

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

Делюсь методологией артефактно-ориентированной разработки с AI-ассистентами. Метод решает проблему ограничений контекста в LLM через двустороннюю синхронизацию проекта и сжатых артефактов. Эксперимент на реальном проекте (портфолио с нуля, 36 файлов) показал: 18× меньше файлов для загрузки, 30× ускорение подготовки контекста, 100% воспроизводимость.

Читать далее

Как мы с ИИ переписали резюме: от списка технологий к нарративу экспертизы

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

Примечание: эта статья написана от лица AI-ассистента. Все цитаты и диалоги — реальная переписка с пользователем (с его разрешения). Код, ссылки и технические детали — подлинные.

Читать далее

Посчитайте сумму n-го ряда пирамиды нечетных чисел

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

Эта задача преследовала меня на двух интервью подряд, и я решил ее!

Читать далее

Настройка Visual Studio Code для Django

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

Настройка Visual Studio Code для работы над проектами Django немного отличается от типичного сетапа для pure Python проектов. Например, в Django мало пользы от mypy, так как он не поддерживает типы Django. Точно также дела обстоят с линтерами, которые, без предварительной настройки, работают с кодом Django неправильно.

Читать далее

Клиент-серверный IPC на Python multiprocessing

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

Статья отражает личный опыт разработки CLI приложения для Linux.

В ней рассмотрен способ выполнения привилегированных системных вызовов процессом суперпользователя по запросам управляющей программы через строго описанный API.

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

Читать далее

JWT аутентификация в CLI приложении на Linux

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

Когда речь идёт о хранении sensitive data в браузере, достаточно воспользоваться одним из двух доступных вариантов: cookies или localStorage. Тут каждый выбирает по вкусу. Однако я посветил эту статью Secret Service – службе, которая работает через D-Bus и предназначена для хранения «секретов» в Linux.

У службы есть API, которым пользуется GNOME Keyring для хранения аутентификационных данных пользовательских приложений.

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

Динамическое определение класса в Python

Время на прочтение4 мин
Охват и читатели24K
Под динамическим определением объекта можно понимать определение во время исполнения. В отличие от статического определения, которое используется в привычном определении класса с помощью ключевого слова class, динамическое определение использует встроенный класс type.

Метакласс type


Класс type часто используется для получения типа объекта. Например так:

h = "hello"
type(h)
<class 'str'>

Но у него есть другое применение. Он может инициализировать новые типы.
Читать дальше →

Строим маршрутизатор в SOCKS на ноутбуке с Debian 10

Время на прочтение10 мин
Охват и читатели22K
Целый год (или два) я откладывал публикацию данной статьи по главной причине — мной уже были опубликованы две статьи, в которых я описал процесс создания маршрутизатора в SOCKS из самого обычного ноутбука с Debian.

Однако, с тех пор стабильная версия Debian обновилась до Buster, мне в личку обратилось достаточное количество людей с просьбой помочь в настройке, а значит, мои предыдущие статьи не являются исчерпывающими. Что ж, я и сам догадывался, что методы, изложеннные в них, не до конца раскрывают все тонкости настройки Linux для маршрутизации в SOСKS. К тому же они написаны для Debian Stretch, а после обновления до Buster, в системе инициализации systemd, я заметил небольшие изменения во взаимодействии служб. Да и в самих статьях я не использовал systemd-networkd, хотя она лучше всего подходит для сложных сетевых конфигураций.
Читать дальше →

DNSCrypt 2.0 и блокировка рекламы

Время на прочтение2 мин
Охват и читатели60K
В этой статье хотелось бы рассмотреть нововведения Dnscrypt, на конкретном примере, который наверняка окажется для кого-то полезным.

Для тех, кто не знает, Dnscrypt — это уникальный протокол шифрования DNS-трафика. Он даёт возможность защитить DNS-коммуникации от перехватов и подмены, и к примеру, обойти блокировки реализуемые на уровне DNS-запросов.

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

В этой статье, воспользуемся этим преимуществом и для разнообразия/пользы ограничим доступ к рекламным доменам.
Читать дальше →

Маршрутизация в socks. Еще один способ

Время на прочтение4 мин
Охват и читатели21K
Рассмотрим еще один способ маршрутизации локальной сети через «socks-прокси». В отличии от предыдущего способа с «redsocks», в этом, будет рассмотрена возможность маршрутизации на сетевом уровне (сетевой модели OSI), по средствам пакета «badvpn-tun2socks». Данная статья ориентирована на создание и постоянное использование такого маршрутизатора на базе ОС «Debian stretch».

Советую другой способ с использованием systemd-networkd.

Прежде чем перейти к описанию настройки системы, предоставлю ссылку на исходники badvpn (может кому-то понадобится).

Итак, после скачивания и сборки пакета, предлагаю сразу создать сервис systemd со следующим содержанием:

cat /etc/systemd/system/tun2socks.service 
[Unit]
Description=Start tun2socks

[Service]
ExecStart=/путь/к/badvpn-tun2socks --tundev tun0 --netif-ipaddr 10.0.0.2 --netif-netmask 255.255.255.0 --socks-server-addr 127.0.0.1:1080

[Install]
WantedBy=multi-user.target

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

Маршрутизация локальной сети через прозрачный socks-прокси

Время на прочтение4 мин
Охват и читатели45K
Потребовалось пустить трафик со всех домашних устройств, включая смартфоны, через ssh tunnel.

Советую другой способ с использованием tun2socks.

Имелось:

  • маршрутизатор TP-LINK, подключенный к провайдеру.
  • смартфоны и ноутбук подключенные к беспроводной точки доступа маршрутизатора.

Ноутбук находился далеко от маршрутизатора (в другой комнате) и регулярно использовался, поэтому пришлось искать решение маршрутизации трафика с помощью встроенного беспроводного интерфейса (и без всяких там eth0).
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

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

Фулстек разработчик, Архитектор программного обеспечения