Обновить

Разработка

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

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

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

Привет, Хабр! На связи Александр Усачёв, системный аналитик в группе облачных продуктов Рунити. В основе нашей облачной платформы Рег.облако лежит микросервисная архитектура: каждый сервис отвечает за свой участок бизнес-логики — от биллинга до управления сетями. Между собой они обмениваются задачами через брокер сообщений. 

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

Читать далее

Великий крах качества программного обеспечения: как мы нормализовали катастрофу

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

Мы переживаем величайший кризис качества программного обеспечения в истории вычислительной техники. Калькулятор теряет 32 ГБ оперативной памяти. ИИ-помощники удаляют рабочие базы данных. Компании тратят 364 миллиарда долларов, чтобы избежать решения фундаментальных проблем.

Читать далее

Почему Google Переводчик «ломает» React (и другие веб-приложения)

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

Команда JavaScript for Devs подготовила перевод статьи о том, почему Google Переводчик может ломать React и другие современные веб-приложения. Причина в том, что расширение вмешивается в DOM, нарушая работу виртуального DOM и вызывая ошибки вроде removeChild и insertBefore. Автор показывает реальные кейсы, обходные пути и поднимает важный вопрос: имеет ли фреймворк право на полный контроль над DOM?

Читать далее

Интегрируем ресивер Триколора с «Домом с Алисой» с помощью Java и Spring

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

Привет! Меня зовут oldzoomer, и я хочу рассказать, как я подключил приёмник Триколор к экосистеме Яндекса, чтобы управлять им голосом через Алису. Всё сделано на Java 21, Spring Boot и официальном Stingray TV API - без хаков и модификаций прошивки.

Читать далее

Ссылочный тип данных в JavaScript: ключ к эффективному коду

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

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

Привет, Хабр! Меня зовут Александр Дудукало, я автор базового курса по JavaScript.  В этой статье я простыми словами расскажу, как работают ссылки, почему это важно знать и как правильно копировать объекты.

Читать далее

Анализ дампа: с чего начать

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

Всем привет! Меня зовут Виктор, и я программист. Восемь лет работаю в команде Т-Банка и все это время вместе с коллегами занимаюсь проектом «Т-Телефония». Моя команда разрабатывает сервисы, которые обеспечивают голосовую коммуникацию внутри и вне банка. 

Звонки — один из основных способов связи с нами, поэтому система критична для бизнеса с высоким требованием к доступности. Она обрабатывает более 2 млн звонков в день. Если происходит сбой в любой пользовательской системе и нашим клиентам плохо, количество звонков сразу увеличивается, а нагрузка на систему повышается в два-три раза.

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

В статье покажу, что такое дампы, какие есть инструменты для работы с ними и какие у них особенности, покажу наши примеры проблем, расскажу, как мы их решали.

Читать далее

От четырёх до семи сделок в день: как мы перестроили процесс записи и забили календари по полной

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

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

Читать далее

Gemini за полчаса решила то, что не осилили топовые студенты-программисты на олимпиаде

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

Привет, Хабр! Меня зовут Кирилл Пшинник, я научный сотрудник Университета Иннополис и CEO онлайн-университета zerocoder.ru. Поговорим о прорыве, совершенном Google DeepMind, и о том, можно ли это вообще считать прорывом. 

В сентябре нейросети «обскакали» студентов на Международной студенческой олимпиаде по программированию в Баку. Они были во внеконкурсе, но если бы участвовали на общей основе, то GPT-5 заняла бы первое место, решив 12 заданий из 12, а Gemini 2.5 Deep Think — второе с 10 заданиями из 12. И самое интересное: всего за полчаса «гугловская» нейросеть справилась с задачей «C», которую не смогла решить ни одна из человеческих команд. 

Читать далее

Когда база данных становится открытой книгой

Время на прочтение18 мин
Количество просмотров619

Базы данных превращаются в «открытую книгу», когда конфиденциальная информация из них становится доступна злоумышленникам или широкой публике из-за утечек. К сожалению, 2024-2025 годы принесли множество таких утечек – в самых разных отраслях. Согласно данным Роскомнадзора, только в России за 2024 год было зафиксировано 135 утечек баз данных, затронувших более 710 млн записей о россиянах. Лидерами по количеству утечек стали торговый сектор и государственные организации. В мире тенденция схожая: глобально число утечек и скомпрометированных записей бьёт рекорды. В этой статье будут разобраны недавние громкие кейсы утечек по секторам (энергетика, госсектор, e-commerce и др.), проанализируем технические причины: от открытых портов NoSQL и слитых резервных копий до уязвимых CI/CD-пайплайнов, а также практические рекомендации, как не допустить, чтобы ваша база данных стала общедоступной библиотекой. Мы в Security Vision также рассматриваем эти задачи как ключевые в разработке решений нового поколения, в том числе в области автоматизации защиты баз данных и безопасной разработки.

Читать далее

Можно ли было обнаружить бэкдор XZ при более продуманной работе с пакетами в Git и Debian?

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

Обнаружение бэкдора в XZ Utils весной 2024 года поразило опенсорс-сообщество и подняло серьёзные вопросы о безопасности цепочки поставок ПО. В этом посте мы изучим, могло ли улучшение практик работы с пакетами Debian помочь в выявлении этой угрозы, приведём руководство по аудиту пакетов и предложим улучшения на будущее.

Бэкдор XZ в версиях 5.6.0/5.6.1 быстро попал во многие крупные дистрибутивы Linux наподобие Debian и Fedora, но, к счастью, не добрался до многих реальных пользователей, потому что благодаря героическому усердию Андреса Фройнда релизы с бэкдором были быстро удалены. Нам крайне повезло, что мы выявили регрессию производительности SSH в полсекунды, уделили время её трассировке, обнаружили зловредный код в загружаемой SSH библиотеке XZ и быстро сообщили о нём различным командам безопасников для принятия быстрых координированных мер защиты.

Этот эпизод заставил разработчиков ПО задаться следующими вопросами:

Почему ни один из упаковщиков дистрибутивов Linux не заметил ничего странного при импорте новой версии XZ 5.6.0/5.6.1 из апстрима?
Легко ли проводить аудит современной цепочки поставок в самых популярных дистрибутивах Linux?
Возможно ли наличие других подобных бэкдоров, которые мы пока не выявили?

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

Стоит отметить, что мы ограничимся только изучением способа импорта ПО дистрибутивом Debian из его апстрима, а также его распространения среди пользователей Debian. При этом мы никак не затронем тему оценки соответствия проекта апстрима best practices по безопасности разработки ПО. В этом посте мы не будем и говорить о том, какие меры следует предпринять на компьютере с Debian, чтобы гарантировать его защиту, потому что таких руководств и так уже много.

Читать далее

Обзор проблем и решений в ризонинговых LLM. Часть 1

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

Как-то раз мы со студентами-переводчиками по ИТ задались вопросом:

А реально ли LLM «думает»? Или она просто, подобно школьнику, подгоняет объяснения под ответ в конце учебника, не имея ни малейшего понятия о том, правилен ли этот ответ или логичны ли ее рассуждения?

Поиски ответов на этот вопрос привели нас к статье-исследованию "Empowering LLMs with Logical Reasoning: A Comprehensive Survey", адаптированный перевод которой мы и предоставляем вашему вниманию.

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

Читать о ризонинговых LLM

Начало работы с Jira Automation: шаг за шагом (Часть 1)

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

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

Читать далее

Как создать AI-аналитика во время учебы: кейс выпускного проекта студентов Школы аналитиков данных МТС

Время на прочтение7 мин
Количество просмотров2.6K

Привет, Habr! На связи Максим Шаланкин из команды Школы аналитиков данных МТС. Каждый год наши студенты в качестве итогового проекта решают реальные бизнес-задачи, и этот не стал исключением. Четверо выпускников — Анна Шестакова, Григорий Суханов, Михаил Футьянов, Алексей Жданов — создали InsightFinder, мультиагентную систему для автоматического анализа данных (EDA). Этот проект автоматизирует EDA и бизнес-интерпретацию данных, сокращая рутинный процесс с нескольких часов до пяти минут. 

Добавление бизнес-интерпретации повышает вариативность использования: проект становится полезным инструментом как для специалистов Data Scientist или Data Analyst, так и для менеджеров, которые занимаются развитием продуктов и которым нужна быстрая проверка гипотез.

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

Читать далее

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

Провели опрос среди 2000 ИТ специалистов: «Микросервисы побеждают 4:1, low-code — 5:1». Но почему не всё так однозначно?

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

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

В начале октября на XIV Международной IT-конференции «Стачка» в Санкт-Петербурге — одном из крупнейших профессиональных событий российского IT-комьюнити — мы решили провести эксперимент. Что, если предложить разработчикам публично выбрать сторону в вечных холиварах? Например: Микросервисы или монолиты? Low-code или только ручной код?

Читать далее

Чему не учат на курсах бизнес-аналитика: почему шаблоны ТЗ мешают работе

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

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

Меня зовут Ольга, я бизнес-аналитик в Outlines Tech. Пятнадцать лет работаю в финтехе, сейчас отвечаю за операционные риски. Хочу поделиться мнением, почему шаблоны это не панацея и как бизнес-аналитик может ставить задачи быстрее и понятнее. Об этом редко говорят на курсах и конференциях, хотя именно это определяет эффективность работы.

Читать далее

pg_expecto: Аудит производительности инфраструктуры при нагрузочном тестировании СУБД PostgreSQL

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

«Современная производительность — это сложный пазл, где метрики СУБД, дисковые операции, потребление CPU и сетевые задержки тесно переплетены. Традиционное нагрузочное тестирование часто дает лишь часть ответа, заставляя нас собирать данные из десятка разных источников. В этой статье мы рассмотрим, как расширение pg_expecto становится единым источником истины, объединяя метрики инфраструктуры и PostgreSQL в едином контексте. Узнайте, как превратить разрозненные данные в целостную картину и получить точный ответ на вопрос: где на самом деле кроется узкое место вашей системы?»

Читать далее

Неожиданная находка в Kubernetes: постквантовая криптография в кластерах

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

Развитие квантовых компьютеров ставит под угрозу классическую криптографию: потенциально они смогут взломать существующие алгоритмы шифрования вроде RSA и ECC. На выручку приходит постквантовая криптография (PQC). Автор статьи объясняет, как обстоят дела с PQC в TLS, что это значит для Kubernetes — и почему уже сегодня кластеры получили постквантовую защиту почти случайно.

Читать далее

По следам ПЛИСового кейс-чемпионата

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

В конце сентября - начале октября в рамках межрегионального форума «ИТ-трансформация 2025: профессионалы цифрового будущего» [https://itforumaltai.ru/2025/], проходившего в г.Барнаул проводился кейс-чемпионат «Код успеха». В номинации «Промышленная разработка» два из тех кейсов были посвящены проектам на ПЛИС:

Кейс 1. Retro Game Console – разработка устройства вывода графики, анимации и текста с интерактивными эффектами

Данный кейс родился спонтанно, под влиянием книг Steven Hugg «Making Games for the NES» и «Designing Video Game Hardware in Verilog», а также ряда дискуссий в чате «Школы синтеза цифровых схем» и от этого кейса ожидались как минимум яркие красивые картинки, да и обычно вывод на дисплей/экран и манипуляции с картинками доставляют яркие и незабываемые эмоции (особенно при отладке, да…)

Кейс 2. «RTL-SoC-challenge» – разработка и прототипирование системы-на-кристалле на базе FPGA

Второй кейс родился по образу и подобию SoC Design Challenge 2025 [https://edu.yadro.com/soc-design-challenge/ https://habr.com/ru/companies/yadro/articles/909410/], но в несколько упрощенном (??ооочень не точно) варианте – только RTL синтез с небольшими включениями тестирования модулей.

В этом кейсе участникам в качестве подопытного кролика был предложен вариант многопоточной архитектуры процессора RISC-V, разработанного для учебного курса [https://riscv-alliance.ru/material/risc-v-dlya-fpga-arhitektura-mikroarhitekturnye-realizaczii/] созданного в рамках выполнения гранта Альянса RISC-V на разработку учебных материалов.
Соревнование собрало команды и индивидуальных участников из АлтГУ, ИТМО, МИЭМ НИУ ВШЭ, РТУ МИРЭА, Санкт-Петербургского политехнического университета. Работы оценивали специалисты компании YADRO (огромное спасибо Юрию Гринишкину и Евгению Максимову за помощь и организацию процесса). В целом инженерами отмечен высокий уровень участников и большой объем работы, проделанный за неполные две недели, отведенные на решение задач.

Читать далее

Проводники спирального типа

Время на прочтение3 мин
Количество просмотров5.3K

В современной электронике печатные платы играют ключевую роль, обеспечивая соединение компонентов и передачу сигналов. Одним из интересных и функциональных элементов разводки являются проводники спирального типа (также известные как спиральные индуктивности или меандровые линии).

Спиральные проводники представляют собой металлические дорожки, выполненные в форме спирали или меандра на поверхности или внутри слоёв печатной платы. Их конструкция может быть:

- Плоской спиралью (planar spiral) – дорожка закручена по окружности или квадрату.

- Меандровой линией (meander line) – зигзагообразная структура, увеличивающая эффективную длину проводника.

- Многослойной спиралью – когда витки распределены между разными слоями печатной платы.

1. Конструкция и особенности

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

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

Читать далее

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

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

В современном мире есть огромное количество вызовов, и помимо пресловутых “капитанов галактической полиции из Центробанка”, которые призваны защитить тебя от мошенников (на самом деле нет, кто не понял - это был сарказм), существует куча угроз, которые даже не увидишь то толком. И я сейчас не про микробы и инфекции, а про интернет безопасность, мы же на Хабре, в конце концов, правда? 

Читать далее