Habr.com

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

Обменники в RabbitMQ, которые не продают валюту

5 hours 28 min ago

Очень часто в проектах необходимо использовать передачу сообщений между компонентами распределенной системы по определенным правилам. И перед разработчиком встает вопрос — какой инструмент наиболее эффективно можно использовать для этого? И сегодня мы рассмотрим брокер сообщений, который позволяет это делать «прямо из коробки» и это будет RabbitMQ.

RabbitMQ — это популярный брокер сообщений, который реализует стандарт AMQP и который позволяет эффективно управлять коммуникацией между сервисами через очереди. И в этой статье мы разберем основные типы обменников (exchange): Direct, Topic, Headers и Fanout, которые напрямую участвуют в процессе маршрутизации, а также приведем примеры их настройки в Spring Boot.

Читать далее

Пример создания патча для PostgreSQL

5 hours 45 min ago

На апрельской конференции PG BootCamp 2025 в Екатеринбурге был представлен доклад Артёма Бугаенко о том, как сделать статистику Postgres более детализированной, не повышая DST. Однако если посмотреть на доклад под немного другим углом, то ему отлично подошло бы название «Пример создания патча для PostgreSQL». Примеры правки логики планировщика есть во многих патчах, но объяснение того, куда и какой код нужно вставлять в многочисленные файлы исходного кода PostgreSQL, встречается нечасто. Можно встретить примеры описания того, как добавить параметры конфигурации, а вот пример того, как добавить опцию в команду SQL, найти подчас затруднительно. Поэтому если вам требуется добавить в какую-либо команду свою опцию, то можно использовать статью, доклад и предложенный докладчиком патч как руководство.

Читать далее

В два раза лучше ChatGPT o3. Представлен Grok 4

5 hours 54 min ago

Компания xAI представила свои новые ИИ-модели - Grok 4 и Grok 4 Heavy, в котором несколько агентов работают над проблемой параллельно. По утверждениям xAI, это позволило добиться значительного роста в производительности.

Читать далее

Веб-агенты, которые действительно понимают веб-сайты: как слой восприятия Notte решает проблему DOM

6 hours 4 sec ago

Фундаментальная проблема веб-агентов заключается не в автоматизации — а в восприятии. Как позволить LLM навигировать и действовать на веб-сайтах, погребённых в слоях HTML?

Читать далее

Struct IEnumerator

6 hours 22 min ago

Как-то было свободных полчаса перед встречей. Ни туда, ни сюда. Дай, думаю, сниму трейс с приложения. Вдруг что-то интересное найдётся.

А в качестве бонуса: использование var может привести к багам? Узнаем в самом конце ;)

Читать далее

[Перевод] «Денежный автомат» Джейн Стрит внезапно останавливается

6 hours 27 min ago

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

Читать далее

[Перевод] Permutation neuron или как решить MNIST на 77% с помощью 3 нейронов

7 hours 3 min ago

Это одна из попыток решить mnist за минимальное количество операций умножения.

В качестве примера рассмотрим задачу MNIST, где permutation neuron с тремя классических нейронами и есть вся наша сеть.

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

Для классификации 10 цифр датасета MNIST требуется не менее 10 различных состояний нейрона. Поскольку число перестановок определяется факториалом количества нейронов, минимально необходимо 4 нейрона (4! = 24 перестановки), чтобы покрыть 10 классов. Однако, вычитая значение одного нейрона из остальных (нормализация), можно ограничиться вычислением трёх нейронов, задавая четвёртый нейрон равным нулю, без нарушения порядка перестановок. Это позволяет сократить вычислительные затраты, сохраняя 24 уникальных состояния для классификации.

Для задачи классификации 10 цифр датасета MNIST permutation neuron работает следующим образом: три нейрона с линейной функцией активации вычисляют значения на основе входных данных изображения, а четвёртый нейрон фиксируется равным нулю. Эти четыре значения упорядочиваются, формируя одну из 24 возможных перестановок (4!), например, ACZB. С помощью кода Лемера каждая перестановка преобразуется в уникальное число от 0 до 23, которое затем отображается на один из 10 классов MNIST, определяя, например, цифру от 0 до 9.

Читать далее

Типографика в дизайне: как текст может сделать ваш сайт эффективным

7 hours 48 min ago

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

В данной статье разберем:

- Важность подбора правильного шрифта

- Как выбрать шрифты?

- Где искать шрифты?

- Размер и расстояние – основа удобства

- Контраст и цвет текста

- Ошибки, которые портят типографику и как их избежать

Читать далее

Flutter + Cursor: настройка background agent

12 hours 26 min ago

Если вы предпочитаете использовать Jules (Google AI Agent ), пожалуйста посмотрите эту статью.

Краткая история — недавно Cursor добавил возможность запускать AI Агентов с помощью которых можно работать с задачами на фоне, точно в таком же окружении, как на своем компьютере.

Поскольку агент запускается в ubuntu контейнере, то лучше всего его настроить заранее.

Начнем!

Читать далее

Выбираем базу данных правильно! Чек-лист на все случаи жизни

12 hours 51 min ago

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

Читать далее

ElBear ACE-Uno — первый запуск в Mac OS

15 hours 23 min ago

В статье рассмотрим, как начать работу с ElBear ACE-UNO в Mac OS. Постарался для вас сделать выжимку, чтобы можно было скорее приступить к работе с платой и потратить на это на пару-тройку суток меньше)

P.S. Для пользователей Windows статья также может быть полезной.

Читать далее

Анализ уязвимости CVE-2025-27736 в Power Dependency Coordinator

Wed, 07/09/2025 - 23:41

Данная статья посвящена багу в Power Dependency Coordinator (CVE-2025-27736), запатченному Microsoft в апреле этого года.

В описании CVE сказано, что баг связан с раскрытием информации (адресов ядра).

Exposure of sensitive information to an unauthorized actor in Windows Power Dependency Coordinator allows an authorized attacker to disclose information locally.

https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-27736

Exploiting this vulnerability could allow the disclosure of certain memory address within kernel space. Knowing the exact location of kernel memory could be potentially leveraged by an attacker for other malicious activities.

В контексте изменений Windows 11 24H2 с ограничением NtQuerySystemInformation для определения адресов объектов, баги такого типа становятся еще более актуальны, поэтому мне стало интересно посмотреть пример такой уязвимости.

Из инструментов потребуются IDA Pro, BinDiff, WinDbg, для тестирования - Windows 11 или Windows 10 x64 с обновления до апреля 2025 (для тестирования работоспособности PoC) и актуальными обновлениями (для тестирования PoC после обновления).

Читать далее

[Перевод] Война за таланты в сфере ИИ

Wed, 07/09/2025 - 22:07

Покойного Стива Джобса нельзя назвать «man of letters»(литератор), но он определенно любил писать резкие электронные письма.

Читать далее

Готовимся к собесу: positional encodings в 2025 году

Wed, 07/09/2025 - 21:44

Если вы до сих пор считаете, что positional encoding в трансформерах — это знаменитые sin/cos из статьи 2017 года, то боюсь, что собеседование для вас закончится автоматическим реджектом.

Позиционное кодирование заметно эволюционировало с момента появления оригинальной статьи о трансформерах. В современных LLM и моделях компьютерного зрения, таких как FLUX, уже давно не используется классическое sin/cos-кодирование.

Читать далее

Hibernate. Оптимизму здесь (не) место. Блокировки в БД

Wed, 07/09/2025 - 21:42

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

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

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

Читать далее

Как строить карьеру в UX-дизайне без суеты и хаоса: книга Артема Дащинского

Wed, 07/09/2025 - 21:20

В нашем предыдущем обзоре переводной книги по UX мы обсуждали фундаментальные принципы и законы проектирования, которые помогают создать удобные и интуитивно понятные интерфейсы. Но дизайн — это не только теория и принципы: за каждой успешной карьерой стоят навыки, опыт и правильно выбранный путь развития. Именно этой теме посвящается новая книга Артема Дащинского «Как стать успешным UX-дизайнером: практический план развития карьеры». Рецензия продолжает тему обучения и карьеры в UX, дополняя предыдущий материал практическими рекомендациями и стратегиями для профессионального роста в этой динамичной области.

Читать далее

Чем различаются ОС IBM мейнфрейм и ОС х86

Wed, 07/09/2025 - 20:27

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

Многие популярные ОС выполняются на серверах (речь в статье пойдет исключительно про серверные ОС) х86 (Intel, AMD). Это Линукс разных мастей и названий, и Windows. В силу уклона российского образования в сторону инфраструктур на основе х86 у многих айтишников есть твердое убеждение, что то, как написаны известные ОС, это единственный вариант, как ОС и могут быть написаны. Попытки писать свою, российскую, ОС сводятся к написанию очередного Линукса.

Но есть и другие, современные ОС, выполняющиеся не на х86 платформе. Это одна из ОС IBM мейнфрейм (МФ), называемая z/OS. IBM МФ — тоже весьма современная техническая платформа. В апреле этого года IBM анонсировали новое поколение z17, т. е. семнадцатое поколение, начавшее свою историю в далеком 1964 году.

Читать далее

goYSDA: Как мы в ШАДе переизобрели и сделали непрерывную игру Го, выкинув из него сетку

Wed, 07/09/2025 - 20:27

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

Все мы знаем Го — глубокую, медитативную игру на доске 19x19. Камни, пересечения, территории... А что, если выкинуть саму сетку и разрешить ставить камни куда угодно в пределах доски?

Мы в команде YSDA (Yandex School of Data Analysis или Школа Анализа Данных, ШАД) задались этим вопросом и решили проверить. Получилось азартно, хаотично и, что самое главное для нас как разработчиков, — чертовски интересно с точки зрения алгоритмов.

В этой статье я расскажу, как мы реализовали эту идею на Python и Pygame, с какими геометрическими головоломками столкнулись и как Диаграмма Вороного помогает считать очки в реальном времени, превращая статичную доску в живое поле битвы.

А в конце встретим неожиданный твист! Узнаем, что такое такое Суго.

Погрузиться в игру →

Мониторим ONU/ONT с помощью Python/Flask и snmpwalk

Wed, 07/09/2025 - 20:07

Всем привет. Я сетевой инженер в интернет провайдере. В данном посте я расскажу, как я сделал для техподдержки инструмент, для мониторинга абонентских ONU на Python. И избавился от кучи ручной работы.

Читать далее

Who's online

There are currently 0 users and 5 guests online.