После защиты диплома я доработала систему проверки библиографических источников: добавила OCR, кэширование, offline-режим, классификацию ошибок, внешние проверки и ML-модули. В статье разбираю, как устроен пайплайн, почему одного DOI недостаточно, какие метрики удалось получить и почему проверка списка литературы оказалась не формальностью, а отдельной инженерной задачей.
Читать далееЯ хотел использовать Claude прямо в мессенджере MAX — без браузера, без переключения контекста. Готового решения не было. Нашёл на GitHub китайский проект cc-connect — Go-фреймворк с plugin-архитектурой для подключения AI-агентов к мессенджерам. Telegram, Feishu, Discord там были. MAX — нет.
Написал адаптер, открыл PR. Приняли. Теперь поддержка MAX — часть основного репозитория.
Что такое cc-connect
cc-connect — Go-фреймворк с чёткой трёхслойной архитектурой:
Читать далееНебольшой инженерный постмортем про то, как метрики качества тестов дружно молчали, пока пользователь не прислал скриншот с очевидной ошибкой. И почему ни строчное покрытие, ни мутационное тестирование этот класс багов поймать не могли в принципе.
У меня есть внутренний дашборд, который собирает список рабочих копий проекта (git worktree) и показывает по каждой последнюю активность. В какой-то момент пришло сообщение: «разные ветки, а последнее сообщение и время везде одинаковые». Я открыл дашборд — и правда: каждая копия отображалась пять раз подряд, с идентичными данными. При этом тесты были зелёные, строчное покрытие — сто процентов, а мутационный прогон по этому куску показывал 97,8%. То есть все три метрики, которым принято доверять, дружно сказали «всё хорошо».
Читать далееВ прошлую пятницу я сидела в переговорке и в очередной раз слушала историю про то, как «у нас плохо работают HR». Позиция закрывалась 47 дней. Кандидат в итоге выбрал конкурента, потому что у нас «слишком долго думали». Убыток по расчёту финдира — около двух миллионов. Виноваты, разумеется, мы.
Я в HR двадцать один год. За это время закрыла больше двух тысяч вакансий, обучила четыре команды рекрутёров и пережила три «крупных сокращения», после каждого из которых оставалась в компании. Что, наверное, кое‑что говорит о моей ценности. Но раз в квартал я всё равно сижу в переговорке и слушаю, как я не справляюсь.
Я устала. Не в смысле «завтра уволюсь», а в смысле устала объяснять одно и то же на разных языках разным руководителям. Каждый раз слышу вариации трёх мифов, и каждый раз мне приходится их разбирать. Здесь попробую разобрать их один раз и надолго — так, чтобы можно было потом просто присылать ссылку.
Читать далееНаверное, пора вновь вынырнуть в ленте хабра с радиолюбительской тематикой и самодеятельным конструированием. В предыдущей паре статей было рассказано про один из шедевров радио‑DIY — специально разработанный для соревнований по КВ‑радиосвязи трансивер RA3AO, а также про восстановление попавшего ко мне в руки экземпляра, которому пришлось практически полностью пересобрать передающую часть.
Дальше нужно было соорудить в пару к нему усилитель мощности примерно на 50–100 Вт для КВ‑диапазонов, желательно со встроенным сетевым питанием и подходящими габаритами, чтобы более гармонично сочетаться с большим настольным трансивером. И вот с позапрошлого лета, с перерывами, шла работа над таким усилителем. Про неё и будет рассказано дальше.
Читать далееОдной из важнейших проблем в программировании с предсказуемым управлением эффектами является композиция монад. В этой статье мы рассмотрим наиболее общие подходы к решению этой задачи.
Читать далееЯ потихоньку пишу книгу для руководителей среднего уровня, публикую в тг, попробую ещё на Хабр порепостить. Вдруг кому-то будет полезно или интересно.
Руководить в среднем звене – это особый мир. Нас всегда тянут в три стороны – подчинённые (ещё вопрос, кто чей подчинённый по факту), начальство (тянут то нас, то наши жилы), и коллеги (или «коллеги», равные по иерархии, зачастую – конкуренты).
Жизнь заставляет нас постоянно балансировать между взаимоисключающими требованиями. Иногда кажется, что своих целей, потребностей, желаний и голоса у нас просто нет – всё навязано кем-то извне. А ты бегаешь, как дурак, и ставишь костыли, чтобы всё это не развалилось, да ещё и как-то работало. В идеале – чтобы развивалось.
Нишу среднего звена я выбрал сознательно. Во-первых, я в ней всегда и работал – общий опыт управления 20 лет. Опыта работы топ-менеджером у меня нет, поэтому о чём не знаю – говорить не буду.
Читать далееУ вас тоже есть такая проблема на windows, что превью к таскбару не прилипает?
Вот хочешь посмотреть (быстро и без переключения) — "что там скрипт/агент/отладчик прямо сейчас делают?" — наводишь на иконку в таскбаре и смотришь сильно прищуриваясь. Только мышку отвёл — и всё пропало. А раскладывать всё по сеткам windows‑окон сложно: во‑первых напрягает это делать на каждый запуск нового окна, во‑вторых при переключениях получается сюрреалистичная картина «поверх окон одного экрана висят половинки/четвертинки другого». А тут у меня несколько параллельных процессов по несколько часов и я во время работы поймал себя на постоянных переключениях между окнами, что сильно отвлекает.
Решил что «хватит это терпеть» и запилил (через Claude) маленькое приложение, которое решает всю проблему — montab (Monitoring Tab). Поскольку это windows и нужны прямые системные API — решил делать на NET11. А потом оптимизировать, чтобы размер был минимальный и без всяких зависимостей.
Смотреть что получилосьПривет, Хабр! Меня зовут Артур Валиев. Я продолжаю делать свой VST3-плагин Mix Teacher AI.
В прошлый раз я рассказывал про идею плагина: поставить его на дорожку, посмотреть уровни, пики, RMS, примерный LUFS, частотные зоны и получить простую подсказку человеческим языком.
Но довольно быстро стало понятно, что анализировать только одну дорожку мало.
Потому что в сведении часто проблема не в одной дорожке.
Кик сам по себе нормальный.
Бас сам по себе нормальный.
Вокал сам по себе нормальный.
Барабаны вроде тоже нормальные.
А вместе всё почему-то не звучит.
И вот тут начинается самая интересная часть: конфликты между дорожками.
Читать далееv1.1.0: убрали HTTP-костыль для sink’ов, закрыли /metrics, Teams в UI, trusted clusters. Про v1.0.3 и типичный «pairing failed» на Docker — внутри. Продолжение серии.
DataSafeS3 1.1.0: pentest, mTLSTL;DR. Из интереса обучил собственный русский RAG‑сплиттер — захотелось проверить, можно ли сделать context‑aware‑нарезку русских документов лучше готовых чанкеров.
Я взял идею датской context-aware-splitter, пересобрал её под русский на базе T-lite-it-2.1 и изменил главное: модель возвращает индексы границ, а не переписанный текст. Хост потом режет оригинал по этим индексам.
У index‑output оказалось три практических плюса:
Читать далееВ настоящее время, когда бум клинической ностальгии по донди и сежке еще не отгремел, уже подрастает новое поколение ретрогеймеров, для которых 90-е прочно ассоциируются с первой плойкой. Вышла околодокументальная книга "PlayStation. Игра против правил" Ильи Воронина, где досконально разобраны причины зарождения еще одного игрока на консольном ТВД, вклад в это всем известной конторы Нинтендо, а также, оглушительный успех Сони на новом поприще и завоевание короны лидера на рынке видеоигр (наверное, не дочитал еще). Всю шедевральность плейстейшена можно прочувствовать даже не читая книгу, просто потрогав эти потрясающие выпуклые кнопочки на обложке. И где такие книжки по Сатурну?
Но если Сони победила, и ее первая игровая консоль буквально уничтожила конкурентов, что же такое пишет автор данного опуса, на чем основывает свое мнение и что за легкое жжение ощущается при вдумчивом прочтении заголовка? Обо всем этом я расскажу чуть ниже! С позиций ретрогейминга)
Поехали ностальгировать---->Почти через 3 года после выхода Mageia 9 наконец-то вышла Mageia 10.
Основные новшества:
( читать дальше... )
Саймон Рамо - сын русской иммигрантки, отец межконтинентальной баллистической ракеты США и бизнесмен. Однажды он захотел улучшить свою игру в теннис и применил тот же строгий, основанный на фактических данных подход, который когда-то привел его к успешной карьере.
В результате в 1970 году им была написана книга «Необыкновенный теннис для обыкновенного игрока».
Читать далееПочему бы написать статью в виде одного только агентского скилла. И вам полезно и мне не трудно.
Поэтому, формат простой. Побежали!
Агентский скилл / методология рефакторинга и проектирования долгоживущих корпоративных систем с богатой бизнес-логикой на основе предварительного выявления намерений, археологии домена, функционального DDD Скотта Влашина и стратегии тестирования Майкла Физерса.
Читать далееМы создаем софт для горно-геологических служб калийных рудников. Наши геологи и маркшейдеры каждый день превращают тысячи скважинных проб в карты: отметки кровли пласта, содержания KCl, мощности, газоопасность. Классический инструмент для этого - кригинг, и в QGIS он формально есть: SAGA, GRASS, Smart-Map, связки со SciPy. На практике же каждый вариант чем-то не устраивал, и год назад я начал писать свой плагин. Сейчас Isoliner - это 24 инструмента в официальном репозитории plugins.qgis.org: кригинг четырёх видов, вариограммный анализ, кросс-валидация с отчётами, изолинии с контурными полигонами, геологические разрезы и собственный 3D-просмотр. Вычислительное ядро - чистый NumPy, ни одной внешней зависимости.
Под катом - зачем понадобился ещё один кригинг, как выглядит система кригинга в двадцати строках NumPy, что такое вариограмма на пальцах и почему абсолютные единицы силла — главные грабли всех, кто впервые открывает такие инструменты.
Читать далееИспользуем старый Mikrotik в качестве сигнализации.
Если у вас завалялся устаревший, но рабочий роутер mikrotik, сделайте из него сигнализацию на удаленном объекте, например в гараже.
Читать далееПосле появления ChatGPT и массового распространения GitHub Copilot, Cursor, Claude Code, Windsurf и других AI-инструментов разработка стала заметно быстрее. Код, тесты, README, комментарии и небольшие utility-функции теперь можно получить за секунды.
Но вместе с этим появился менее очевидный вопрос: если миллионы разработчиков используют похожие модели и похожие промпты, не становится ли открытый код более однообразным?
В этой статье я проверяю эту гипотезу на данных GitHub за 2019-2025 годы: через GH Archive, BigQuery, commit messages, README, имена функций и собственный GitHub Uniformity Index.
К исследованиюПри самых низких температурах во Вселенной материя начинает вести себя странно. Когда атомы охлаждаются до температуры чуть выше абсолютного нуля, они начинают проводить электричество без сопротивления, превращаться в облака «суперчастиц» или течь без трения и подниматься по стенкам сосудов.
Существование на самых мелких и холодных масштабах подчиняется законам квантовой статистики, которая определяет поведение бозонов и фермионов — двух семейств фундаментальных частиц, из которых, как считается, состоит всё во Вселенной.
Бозоны — это частицы, переносящие взаимодействия, такие как фотоны или бозон Хиггса. Множество таких частиц может занимать одно и то же квантовое состояние, а это означает, что неограниченное количество бозонов может «перекрываться» друг с другом и вести себя как когерентные волны.
Читать далееПо традиции здесь должна быть баннерная картинка, сгенерированная очередной нейросетью, но если уж я решил поделиться своими наблюдениями о том, что нейросетям не стоит доверять бездумно, начинать статью с этого было бы как минимум странно. Заодно глаза отдохнут.
Читать далее