Обновить

Все потоки

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

Java Digest #35

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

Всем привет! 👋👋👋👋👋

Мы — Java-разработчики Т-Банка: Андрей, Арсений, Роман, Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом.

В этом выпуске рассказываем, когда ждать релиз Java 27 и как Oracle планирует регулировать использование генеративного ИИ при написании кода. Посмотрим детальное интервью о Spring Framework 7 и Spring Boot 4 с самой командой создателей Spring. Почитаем, как безопасно работать с нативной памятью в многопоточной среде с помощью VarHandle. А еще изучим любопытный постмортем, посвященный расследованию раздувания памяти в контейнерах после перехода на JDK 17. Приятного чтения!

Читать 35 выпуск

Линеаризованная расходная характеристика паровой турбины

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

Моделирование паровых турбин — повседневная задача сотен людей в нашей стране. Вместо слова модель принято говорить расходная характеристика. Расходные характеристики паровых турбин используют при решении таких задач, как вычисление удельного расхода условного топлива на электроэнергию и тепло, производимые ТЭЦ; оптимизация работы ТЭЦ; планирование и ведение режимов ТЭЦ.

Мною разработана новая расходная характеристика паровой турбинылинеаризованная расходная характеристика паровой турбины. Разработанная расходная характеристика удобна и эффективна в решении указанных задач. Однако на текущий момент она описана лишь в двух моих научных работах:

Читать

От кликов в личном кабинете до terraform apply: что меняется в работе с инфраструктурой

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

Привет, Хабр! На связи Алексей Тюняев, директор по облачным продуктам Рег.облака.

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

Читать далее

Удобный вместо сильного: как компании незаметно меняют компетентность на лояльность

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

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

Читать далее

Троянский форк: от шалости до крита

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

Форк репозитория — операция настолько привычная, что на нее редко смотрят с подозрением. Но что, если через обычный форк можно запустить произвольный код на CI/CD-воркере чужой приватной компании? 

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

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

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

Обнаруженные нами уязвимости были оперативно исправлены разработчиками компании «РеСолют» и зарегистрированы в БДУ ФСТЭК: BDU:2025-12462, BDU:2025-12463, BDU:2025-12464.

Читать далее

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

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

LLM пока не может хорошо обращаться с Е2Е автотестами потому что для этого нужно провести целый комплекс мероприятий. Сложность возникает уже на этапе запуска такого автотеста. В отличии от юнит автотестов, Е2Е автотесты почти всегда PageObject и целый проект со своей архитектурой на базе Selenium Appium Espresso и тд.

Читать далее

FSRS для Obsidian: помнить всё

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

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

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

Читать далее

Миграция с Greenplum. Эпизод I: Атака клонов и спасение на звёздных камнях

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

В мае 2024 года Broadcom заархивировал публичный репозиторий Greenplum: последний коммит остался на месте, дальнейшая разработка ушла в закрытый репозиторий, enterprise-сборка теперь доступна только по подписке. Greenplum как живой OSS-проект остановился — но сам код, выпускавшийся с октября 2015-го, остался под Apache 2.0. Именно на этой кодовой базе стартанули остальные форки.

Те, кто строил аналитику на Greenplum, оказались перед развилкой. Сообщество разделилось: Apache Cloudberry (incubating)Greengage DB от Arenadata, WarehousePG от EDB. Каждый форк продолжает линию, но в собственной траектории. У компании с боевым кластером появляется конкретный вопрос: переехать/остаться в одном из этих форков или мигрировать на принципиально другую платформу и архитектурную парадигму.

Эта статья (сага из трёх эпизодов) будет полезна, если у вас уже есть Greenplum-кластер, вы понимаете его DDL/ETL/backup-процессы и хотите оценить, насколько болезненным будет переход на StarRocks. 

Читать далее

Имитация 3D-персонажей в 2D-движке

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

Я всегда был фанатом шутеров с видом сверху. Hotline Miami и по сей день остаётся моей любимой инди-игрой, а недавно я решил проиграть в её духовную наследницу — OTXO.

Он всегда был моим любимым жанром. Моя первая «серьёзная» игра, Alien Killer (написанная на Flash, поэтому сегодня в неё практически не поиграешь), была шутером с видом сверху, вдохновлённым старой игрой Net YarozePsychon.

В этой статье я расскажу, как разработал похожий на трёхмерный top down shooter без 3D-движка.

Читать далее

ИИ. ЦПУ против ГПУ — Данные и Выводы

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

Для начала — просто гляньте на те фото и видео, которые я сгенерировал, вообще не прикасаясь к мышке или планшету. Конечно, до и после было проделано немало работы, но сам процесс создания цифрового арта не требовал ручного рисования. Так что скажем спасибо моим CPU и GPU — они реально тащили 💪

По ходу этого пути возникли интересные вопросы: когда вообще есть смысл использовать СPU, и как модели разного размера ведут себя при параллельных нагрузках? В целом, результаты получились довольно любопытными.

Жми чтоб узнать подробности!

Flappy Bird: код веб-клона под микроскопом

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

В январе 2014 года мир сошёл с ума из-за игры, где нужно просто тыкать в экран. Flappy Bird приносила создателю $50 000 в день, пока он не удалил её из-за давления и бессонницы. Игру начали продавать на чёрном рынке вместе со смартфонами.

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

Читать далее

Как я поднялась на три пятитысячника за месяц и как выбрать первую вершину

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

Всем привет! Меня зовут Катерина Черных. Я ведущий бизнес-аналитик в X5, но в этой статье не будет про IT. Так получилось, что за август я взошла сразу на три вершины: пик Юхина (5130 м), Арарат (5137 м) и Эльбрус (5642 м). И только после третьей горы нашла для себя ответ на вопрос «зачем я хожу в горы?». Если вы тоже выбираете свою первую серьёзную гору, мой опыт может оказаться полезным.

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

Читать далее

Machine Unlearning. Как измерить и достичь «забывания»?

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

Всем привет! Меня зовут Вадим, я — Data Scientist в компании Raft. Эта статья написана по мотивам моего выступления на конференции AiConf 2025. В ней мы разберём, какими метриками измеряется машинное разучивание и какие основные методы позволяют добиться контролируемого «забывания» без полного переобучения модели. Погрузимся в методы, метрики и бенчмарки, связанные с машинным разучиванием.

Недостаточно просто удалить конкретные примеры: модель может по-прежнему хранить их в параметрах и воспроизводить при другом контексте или атаке. И даже если забывание произошло, как убедиться, что при этом не разрушилась вся остальная функциональность модели?

Читать далее

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

Как Monium приручил GC: разбираемся со сборщиками мусора в observability‑платформе

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

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

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

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

Читать далее

В фокусе RVD: трендовые уязвимости апреля

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

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

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

Читать далее

Чебурнет близко

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

На днях глава Совета по правам человека (СПЧ) Валерий Фадеев заявил, что по его мнению, люди, использующие VPN, ищут не другую точку зрения, а слушают, «что враг говорит».

То есть человек, чья прямая обязанность - защищать наши базовые права, чуть ли не объявляет нас диссидентами. И хочется спросить у него: а как же Конституция РФ? Статья 23 гарантирует нам тайну переписки, а статья 29 - право свободно искать, получать и передавать информацию. Так почему же нас лишают этой возможности? Вопрос риторический.

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

Читать далее

О бедном луддите замолвите слово…

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

или "Страшная сказка: продолжение"

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

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

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

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

Читать далее

Коэффициент токсичности задачи: как одна метрика снизила текучку в команде до 10%

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

Из моего отдела ушел ключевой специалист. Унес три года контекста. Я начал разбираться и обнаружил, что инструментов для измерения человеческой стоимости задачи не существует. Пришлось делать свой. Через полгода текучесть в команде упала до 10%.

Читать далее

Как настроить AI-агента под проект: контекст, rules, skills, MCP — конспект двух вебинаров

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

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

Где живёт агент: три класса инструментов

Читать далее

Обратное распространение ошибки: от интуиции до кода

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

Многие умеют вызывать loss.backward() в PyTorch, но не всегда понимают, что именно происходит под капотом. Как сеть вычисляет, какой из миллионов весов нужно изменить? В этой статье мы развеем магию обратного распространения ошибки (backprop). Разберем алгоритм на простых аналогиях с заводским конвейером, вспомним школьное правило дифференцирования и, чтобы закрепить понимание, напишем свой микро-фреймворк для автоматического вычисления градиентов на чистом Python с нуля.

Читать далее