Обновить

Как стать автором

Как я торговлю автоматизировал

Уровень сложностиСредний
Время на прочтение28 мин

Речь пойдёт о разработке системы алгоритмической торговли с использованием обучения с подкреплением. Пройдём путь от идеи до работающей системы с разумной детализацией. Расскажу про свои ошибки: радовался single-seed успехам, верил Claude Code на слово, считал лучшую модель годной для production, в то время как на самом деле это был верхний квартиль сид-шума. Внутри Mixture-of-Experts по рыночным режимам, shadow-routing на rolling Sharpe, hybrid expert-swap, методология валидации, а также небольшой список всего того, что не сработало. Подойдёт в качестве инструкция для ai-агента, чтобы повторить опыт и понять почему работает.

Читать далее
Всего голосов 1: ↑0 и ↓1-1
Комментарии0

Логи, которые реально помогают: как дебажить продакшен-бота

Уровень сложностиСредний
Время на прочтение6 мин

Знакомая ситуация: бот вроде бы работает. Люди тыкают кнопки, получают ответы, всё хорошо. Но иногда случается странное.

Прилетает сообщение в поддержку: «Бот не отвечает». Или ещё хуже: «Бот выдал какую‑то ошибку и всё». Вы бежите к терминалу, поднимаете историю... и ничего не видите. Ни ошибки, ни стека, ни даже намёка на то, где именно всё сломалось.

Вы просто слепы.

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

Читать далее...
Рейтинг0
Комментарии0

Пишем свой SQL query builder на Python: DSL, кеширование в Redis и защита от инъекций

Уровень сложностиСложный
Время на прочтение7 мин

Объектный построитель SQL-запросов без ORM и моделей. Позволяет писать сложные SQL-запросы в виде цепочек Python-методов (table[‘person’].filter(…).join(…).get()) и получать результат в виде списка словарей. Под капотом — параметризованные запросы для защиты от инъекций, продуманная система кеширования с инвалидацией по таблицам (in-memory и Redis), поддержка синхронного и асинхронного кода из коробки. Для тех случаев, когда ORM избыточна, а сырой SQL небезопасен.

Читать далее
Рейтинг0
Комментарии2

Ты одинокий несчастный студент в СНГ, что будешь делать?

Время на прочтение5 мин

Дисклеймер: Данный материал в большей степени подходит тем, кто может отнести свой склад ума к «техническому».

Привет! Твой стартовый персонаж не появился на свет с выигрышной колодой, но есть ли у него шансы на лучшую жизнь?

Постараюсь быть краток. В двух словах об авторе: 25 лет, студент 4го курса электротехнического факультета, с претензией на высший балл по выпуску, AI инженер в настоящем — менеджер в прошлом.

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

Давай представим что ты родился в деревне, и выяснилось что ты гений. Однако на дворе 2026й год и ты бегаешь за водой на колонку, а покинуть дом не можешь потому что присматриваешь не дай бог за родственником инвалидом. Что же делать тогда? Ну допустим ты выучился на ракетостроение из дому, найдя некоторую образовательную программу от MIT, но что делать дальше? Ты в деревне и не можешь ее покинуть, ракетостроителем работать ты не сможешь, из доступных вариантов — работа в колхозе. Но ты точно знаешь что ты способен на большее, что же делать в таком случае?

Читать далее
Всего голосов 4: ↑2 и ↓20
Комментарии2

С++ с нуля в 2026 году: почему нужно сразу учить C++20 и забыть про дедовские туториалы

Уровень сложностиПростой
Время на прочтение4 мин

Хабр, привет!

Если вы скажете знакомому разработчику (особенно фронтэндеру или Python-разработчику), что хотите выучить плюсы с нуля, скорее всего на вас посмотрят с сочувствием. В IT-сообществе укоренилось мнение, что плюсы - это темный лес с какими-то непонятными указателями, ручным управлением памятью и прочими прелестями языка. В целом они правы, кроме одного момента. Это было десятки лет назад. Начиная с С++11, а уж тем более в эпоху С++20, язык стал другим. Разработчику больше не нужно следить за жизнью переменной, выделенной через new, бояться обратиться за пределы массива, жонглировать сырыми указателями. На многое появились удобные обертки, которые упрощают жизнь разработчику. А некоторые из них еще и никак не влияют на производительность. Если вы студент, человек из другой сферы или разработчик, который хочет потрогать новый инструмент - не бойтесь. Главное - правильно начать.

Читать далее
Всего голосов 9: ↑8 и ↓1+8
Комментарии18

Тюнинг Cursor: как я укротил AI-ассистента и радикально снизил счета за токены с помощью MCP-серверов

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

Cursor или его аналоги, здорово облегчают написание кода, когда речь идет о каких‑то не очень больших проектах. Но стоит попробовать применить их к серьезному, сложному проекту, состоящему из нескольких репозиториев, и тут же сталкиваешься с тем, что эти «чудеса» оборачиваются просто огромными счетами за токены. Я в этой статье поделюсь, как мне удалось перестать впустую сжигать миллионы токенов. Для этого пришлось собрать и запустить три MCP‑сервера по протоколу Model Context Protocol, что позволило сэкономить до 90% бюджета, при этом совершенно не потеряв в эффективности модели при работе с кодом.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии3

«ECS — like» вектор на с++

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

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

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

О чем я?

Читать далее
Всего голосов 12: ↑12 и ↓0+14
Комментарии2

Простой гайд как на одном и том же сервере иметь и панель 3X-UI за NGINX, и свой сервис

Время на прочтение10 мин

В 2026 для VPN нужна маскировка. А нет никакой лучшей маскировки, чем уже работающий легитимный сервис. Силами NGINX-streams и HTTP2 это сделать довольно легко.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии26

Долгие миграции на старте сервиса — это не startup-проблема. Это ошибка в архитектуре релиза

Уровень сложностиСредний
Время на прочтение7 мин

Когда сервис поднимается по 8-15 минут, команда почти всегда начинает крутить одни и те же ручки: увеличивает initialDelaySeconds, добавляет startupProbe, поднимает progressDeadlineSeconds, иногда переносит миграцию в initContainer и считает, что стало «по-кубернетесному». Обычно это не лечение. Это способ аккуратнее завернуть проблему в YAML. Если тяжёлая миграция живёт внутри старта приложения, вы связали жизненный цикл Pod, rollout Deployment и поведение базы в один общий узел. А такие узлы в проде рвутся не там, где их ждут.

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Ещё раз о Docker

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

Обобщение знаний и опыта для базового использования Docker, которые накопились за время использования.

Читать далее
Всего голосов 9: ↑5 и ↓4+3
Комментарии3

Как я думал над шевроном космонавта, а придумал операционную систему для космоса

Уровень сложностиПростой
Время на прочтение3 мин

Представьте далекое будущее: вы на лунной базе. К вам подходит человек в скафандре. Кто он? Астронавт NASA? Космонавт из Роскосмоса? Частный турист SpaceX? Откуда он? Какой у него опыт? Может он вообще марсианин?

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

Ключ на старт
Всего голосов 1: ↑1 и ↓0+1
Комментарии35

Манифест устойчивого ИИ: не более умные ассистенты, а новая форма цифрового существования

Уровень сложностиСредний
Время на прочтение5 мин

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

Уже три года публичный разговор об ИИ крутится вокруг оси способности: насколько умна модель, сколько токенов, сколько бенчмарков. Я предлагаю смотреть на другую ось — устойчивость во времени.

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

Я полтора года тихо разрабатываю прототип — кодовое имя Aurora — который пытается это исправить. Не как продукт. Как исследовательский субъект. Этот пост — приглашение к дискуссии.

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии4

«У нас нет токсичных людей» — и при этом работать там невыносимо

Уровень сложностиПростой
Время на прочтение4 мин

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

Читать далее
Всего голосов 3: ↑3 и ↓0+5
Комментарии9

Многопоточность в SCADA системах

Уровень сложностиСредний
Время на прочтение5 мин

Пишу SCADA-ядро на C++ для инженерных систем: опрос ПЛК, кэширование значений, правила автоматики и управление исполнительными механизмами. На текущем этапе упёрся в практический вопрос многопоточности: как правильно разделять потоки чтения и записи, как сериализовать доступ к одному каналу связи, и насколько оправдано использование std::condition_variable. В статье показываю текущую реализацию потока опроса ПЛК и хочу услышать мнение коллег, которые разрабатывали промышленные SCADA-системы.

Читать далее
Рейтинг0
Комментарии3

Пишем прототип ИИ-агента для EdTech-саппорта без векторных баз и фреймворков: чистый Python, Gemini и JSON

Уровень сложностиСредний
Время на прочтение11 мин

У любого EdTech продукта есть проблема поддержки студентов. Я и сам столкнулся с ней в мою бытность автором курсов на степик. Студенты сталкиваются с трудностями и пишут в чат / на форум в надежде, что им помогут (особенно, если они заплатили за обучение свои кровные).

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

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

Читать далее
Рейтинг0
Комментарии4

BI-конструктор Битрикс24: как настроить кастомный отчет

Уровень сложностиПростой
Время на прочтение5 мин

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

BI‑аналитика — это подход к работе с данными, при котором мы агрегируем, считаем и визуализируем показатели для принятия управленческих решений.

Лично для меня самая интересная часть — агрегация. Когда из сырых таблиц со сделками, стадиями и пользовательскими полями собираются понятные метрики, появляется то самое ощущение «алхимии»: смешал данные, формулы или фильтры и получил осмысленный результат.

В контексте Битрикс24 BI не отдельный внешний инструмент, а логичное продолжение CRM и бизнес‑процессов.

Читать далее
Рейтинг0
Комментарии0

Пентест веба на пальцах: для новичков и слегка отбитых

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

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

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии3

Почему сроки в IT почти всегда срываются. И почему, кажется, это всех устраивает

Уровень сложностиСредний
Время на прочтение8 мин

Всем привет от Петра Третьяка, который за 10 лет в управлении проектами ни разу не видел, чтобы крупный релиз вышел ровно в ту дату, которую назвали на старте. Ни разу. При этом все на старте в эту дату верили: и заказчик, и команда, и я сам.

А что дальше?
Всего голосов 5: ↑5 и ↓0+5
Комментарии9

Telegram Mini App для PWA-приложения: как я перешёл с TWA для RuStore и что выяснил по дороге

Уровень сложностиПростой
Время на прочтение9 мин

Я разрабатываю PWA для голосовой практики английского. Несколько раз пытался опубликовать его в RuStore через Trusted Web Activity (TWA) — Google-обёртку, которая упаковывает PWA в подписанный Android AAB. После четырёх отказов модерации я понял, что для моего класса приложений TWA в RuStore не работает, и за день переключился на Telegram Mini App.

Эта статья — не история стартапа, а разбор технических решений:

Читать далее
Рейтинг0
Комментарии0

Империя наносит ответный удар: kad.arbitr.ru снова поддается парсингу (часть 1)

Уровень сложностиПростой
Время на прочтение5 мин

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

Сайт kad.arbitr.ru — предоставляет информацию о гражданских делах, в первую очередь данная информация интересна юристам. Также там можно найти информацию о начале\конце банкротства и много другой информации связанной с юридической составляющей нашей жизни как граждан данной страны. На практике часто возникает задача мониторинга состояния дел по заданному списку — допустим по ИНН или же по ФИО. Именно такая задача была поставлена предо мной, найти дело по ИНН (если оно существует) и открыть его карточку чтобы собрать информацию.

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

Первое, что приходит в голову при решении задачи парсинга по конкретному полю — это использование API.

Возможны три варианта.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии7
1
23 ...