Обновить
1024K+

Программирование *

Искусство создания компьютерных программ

1 217,45
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Axios и проблема зависимостей

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

Как взлом одного npm-аккаунта за 3 часа распространил RAT на 174 000 пакетов и почему стандартные инструменты вроде NPM Audit это не поймали. Разбираем инцидент с Axios: механику атаки, слепые пятна в CI/CD и то, что реально работает.

Читать далее

Зачем нужны языки квантового программирования и какие открытые проекты развиваются в этой области уже сейчас

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

ИТ-компании продолжают выпускать чипы со все большим количеством кубитов в надежде прийти к полнофункциональному квантовому компьютеру. Однако работа с таким железом требует особого подхода, поэтому появляются специализированные языки квантового программирования. Сегодня мы в Beeline Cloud расскажем о нескольких таких проектах: Qrisp, Silq, Qutes, cQASM и Quantica — и зачем они нужны.

Читать далее

Руководство по анализу и настройке производительности для современных процессоров. Анонс книги

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

Привет, Хабр.

Хотим поделиться с вами новостью о том, что завершаем более чем годичный фундаментальный проект - готовимся к выпуску русского издания знаменитой книги Дениса Бахвалова "Performance Analysis and Tuning on Modern CPUs: Learn to write fast software like a pro". Денис теснейшим образом взаимодействовал с нашими редакторами, мы составили глоссарий к русскому изданию и уверены, что книга на долгие годы станет де-факто главным пособием по оптимизации производительности CPU. Книга выросла из многочисленных практических исследований, которыми Денис занимается в компании "Intel", и в качестве анонса мы хотим предложить вам перевод статьи автора, которая вышла ещё в 2019 году и может считаться рассказом о том, как зародилась идея будущей книги. В тексте под катом содержатся многочисленные ссылки на статьи Дениса из блога https://easyperf.net/notes/, который также рекомендуем пристально изучить. Русскую книгу ждите в мае. Далее - от автора.

Читать далее

Управление агентом с телефона через Telegram теперь в KodaCode

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

Все популярные агенты движутся в одну сторону: управление ими должно быть максимально удобным и естественным. Голосовой ввод появился в ведущих зарубежных решениях, как и remote control, который несколько недель назад стал доступен в Codex и Claude Code. В этом релизе мы добавили обе возможности в KodaCode. Разберём по порядку.

Читать далее

Вайбдебаггинг — уже реальность? Мы дали ИИ-агенту отладчик и проверили

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

В конце прошлого года Cursor выпустил Debug Mode — режим, в котором агент может собирать логи из рантайма, чтобы лучше понимать причины багов. Судя по реакции на Reddit, идею приняли с интересом.

Но что, если пойти более прямым путём? Дать агенту «руки», чтобы он отлаживался так же, как это делает разработчик: ставил брейкпоинты, ходил по ним, выполнял evaluate expression? Этим вопросом недавно задались исследователи из Microsoft Research и сделали экспериментальный фреймворк Debug2Fix. Субагент, оснащённый инструментами для взаимодействия с отладчиком, разбирался с багами из датасетов GitBug-Java и SWE-Bench-Live на 20% лучше, чем обычный агент без таких инструментов.

Если агент уже интегрирован с IDE, естественно дать ему доступ к полноценному дебаггеру, когда он так близко. Тем более что этим занимаются даже в Microsoft. Поэтому в недавнем релизе своего ассистента для IntelliJ мы добавили Debug Agent, позволяющий агенту взаимодействовать с дебаггером в среде разработки.

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

Читать далее

50% пишу и удаляю код, 40% объясняю, что таблица – это не эксель, 10% жду логи

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

В СИБУРе я отвечаю за разработку сервиса видеоаналитики. По сути, это система, которая в реальном времени обрабатывает видеопоток с камер на нефтехимических предприятиях. Камеры следят за технологическим процессом: считают продукцию на конвейере, определяют уровень жидкости в колбах, проверяют наличие касок на людях. Результат нужен в течение пяти секунд, потом уже поздно.

Читать далее

JUnit 5 Extensions (часть 2): пишем умные data-провайдеры и DI-контейнер на Kotlin

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

"Скоро сказка сказывается, да не скоро дело делается" - говорится в народной пословице. Вот и мы решили не спешить со второй частью статьи по Junit 5 Extensions, а подойти к ней более основательно! Статья будет полезна QA-автоматизаторам, которые хотят глубже понимать работу с расширениями и выжать чуть больше из связки Kotlin + Junit5. Мы пройдем путь от простой реализации condition-выполнения тестов и источников данных для параметризованных тестов до реализации расширения Микро-DI с рекурсивной инъекцией зависимостей.

Как и в прошлой статье, сделаем акцент на практической части реализации расширений для JUnit 5. В качестве языка - Kotlin. Поэтому, достаем бутерброды, наливаем пиво кофе и приступаем!

Читать далее

Почему твой Open Source проект не замечают?

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

Вы сделали open source проект. Потратили на него недели или даже месяцы: продумали архитектуру, аккуратно написали код, добавили нужные фичи. Даже сами начали им пользоваться.
А потом открыли GitHub… и ничего не произошло. Ни пользователей. Ни обсуждений. Ни pull request’ов. Иногда даже звёзды не появляются.

И в этот момент возникает вполне логичный вопрос:
“Что не так?”

Разбираем, что мешает проектам получать пользователей и контрибьюторов, и как это изменить.

Читать далее

Когда, зачем и как правильно начинать новую сессию в Claude Code?

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

В последних разговорах с пользователями Claude Code постоянно всплывает одна тема: контекстное окно в 1М токенов — палка о двух концах.

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

Управление сессиями сейчас важнее, чем когда-либо, и вопросов вокруг него много. Держать одну или две долгосрочные сессии в терминале? Начинать новую с каждым промптом? Когда использовать compact, rewind или subagents? Что приводит к плохой компактизации или плохой сессии?

Всё это неожиданно сильно влияет на опыт работы с Claude Code, и почти всё сводится к управлению контекстным окном.

Читать далее

Опыт разработчика как экономика внимания

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

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

Почему инженеры хотят делать новое, а неделя уходит на сопровождение, алерты и переключение контекстов? Поводом для этой статьи стали два материала, которые неожиданно сошлись в одной точке: доклад Романа Елизарова про опыт разработчика и отчет Chainguard Engineering Reality Report 2026. Мы сопоставили взгляд сильного практика и международные данные, чтобы понять, куда на самом деле утекает внимание инженерных команд и почему DX сегодня — это уже не про удобство, а про экономику внимания.

Читать далее

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

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

Привет Хабр! В нашем блоге кейс-пополнение. Дисклеймер: По причине соглашений о неразглашении (NDA) мы не всегда можем указать на конкретного заказчика, но стараемся описывать задачу проекта и ее решение максимально подробно. Сегодня рассказ про применение ИИ в российской металлургии. Итак, после предисловия перейдем к теме статьи.

Читать далее

Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1

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

Go-код никогда не исполняется напрямую.

Любая строка Go превращается в машинные инструкции, которые выполняет CPU.

В этой статье мы разберём:

1) Какие инструкции генерирует компилятор Go

2) Как выглядит Go assembler

3) И что на самом деле выполняет процессор

Думаю с обзором и общими положениями мы закончили, поэтому начнем с фундамента – что происходит в CPU когда мы запускаем наше Go-приложение. Конкретно в этой статье разберем основные инструкции, которые может выдать для нашего CPU компилятор Go, что они из себя представляют и как соотносятся с кодом Go. Сразу оговорюсь, что это НЕ гайд по Go Assembler, а разбор того, что из себя представляет Go End 2 End. Попытка докопаться до истины

Напомню, что сам CPU определяет:

Читать далее

Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг

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

Все началось пару месяцев назад, когда я всерьез увлекся темой автономных агентов. Если вы следите за индустрией, то наверняка слышали про ruflo — это мощнейший движок для оркестрации Claude Code. Он позволяет создавать настоящие «ульи» из агентов, которые сами пишут код, сами его проверяют и сами деплоят.

Но когда я попытался внедрить это в реальный проект, я столкнулся с суровой реальностью.

Читать далее

Ближайшие события

Разработка нового статического анализатора: PVS-Studio JavaScript

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

Вот уже 18 лет статический анализатор кода PVS-Studio находится на рынке. За это время он обзавёлся поддержкой языков C, C++, C# и Java. Разумеется, останавливаться на этих языках мы не планируем, и в этой статье расскажем про разработку нового JavaScript/TypeScript анализатора, который выйдет уже совсем скоро.

Читать далее

Деконструкция Go: модель памяти, happens-before и почему ваш код работает. Часть 0

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

Приветствую всех!

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

Решил я фундаментально разобрать то, как работает Golang, потому что в интернете(YT, Конфы и пр.), на мой взгляд, крайне много откровенно поверхностной и верхнеуровневой информации. Я, конечно, буду рад, если вы укорите меня в моих слабых навыках поиска и покажете мне, что реальность не такая, какой я её выдумал, но субъективно это так.

Разборы здесь будут скорее про то, что лежит в порождении сумрачного американского гения по ссылке github.com/golang/go с периодической синхронизацией с официальной документацией.

Моя главная цель – разобрать всё максимально исчерпывающе, насколько я это смогу.

Чтож, поехали!

Ах, да. В этом цикле не будет особо веселых рисуночков с гоферами, а скучные блок-схемы, диаграммы и вырезки из кода.

Структурная схема

Читать далее

Не общались напрямую. Как мы построили устойчивую связку Диадок-Битрикс24

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

Заходят как-то в бар Битрикс24 и Диадок — и быстро выясняется, что работать вместе им пока сложно. Битрикс24 отвечает за сделки и коммуникации, Диадок — за документы и статусы. А бизнесу нужна единая цепочка: документ появился в Диадоке — менеджер сразу видит его в CRM без переключений и ручных сверок.

Мы реализовали такую интеграцию с нуля. Настроили автоматическую передачу документов из Диадока в Битрикс24. Документы создают лиды, а статусы, файлы и история изменений отображаются в CRM.

Читать далее

Анализ технологии Denuvo

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

Этот пост предназначен исключительно для образовательных целей. Denuvo считается одним из самых успешных решений для управления цифровыми правами, поэтому оно многим интересно. В этом посте представлен большой объём моих личных заметок и переписки с другими реверс-инженерами (см. раздел «Благодарности»), содержащий информацию о последних версиях Denuvo; многое из этого раньше не публиковалось.

Я не стремлюсь нанести какой-либо ущерб Irdeto, поэтому часть информации была вырезана из поста.

Читать далее

Как мы перестали мерить качество ответов RAG-поиска «на глаз» и начали нормально сравнивать

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

Если вы делаете RAG-поиск по документации или базе знаний, то рано или поздно упираетесь в проблему: хорошо найти — это еще не хорошо ответить.

База знаний, RAG, найденные чанки, LLM строит ответ. Но пользователь не знает ни про DCG, ни про Recall@10, ни про чанки вообще. Он видит только то, что написано в итоговом ответе. А проблемы начинаются именно здесь: модель может что-то проигнорировать, ответить на другом языке, добавить что-то от себя или выдать уверенный текст с иероглифами посередине.

В прошлой статье мы разбирали, как улучшали сам retrieval: чанкование, метаданные, гибридный поиск, реранкинг. Но после того как с поиском более-менее разобрались, встал другой вопрос — как вообще понять, хороший ли ответ получает пользователь?

Привет, меня зовут Дима, я делаю ИИ-функции в Gramax. В этой статье расскажу, как мы выстроили методику оценки ответов RAG-поиска. Заодно поделюсь, какая модель прямо сейчас дает лучший результат на наших задачах.

Читать далее

«Большой взрыв ИИ»: из-за искусственного интеллекта компании перегружены кодом

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

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

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

«Огромный объём создаваемого кода и рост числа уязвимостей — это то, с чем они не могут справиться», — сказала она. А поскольку разработка программного обеспечения ускорилась, это заставило отделы продаж, маркетинга, поддержки клиентов и другие подразделения тоже ускориться, добавила Клипперт, что создало «огромный стресс».

Читать далее

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

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

Всем привет! Меня зовут Егор Ермаков, я бэкенд‑разработчик в группе разработки процессинга Техплатформы городских сервисов Яндекса.

Техплатформа — это инфраструктурная платформа для всех городских сервисов Яндекса: Такси, Еды, Лавки, Доставки, а также для различных шеринговых сервисов — каршеринга, зарядных станций, самокатов и других.

Один из ключевых сервисов нашей команды — ProcaaS (Processing as a Service). Он предназначен для асинхронного выполнения динамических сценариев. Подробнее о самом сервисе, его архитектуре и роли в сетке микросервисов Такси мы рассказывали в предыдущей статье. В этом материале я хочу поделиться опытом решения одной непростой и при этом очень интересной технической задачи, с которой мы столкнулись в рамках развития ProcaaS, а именно — рассказать, как мы написали свой транслятор кода.

Читать далее