Feed aggregator

Моя любимая функция в ClickHouse, или оптимизируем вообще всё с помощью cityHash64()

Habr.com - Fri, 03/20/2026 - 14:15

Более 5 лет я работаю ClickHouse DBA и помогаю командам разработки и аналитики эффективно использовать ClickHouse. Неизменным помощником в этом мне служит хеш-функция cityHash64(). В данной статье мы поговорим в основном про оптимизацию SQL запросов с помощью хеш-функций. Вероятно, рассматриваемые приемы в той или иной степени актуальны не только для ClickHouse, но и для других баз данных, и могут быть полезны любому, кто пишет SQL запросы.

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

Читать далее

Радио почти из ничего — самодельные радиодетали 1920-х годов. Резисторы

Habr.com - Fri, 03/20/2026 - 14:01

Рассматривая любительские рукодельные электронные лампы, например, [1, 2], интересно и полезно будет вспомнить и об остальных радиоэлементах, изготовлять которые ранним любителям приходилось самостоятельно и собственноручно. Кроме естественных корпусов-ящиков и контурных катушек, дросселей, трансформаторов, коллеги-предки часто были вынуждены делать и почти всё остальное — как установочные элементы — ручки, верньеры, шкалы, клеммы, включатели-переключатели, ламповые панельки, так и радиоэлементы пассивные — резисторы и конденсаторы переменные и постоянные, диоды (детекторы и выпрямители), элементы питания, в том числе и анодные (а это на минуточку — 40…80 вольт!) батареи.

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

Читать далее

Взаимодействие с протоколом LayerZero v2. Часть 4. Omnichain Queries (lzRead)

Habr.com - Fri, 03/20/2026 - 14:00

Если вы уже разобрались с классическими сообщениями LayerZero (push-модель: отправили сообщение из одной сети и получили в другой сети), следующий шаг — научиться читать состояние других сетей, не разворачивая там свои контракты и не гоняя туда-сюда два сообщения. Для этого в LayerZero v2 есть lzRead — это request–response (pull) паттерн: контракт в исходной сети отправляет запрос (lzSend), а ответ возвращается обратно в исходную сеть и обрабатывается в lzReceive.

Читать далее

Волшебная палочка — ужасно спроектированный интерфейс

Habr.com - Fri, 03/20/2026 - 14:00

Несколько дней назад я проснулся ночью из-за аллергии. Снилось что-то странное и обрывочное — как это часто бывает под утро. Какие-то фрагменты сюжета, немного магии, немного хаоса.

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

Мысль была такая:

волшебная палочка — это очень плохо спроектированный интерфейс.

Если посмотреть на неё не как на магический артефакт из сказок, а как на устройство взаимодействия пользователя с системой, то получается довольно странная конструкция.

Причём странная почти по всем параметрам: от физического дизайна до модели управления.

Попробуем разобрать её как обычное инженерное устройство.

Читать далее

Обзор рынка российских CRM‑платформ корпоративного уровня на 2026 год

Habr.com - Fri, 03/20/2026 - 13:46

Российский рынок CRM заметно «расслоился» на два мира. Первый — массовые «коробочные» решения для малого и среднего бизнеса с быстрым стартом и относительно жёсткими сценариями. Второй — корпоративные CRM‑платформы, которые выбирают крупные компании: с длительным циклом сделки, сложной организационной структурой, кросс‑функциональными процессами, требованиями по интеграциям, безопасности и высокой нагрузке.

В этом материале я решил сделать обзор корпоративных CRM-платформ, способных оказать комплексный эффект на весь бизнес — не только на воронку продаж. Разобраться в особенностях каждой из них бывает непросто, и я надеюсь вам в этом помочь!

Читать далее

[Перевод] Что вы не знали о Claude Code: архитектура, управление и инженерные практики

Habr.com - Fri, 03/20/2026 - 13:42

Сегодняшняя статья основана на полугодовом опыте глубокого использования Claude Code и кучи набитых шишек. Надеюсь, это будет полезно.

Поначалу я использовал его как обычный чат-бот, но довольно быстро понял, что что-то идёт не так: контекст становился всё более хаотичным, инструментов становилось всё больше, но эффективность только падала, правила становились всё длиннее, но соблюдались всё реже. После некоторого времени ковыряния и изучения самого Claude Code я осознал – это не проблема промптов, а особенность архитектуры самой системы.

В этой статье я хочу обсудить несколько вещей: как Claude Code работает изнутри, почему контекст засоряется и как с этим бороться, как правильно проектировать Skills и Hooks, как правильно использовать Subagents, как архитектура Prompt Caching влияет на всё, и как написать действительно полезный CLAUDE.md.

Читать далее

Автоматическая генерация UI-настроек: от типа данных к готовому интерфейсу

Habr.com - Fri, 03/20/2026 - 13:41

Меня зовут Илья, я мобильный разработчик в Naumen. Моя основная специализация — iOS-разработка. Я занимаюсь развитием мобильного клиента платформы Naumen Service Management Platform, а также Chat SDK в рамках Naumen Contact Center.

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

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

Читать далее

Who's online

There are currently 1 user and 6 guests online.
Syndicate content