Habr.com

Ленты новостей Хабр
Все публикации подряд на Хабре
Обновлено: 19 мин. 10 сек. назад

Pydantic V2: Почему dataclasses вам ещё больше нужны

пн, 12/01/2025 - 15:59

На написание статьи меня сподвигла статья «Pydantic V2: Почему dataclasses вам больше не нужны» и меткий комментарий:

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

Давайте попробуем разобраться, почему и датаклассы хороши, и pydantic V2 прекрасен, а вместе они становятся ещё лучше.

Или устроить смешанное единоборство?

Единый вход для ML-стека на примере Keycloak

пн, 12/01/2025 - 15:30

Привет! Я Саша Абакумов, DevOps-инженер в KTS.

Нашей команде часто приходится поднимать инфраструктуру под ML-проекты. Со временем число ML-инженеров и разработчиков на таких проектах росло, и логиниться в каждый по отдельности становилось все больнее. Чтобы упростить коллегам жизнь, мы интегрировали Single Sign-On (SSO) в стек одного из наших проектов, состоящий из JupyterHub, Airflow и MLflow.

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

В качестве инструмента для реализации SSO я использовал OIDC-провайдер Keycloak, наверняка многим хорошо знакомый. Ниже я расскажу о том, как с его помощью настроить SSO для JupyterHub, MLflow и Airflow (все компоненты разворачиваются с помощью Helm-чартов).

Читать далее

Квантовая физика на компьютере. Часть 1. Система с двумя состояниями

пн, 12/01/2025 - 15:27

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

Использовать для расчётов я буду (современный) Фортран, так что можно рассматривать эту статью и как своеобразное введение в программирование на Фортране. Это по-своему красивый язык, паритета с которым в ряде аспектов не имеет ни один другой язык программирования.

Читать далее

«Элементарно, Компот!»: разбираем задания киберучений CyberCamp 2025

пн, 12/01/2025 - 15:22

«Собака BUGскервилей» и «Однажды в Bravera Capital» — вы, наверное, подумали, что это названия свежих детективных романов? На самом деле это заголовки заданий киберучений главного онлайн-кэмпа по практической кибербезопасности CyberCamp 2025.

Задания CyberCamp 2025 стали еще ближе к реальным вызовам. Некоторые из них позволили участникам почувствовать себя в роли современных ИБ-специалистов и прокачать свои профессиональные навыки — от поиска секретов в истории Git до расследования APT-атак. Разбираем самые запутанные и интересные задания — те, что помогли не просто «набрать баллы», а получить практический опыт.

Читать далее

Хардверный QA: как тестируют железо в радиочастотном центре и прямо на конвейере

пн, 12/01/2025 - 15:17

Кто-то тестирует виртуальные кнопки в интерфейсе, а кто-то — железные кнопки умной колонки. Чем отличается такое тестирование и какие у него особенности? YADRO и московское сообщество тестировщиков MoscowQA объединились и нашли экспертов, которые дадут ответы на эти вопросы в рамках QA-митапа 11 декабря (четверг) в Москве. Для участия офлайн или онлайн регистрируйтесь на сайте.

Читать далее

Основы AGSL для android разработчика

пн, 12/01/2025 - 15:15

В последние годы интерфейсы приложений становятся все более интерактивными. Простого эффекта нажатия на кнопку уже недостаточно - пользователи ждут живых анимаций и визуальной глубины. Но создание таких эффектов традиционно требовало от разработчиков значительных усилий.

Представь: тебе нужно «поколдовать» над пикселями прямо в UI - добавить живой градиент, искажение картинки под пальцем, стеклянный блеск карточке и тому подобные эффекты. Раньше для этого приходилось прибегать к «тяжеловесам» таким как OpenGL/Vulkan, либо мучить CPU постобработкой битмапов. AGSL (Android Graphics Shading Language) решает это элегантнее: это язык фрагментных шейдеров, встроенный в сам графический стек Android, так что эффекты применяются прямо на уровне отрисовки интерфейса.

Читать далее

Выгорание сотрудников поддержки: из-за чего возникает и как с ним бороться

пн, 12/01/2025 - 15:05

Текучка специалистов ИТ-поддержки в российских компаниях составляет 30–35% в месяц. Такую статистику показывают исследования 2024 года. Одна из главных причин — стресс. С ним сталкиваются 40–60% сотрудников поддержки. Половина из них готова уволиться из-за постоянного перенапряжения. Несмотря на неутешительные цифры многие организации воспринимают эту проблему как данность и не задумываются, какой ущерб она наносит бизнесу. В статье разбираемся, из-за чего возникают выгорание, текучка и как ESM-система помогает с ними справиться.

Читать далее

Baseline: ноябрь 2025

пн, 12/01/2025 - 14:54

# Baseline: ноябрь 2025

Обзор на браузерные API, которые стали Widely available в ноябре 2025. Раз в месяц я буду вам напоминать, что вы уже можете использовать в проде.

Каждый месяц выходят новые CSS-свойства, HTML-атрибуты, JavaScript-методы и WebAPI, но применять в проде мы их конечно же не будем.

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

Узнать, что можно применять в проде

Честный взгляд на разработку бизнес-приложений на Low-code платформе SimpleOne

пн, 12/01/2025 - 14:42

Знаете, что меня бесит в большинстве обзоров платформ? Либо сплошной маркетинговый восторг в стиле «это лучшее решение на рынке»‎, либо тотальный хейт «‎всё плохо, ничего не работает»‎. А правда обычно где-то посередине. Я 10 лет делаю ITSM/ESM-проекты, внедрял разные системы, и сегодня расскажу про SimpleOne честно — без рекламной мишуры, но и без необоснованного негатива. Про то, как на этой платформе реально создавать решения: что работает отлично, где приходится костылить. Если вам нужен честный технический взгляд от практика, а не продажника — welcome.

Читать далее

Записки оптимизатора 1С (ч.14.3). Отличия в обслуживании статистик в MS SQL и в PostgreSQL

пн, 12/01/2025 - 14:40

Переходим к заключительной третьей части регламентного обслуживания баз данных. И сегодня акцент сделаем на обслуживании статистик в СУБД PostgreSQL. Актуальные статистики в PG важны ничуть не менее, чем в MS SQL, но разница в настройках и алгоритмах есть, соответственно, подходы будут чуть различаться.

Читать далее

TEAMLY AI: как внедрить умный поиск по корпоративной базе знаний без утечек и галлюцинаций

пн, 12/01/2025 - 14:35

Компаниям больше не нужен «волшебный» AI, который угадывает ответы — им нужен ассистент, который опирается на реальные документы, права доступа и живой опыт команды.

Читать далее

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

пн, 12/01/2025 - 14:18

Не понимаете, что такое SCA?

Устали триажить ложные срабатывания опенсорсных инструментов SCA?

Хотите повысить безопасность ПО и любите бесплатные сервисы?

Тогда Вам сюда...

Функциональный и процессный подход к управлению – это альтернативы или тождества?

пн, 12/01/2025 - 14:15

В связи с избыточным количеством трактовок и определений, возникает огромное количество дискуссий по теме публикаций, и в этом нет ничего плохого – «в спорах рождается истина»! Но, и это уже совсем не хорошо, как следствие этой множественности, появляются субпродукты в виде вариантов моделей деятельности организаций и IT-решений, слишком большое количество которых, к сожалению, нельзя назвать удачными! Ситуации «Разработали и внедрили, а результаты работы организации лучше не стали» носят массовый характер. Такие внедрения решений класса ERP/Управление предприятием/холдингом получили название «автоматизации хаоса».

Я, как участник подобных дискуссий, получаю справедливые упреки в свой адрес, что мои комментарии к публикациям не понятны, оппоненты просят пояснений, а пояснения достаточно многословны, чтобы корректно их донести через комментарии к публикации (а их еще и повторять надо к каждой публикации). Поэтому я решил разместить свои разъяснения в виде публикации в которой детально раскрыть непопулярную/непонятную точку зрения, которую я отстаиваю «Функциональный и процессный подход к управлению — это две АЛЬТЕРНАТИВНЫЕ модели управления!» (в противовес майнстриму «Это все тождества и синоним»ы с несущественными «косметическими» различиями»).

Приложу усилия, чтобы объяснения моей т.з. было понятным и аргументированным (чтобы можно было вести предметную дискуссию, оппонируя к тем или иным обнаруженным в описании несоответствиям аксиоматики и дефектам логики).

Итак, аксиоматика и логика, на которую опирается моя позиция:

Читать далее

Proxyman + HAR = mock-данные для iOS-тестов

пн, 12/01/2025 - 14:15

В Naumen мы используем связку Proxyman + HAR, чтобы готовить mock-данные для интеграционных тестов iOS-приложений. Такой подход выручает, когда реальный сервер недоступен или не умеет переводить себя в нужное состояние для проверки: мы перехватываем сетевой трафик приложения, сохраняем его и превращаем в готовые моки.

О том, как именно мы это делаем, рассказывает Ринат, iOS-разработчик Naumen. В его практике Proxyman помогает быстро собирать сетевые сценарии, а экспорт в HAR и консольная утилита позволяют автоматически преобразовывать их в моки для тестов. Это экономит часы ручной работы и делает интеграционные тесты стабильными и предсказуемыми.

Читать далее

Как я выбираю LLM (large language model) для своих задач?

пн, 12/01/2025 - 14:09

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

Читать далее

«Конечно, вот ответ на ваш вопрос. Но сначала — реклама»

пн, 12/01/2025 - 14:05

OpenAI начала внутреннее тестирование рекламы внутри ChatGPT. Это шаг, который может перекроить всю современную веб-экономику.

Кажется, эпоха цифрового альтруизма подходит к концу. Утечка подтверждает, что OpenAI переходит к внедрению рекламы внутрь ChatGPT. До этого момента ChatGPT был отделен от маркетинга и рекламных баннеров. В отличие от Google поиска, где реклама напрямую влияет на то, что вам выдает поисковик, ChatGPT оставался «чистым».

В коде бета-версии приложения для Android (сборка 1.2025.329) появились упоминания AdTarget ApiSearchAd BazaarContentWrapper SearchAd и прочие.

От будущего ждали полетов к звездам или восстания машин. Боялись, что ИИ обретет сознание и решит уничтожить человечество. А реальность оказалась куда прозаичнее. Искусственный интеллект не хочет нас убивать. Он хочет нам продавать. Мы хотели бога из машины, а получим продавца-консультанта.

Читать далее

О чем стоит подумать на берегу, прежде чем отправить ваш корабль в новую интеграцию

пн, 12/01/2025 - 14:04

Здравствуйте! Я Дина Лакеева, в разработке я с 2012 года. Сейчас я являюсь лидером системного анализа продуктового стрима в команде разработки личного кабинета МегаФона.  Практически на всех своих проектах я сталкивалась с проектированием интеграций, то есть со взаимодействием различных систем или их частей. И именно эта часть проекта меня больше всего увлекала. Интеграции – это то, в чем мне всегда хотелось развиваться, и я вижу в этом большой интерес и по сей день.

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

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

Так вот, представим, что наша система – это корабль... О чем же стоит подумать на берегу?

Читать далее

Gradle configuration cache на примерах. Часть 2: практика

пн, 12/01/2025 - 14:01

В первой части было показано общее поведение configuration cache на простых примерах. Теперь перейдем в плоскость практики: рассмотрим с какими проблемами сталкиваются разработчики плагинов и как их можно решать.

Читать далее

Замена GPU в ноутбуках

пн, 12/01/2025 - 14:01

В перспективе нескольких лет у нас только два необходимых апгрейда в ноутбуке: увеличить RAM и заменить GPU. Остальное по желанию. Видеокарта становится проблемой, если мы хотим играть в современные игры. Представьте, как здорово было бы проапгрейдить GPU в ноутбуке! Просто заменить одну на другую, как в ПК.

Почти два года назад вышел Framework 16, очередная версия модульного ноутбука [Framework]. Посмотрим, как разработчики реализовали быструю замену GPU через отсек расширения, и станет ли такой отсек стандартом для всех ноутбуков.

Читать далее

Gradle configuration cache на примерах. Часть 1: поведение

пн, 12/01/2025 - 14:00

Configuration cache должен был стать обязательным в Gradle 9, но требования, в итоге, смягчили. В любом случае, рано или поздно он станет обязательным и авторам плагинов придется его поддерживать.

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

Читать далее

Сейчас на сайте

Сейчас на сайте 0 пользователей и 2 гостя.