Habr.com

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

Иволга это молитва. Доказано с помощью Python

9 hours 55 min ago

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

Читать далее

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

10 hours 30 sec ago

Привет! Меня зовут Артем Герасимов, я владелец продукта SimpleOne SDLC. За последние два года наша команда внедрила использование ИИ практически на всех этапах разработки — от прототипирования до код-ревью.

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

Читать далее

Что такое длина волны. И главное. На что она влияет? Часть 2

10 hours 19 min ago

В первой части этой статьи мы с вами разобрали ОНЧ, НЧ, СЧ, КЧ и ВЧ диапазоны. А также укрепились в мысли, что длина волны без привязки к среде распространения на практике не имеет смысла. Во второй части мы закончим наш обзор, погружением в миди- и микромир радиосвязи.

Читать далее

Gemini Embedding 2 + мультимодальный RAG: эмбеддим видео и картинки — разбор и туториал

10 hours 20 min ago

10 марта Google выкатил Gemini Embedding 2 - embedding-модель, которая умеет превращать в векторы не только текст, но и картинки, видео, аудио и PDF. Причем все это ложится в одно векторное пространство. Раньше если вы хотели искать по видеобиблиотеке через RAG, приходилось городить огород: транскрибировать аудиодорожку, описывать кадры через Vision LLM, склеивать в текст, и только потом эмбеддить. Каждый шаг - потеря информации. Теперь можно скормить модели MP4 напрямую, и текстовый запрос «как настроить авторизацию» найдёт и статью из базы знаний, и фрагмент видеоинструкции.

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

В этой статье разберем что нового в Gemini Embedding 2 и построим полноценный мультимодальный RAG с нуля - Python, Supabase, Gemini API.

P.S. С кодом.

Читать далее

Куда пропали наши лиды в Telegram Ads? Реверс-инжиниринг Mini Apps, слепая зона на €8300 и проброс сессий через Redis

10 hours 24 min ago

Заливаете бюджет в Telegram Ads, а веб-аналитика показывает сплошной direct?
Проблема не в трекере и не в криво настроенной кампании.
Клиент мессенджера физически отрезает UTM-метки на этапе инициализации Mini App.

В этой статье мы проводим реверс-инжиниринг контейнера WebView, разбираем смерть заголовка HTTP Referer на примере ecom-кейса со слепой зоной на €8300 и показываем, как собрать независимую архитектуру проброса сессий на базе Redis и CloudStorage Bot API 9.x.

Смотреть логи и решение

Что такое dataLayer на самом деле: от аналитиков — разработчикам

10 hours 24 min ago

Если спросить разработчика, что такое dataLayer, чаще всего ответ будет примерно такой: «Ну это что-то из GTM». Я понимаю, что вот вы, конкретно вы, уважаемый читатель, так не отвечаете, и никто так не отвечает, но у меня вот такая статистика. А если спросить аналитика, что нужно для настройки событий, ответ будет: «Нужно просто пушнуть это в dataLayer» Здесь начинается легкое раздражение с обеих сторон. Разработчику кажется, что это часть Google Tag Manager, которую он не обязан понимать. Аналитику кажется, что это очевидная вещь уровня «объявить переменную». В итоге dataLayer превращается в некий черный ящик, за который отвечает «кто-то другой».

Спойлер: никто.

Главная мысль этой статьи простая: dataLayer — это просто глобальная переменная в window. Все остальное — это уже работа разработчика по задачам аналитика и последующий тюнинг аналитиком в тег-менеджере.

Читать далее

Деревенские школьники умнее городских?

10 hours 24 min ago

В девяностых мой реферат начинался с библиотеки и пары бутербродов в сумке. Я часами сидела в читалке и переписывала ключевые моменты от руки. Пока писала, всё само в голове откладывалось. Сейчас ИИ находит ответы за секунды, но в памяти у детей часто ничего не остается.

Недавно я заехала в сельскую школу к племяннику и увидела там другую картину. Классы по десять человек, телефоны на уроках сдают, а у доски нужно объяснять ход мысли своими словами. Там используют GPT, чтобы понять сложные темы, но просто списать не получится. Кажется, в деревне сохранили ту систему обучения через живой разговор, которую мы в городах потеряли.

Читать далее

Война доменов: как TikTok, OnlyFans и гемблинг отбирают внимание у игр

10 hours 34 min ago

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

Но оказалось, что все меняется.

Мне в руки попалась огромная презентация Мэттью Болла, медиааналитика и евангелиста метавселенной (а в прошлом Мэт был главой стратегии Amazon Studios). В презентации он предлагает смотреть на рынок иначе: игры теряют долю внимания не только внутри собственной индустрии, но и в более широкой борьбе за время, привычку и деньги пользователя. Геймдеву, кроме релизов игр, приходится конкурировать с соцсетями, порнографией, гемблингом, iGaming и многим другим, то есть с иными цифровыми доменами, которые тоже научились отлично монетизировать вовлечение.

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

Читать далее

Переиспользуемые валидаторы в FluentValidation: когда надоело копипастить

10 hours 44 min ago

В прошлых частях мы научились:
- делать кастомные сообщения (и поняли, что там есть подводные камни)
- использовать Custom и Must для сложной логики

Теперь новый челлендж. Проект растёт, валидаторов становится много. И вы замечаете, что одни и те же правила переезжают из класса в класс. Давайте-ка вынесем их.

Читать далее

Вход в QA в 2026 году: как действовать, когда рынок против вас

10 hours 49 min ago

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

Читать далее

ClickHouse не тормозит, но не умеет джойнить. Убиваем миф

10 hours 51 min ago

Есть один миф про ClickHouse - он плохо джойнит. Подавляющее большинство не знает, с чем это утверждение связано, и просто верят на слово. А дальше срабатывает эффект сарафанного радио. В итоге в IT-сообществе есть твердое убеждение, что ClickHouse плохо джойнит. Но для меня апогеем стала статья от школы обучения программированию, в которой написано, что ClickHouse вообще не умеет джойнить:

Читать далее

Треугольный пиксель: почему никто не собирает мозаики из пирамидок? (а зря)

10 hours 52 min ago

Видели мозаики из кубиков Рубика? В сети достаточно контента с кубическими картинами, портретами из десятков, сотен, и даже тысяч кубиков. Но никто не собирает мозаики из пирамидок. Пирамидка (она же – пираминкс) – это перестановочный пазл, похожий на кубик Рубика. Ее цветные элементы – те же пиксели, только треугольные, и цветов не шесть, а четыре. Казалось бы, бери и складывай. Однако мозаик из пирамидок я не встречал.

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

Крутим пирамиду…

Создание библиотеки на C++. Часть III

10 hours 55 min ago

Привет! Меня зовут Николай, я C++-разработчик в SimbirSoft. Это третья часть цикла статей о проектировании библиотек на примере решения геометрических задач.

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

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

Также рассмотрим практические примеры: адаптацию стандартных контейнеров, расширение алгоритмов через частичную специализацию и добавление альтернативных реализаций. В завершение покажем, как возможности стандарта C++20 позволяют упростить архитектуру за счёт использования концептов и отказаться от части вспомогательных сущностей.

Для комфортного чтения потребуется уверенное понимание шаблонов, частичной специализации и базовых принципов обобщённого программирования в C++. Материал ориентирован на разработчиков уровня middle и выше, которые интересуются проектированием расширяемых библиотек и архитектурой современных C++-систем.

Читать далее

Я заставил шахматные фигуры сражаться по правилам Героев меча и магии. Кажется, получилось весело

11 hours 1 min ago

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

Но однажды я посмотрел на шахматную доску и осознал, что она вместе со своими фигурами выглядит, в сущности, так же, как и юниты в играх серии HoMM. После недолгих размышлений были придуманы простенькие правила, превращающие пешек в аналог копейщиков/троглодитов, а короля — в аналог гидры/чудища. Мы отыграли с приятелем несколько партий, было весело, и захотелось поделиться правилами с Интернетом. Правда без демки это бы едва ли кого‑то заинтересовало, а программировать нормально я так и не научился, поэтому проект ушёл в долгий ящик.

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

Читать далее

Внедряем Yandex MapKit SDK в SwiftUI приложение. Пишем Demo проект

11 hours 9 min ago

Всем привет! Меня зовут Роман, я iOS разработчик. Сегодня я поделюсь с вами пошаговым планом создания демо приложения на SwiftUI с использованием Yandex MapKit SDK. Поехали!

Читать далее

[Перевод] 14 аварий на 800 000 миль — и это с водителем за рулём. Почему Tesla избегает тестов в Калифорнии

11 hours 18 min ago

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

Уже довольно давно Маск повторяет, что роботакси Tesla вот-вот появятся в Калифорнии - как только регуляторы дадут разрешение. В октябре 2025-го он заявил, что роботакси будут доступны «через несколько месяцев» и что компания «ждёт одобрения регуляторов в Калифорнии». Однако Reuters недавно выяснил, что Tesla зафиксировала ровно ноль миль автономного тестового вождения на дорогах Калифорнии в 2025 году. Более того - это уже шестой год подряд, когда Tesla не проезжает ни одной автономной тестовой мили в штате, несмотря на имеющееся разрешение.

Почему это важно? Потому что это указывает на прямо противоположную картину: не Tesla ждёт регуляторов, а регуляторы ждут Tesla.

Читать далее

Несколько мобильных приложений в одном Appium‑проекте: как это можно организовать

11 hours 23 min ago

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

Читать далее

Docker/Podman-клиент и Remote-клиент для GigaIDE

11 hours 24 min ago

Продолжаем наши обзоры плагинов к GIgaIDE. Первая статья здесь, последняя доступна по этой ссылке. На этот раз в нашем обзоре — плагины Docker и Remote, доступные в версии GigaIDE PRO и обновляемые с маркетплейса.

Начнём с рассказа про плагин Docker.

Читать далее

Аркейн: как музыка стала частью повествования (пример работы скрипт-доктора)

11 hours 25 min ago

Повествование, которое раскрывает нечто глубинное. Мы не просто смотрим анимационный сериал по игре — нет. Мы становимся свидетелями истории, которая не рассказывается, а поется. Где музыка становится незримым диалогом со зрителем. Диалогом, который говорит громче любых слов.

Читать далее

Нефть колбасит из-за иранского пролива, а также чебурнетизация интернета в Москве

12 hours 20 min ago

Самые интересные новости финансов и технологий в России и мире за неделю: Palantir представил концепцию Warfare as a Service, москвичам отрубили мобильный интернет, Сбер и Яндекс просят о господдержке для ИИ, Дуров обеднел в несколько раз, релиз GPT-5.4, а также окончательный деанон Бэнкси.

Читать далее

Who's online

There are currently 1 user and 1 guest online.