Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 1 hour 10 min ago

Поддержка Spring 7, Reactive Debugger, работа с БД и HTTP прямо в IDE: это и много другое в Amplicode 2025.2

Thu, 08/28/2025 - 18:46

Amplicode 2025.2 — это релиз, в котором мы закрыли десятки мелких раздражающих моментов, и усилили поддержку ключевых технологий — от Spring и Spring Data JDBC до Docker, Kubernetes и Terraform. А также сделали интеграцию с базами и HTTP-сервисами ещё более бесшовной.

Читать далее

Как служба поддержки ЮMoney научилась общаться с пользователями из разных стран, не зная их языка

Thu, 08/28/2025 - 18:45

Привет, Хабр. Мы – Даша (инженер машинного обучения) и Наташа (ведущий аналитик в ЮMoney). В этой статье расскажем о системе машинного перевода, разработанной как end-to-end-решение для многоязычной поддержки в финтех-компании. Рассмотрим архитектуру, технические детали реализации и практические результаты внедрения системы. А ещё покажем, как общались с пользователем из Казахстана.

План статьи:

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

>> Обсудим выбор архитектурного подхода — почему остановились на специализированном агенте вместо универсальных LLM-решений.

>> Детально разберём техническую реализацию — как работают FastText для определения языка и NLLB для перевода и почему потребовалось 12 отдельных LoRA адаптеров.

>> Покажем систему в действии — полный цикл обработки обращения от клиента из Казахстана.

>> Завершим анализом результатов и метрик качества работы системы.

Читать далее

Конфликты в командах: кого вы на самом деле увольняете под ярлыком «токсик»

Thu, 08/28/2025 - 18:42

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

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

Это материал для тех, кто хочет видеть за конфликтами не только эмоции, но и конкретные бизнес-риски.

Читать далее

Адаптация сотрудников в IT: как не потерять время и результат

Thu, 08/28/2025 - 18:38

В IT-компаниях ценность сотрудника измеряется не количеством отработанных часов, а скоростью и качеством выхода на результат. И здесь адаптация играет ключевую роль.

Когда новичок остаётся один на один с процессами, компания теряет:

Читать далее

Кофе — мой type, музыка — мой out: строим NERвный-пайплайн на продуктовых запросах

Thu, 08/28/2025 - 18:37

Привет, Хабр! На связи команда Ad-Hoc аналитики X5 Tech. В этой статье расскажем, как мы научили поиск извлекать важные сущности из запросов пользователей. Полный разбор реализации NER (Named Entity Recognition) для продуктового ритейла, шаг за шагом: как мы размечали данные, считали метрики на уровне токенов и сущностей — и почему для коротких и длинных запросов потребовались разные архитектурные решения.

Читать далее

Пароли не там, где вы их оставили. Как работает DOM Clickjacking

Thu, 08/28/2025 - 18:32

Если честно, менеджеры паролей давно стали для меня чем‑то вроде зубной щётки. Пользуюсь каждый день, но задумываюсь о них только тогда, когда что‑то идёт не так. Обычно всё просто: клик — и нужная форма заполнена. Красота. Но именно эта красота может сыграть злую шутку. Совсем недавно я наткнулся на исследование про DOM Clickjacking, и понял, что даже привычное «автозаполнить» может подставить.

В отличие от старого доброго clickjacking с iframe, здесь никто ничего поверх не накладывает. Всё хитрее: страница сама превращается в ловушку. Менеджер паролей видит поле логина и честно вставляет туда пароль. А пользователь (ну то есть мы с вами) жмёт на кнопку и уверен, что всё нормально. На самом деле клик улетает в невидимый элемент, и данные — вместе с ним. Честно говоря, когда я это увидел на демо, стало немного не по себе.

Есть три главные причины, почему расширения ведутся на такой обман. Во‑первых, некоторые из них слишком доверчиво вставляют пароль сразу, без всякого подтверждения. Во‑вторых, они проверяют только домен верхнего уровня. А если у сайта есть хитрый поддомен — привет, уязвимость. И в‑третьих, далеко не все разработчики заморачиваются с CSP, поэтому любой внедрённый скрипт может вытворять с DOM что угодно.

Проверить страницу самому несложно. Открываете DevTools, смотрите на элементы. Если видите кучу строк с opacity:0 или position:absolute; left:-9999px — повод насторожиться. В Chrome во вкладке Layers это особенно хорошо видно. Для любителей автоматизации есть и короткий скрипт на JavaScript, который подсветит такие штуки.

Читать далее

Алгоритм Вахнина

Thu, 08/28/2025 - 18:32

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

Читать далее

Кружок IT-программирования для детей в Железнодорожном

Thu, 08/28/2025 - 18:15

Мы в Pixel учим детей и подростков писать код, создавать игры и сайты, а также проявлять цифровое творчество в различных направлениях: 3Д-моделировании, графическом дизайне и не только. Сегодня хотим рассказать об очных кружках IT-программирования для детей в Железнодорожном и коротко описать уроки, предлагаемые нами.

Читать далее

Релиз ChameleonLab под Windows и macOS: История о невидимых данных, «зомби»-потоках и секретной игре

Thu, 08/28/2025 - 18:13

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

И, конечно же, мы наконец-то готовы представить версии как для macOS, так и для Windows.

Читать далее

Полное фаталити: как Mortal combat стала выгодной франшизой

Thu, 08/28/2025 - 18:04

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

Читать далее

Единый дистрибутив, JSpecify, Java 25 и новый Spring Debugger: это и многое другое в IntelliJ IDEA 2025.2

Thu, 08/28/2025 - 18:01

IntelliJ IDEA 2025.2 — это релиз, который уже вызывает горячие обсуждения в комьюнити. JetBrains сделали первые шаги в сторону единого дистрибутива, добавили поддержку свежих технологий вроде JSpecify и Java 25, а ещё представили инструмент, который может изменить подход к отладке Spring-приложений.

Читать далее

MMO RPG в Telegram: от наследников MUD до современных экосистем

Thu, 08/28/2025 - 18:00

Обзор рынка MMO RPG-ботов в Telegram: кто и как играет, какие механики работают, а где болевые точки.

В статье разбираем основные проекты, включая Rage Battles, Epsilon War и Ligmar RPG, анализируем игровые механики, социальные функции и проблемы рынка.

Также рассказываем о нашем опыте разработки и представляем перспективный проект Everliving — новую MMO RPG с культивационной тематикой, которая стартует в феврале 2026.

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

Читать далее

Предиктивная аналитика в сфере эксплуатации и ремонта оборудования

Thu, 08/28/2025 - 17:58

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

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

Читать далее

[Перевод] Окружение и свет в Godot: создаём фотореалистичную 3D-графику

Thu, 08/28/2025 - 17:48

При создании пустой 3D-сцены в Godot редактор выставляет стандартные параметры освещения и окружения. Благодаря этому можно приступать к работе над сценой, не подбирая освещение и фон для чёрной, как ночь сцены. Выглядит это примерно, как показано на скриншоте.

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

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

Читать далее

Проектирование Информационных систем. Итоги, краткое изложение курса

Thu, 08/28/2025 - 17:07

Этап «Проектирование информационных систем» (ИС) — один из ключевых в жизненном цикле разработки ИС, так как он определяет, какой будет система, как она будет устроена и как будет реализовывать требования пользователей, какие будут накладываться ограничения и прочее.

Читать далее

Как мы нашли уязвимость в Mailcow, или немного о безопасности в open source

Thu, 08/28/2025 - 17:00

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

Но независимо от выбранного подхода нужно полагаться только на себя и самостоятельно проверять безопасность всех компонентов, которые вы внедряете в инфраструктуру. Даже если речь идет о популярном проекте с тысячами звезд на GitHub…

Привет, Хабр! Меня зовут Наташа Баранова, я специалист по анализу защищенности веб-приложений в Selectel. Сейчас расскажу, как мы нашли критическую уязвимость в одном из open source-проектов с 10 000 звезд.

Читать далее

Как воронежская студия придумала дизайн-фичи, которые принесут миллиарды Цукербергу

Thu, 08/28/2025 - 17:00

Привет, Хабр! Я — UX-дизайнер Surf. Обычно я создаю интерфейсы для серьёзных российских проектов. Но иногда позволяю себе небольшие шабашки от Дикого Запада — получаю проекты от крутых американских ребят. Конечно, всё под строгим NDA, но кое-чем могу поделиться — итак, рассказываю и показываю, что придумали для Цукерберга и его коллег.

Читать далее

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

Thu, 08/28/2025 - 17:00

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

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

Читать далее

Автомасштабирование KEDA. Часть 1

Thu, 08/28/2025 - 16:45

Автомасштабирование узлов кластера Kubernetes и горизонтальное масштабирование подов позволяют быстро расширить ресурсы при пиковых нагрузках. Но сложные приложения могут не нагружать поды или узлы максимально, но требовать дополнительных ресурсов, например, для параллельной обработки нескольких объектов в очереди. Триггером масштабирования кластера может быть не утилизация, а события от внешних систем — например, очереди сообщений Kafka, системы мониторинга Prometheus или от платформы CI/CD.

Всем привет! Меня зовут Илья Смирнов, я архитектор решений в Cloud.ru. Расскажу, как лучше справляться с пиковыми нагрузками, если вы развернули свое приложение в кластере Kubernetes. Вместе запустим такое демо-приложение и посмотрим, как с ним работают классические подходы автомасштабирования — в этой части, а затем попробуем масштабировать кластер по событиям с помощью KEDA (Kubernetes-based Event Driven Autoscaler) — в следующей. Не пропустите!

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

Жмых-жмых и в продакшен: как быстро написать админку

Thu, 08/28/2025 - 16:40

Всем привет, меня зовут Дмитрий Кремнев и я Java-разработчик в команде Jmix. Недавно на конференции смотрел доклад, в котором спикер рассказывал, как его команда справлялась с проблемой быстрого написания админок для внутренних сервисов. Сначала они реализовали дорогое самописное решение для своей команды, затем появилась идея масштабировать его и для остальных команд. Искали готовые альтернативы на рынке, которые удовлетворят все их бизнес-требования, но в итоге остановились на гибридном кастомном решении, основанном на low-code платформе. Проблемы, которые они решали мне показались очень знакомыми, ведь мы в команде тоже с ними сталкивались. В этой статье я хочу показать, как с помощью Jmix решаются типовые задачи при создании админок. Постараюсь быть конкретным, показать плюсы и ограничения.

Сделать красиво

Who's online

There are currently 1 user and 2 guests online.