Редизайн блога

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

Собственно, рассказать стоит только то, что весь процесс — от макетирования до полной имплементации и исправления багов, — занял у меня часа полтора. Конечно, благодаря AI — я взял привычный Claude Code, применил уже проверенный на паре мелких задач скилл frontend-design и так всё и сделал. Claude расспросил, какие стили я предпочитаю, какой шрифт для чего лучше использовать, что лучше сохранить из существующей темы (а тут стояла Mainroad, довольно старая тема) и нарисовал три макета в разном стиле.

Мне оставалось выбрать один из трех и через минут 15 можно было тыкать его на локальном сервере. Возможно, Claude Code и сам бы справился с вылизыванием верстки, но я предпочитаю держать минимальное количество MCP серверов, лучше уж я ему скриншотов накидаю.

Не обошлось без казусов — например, исправляя ширину поста, он вдруг заявил “А еще я убрал красную линию в заголовке” и на самом деле её убрал. Пришлось сказать, чтобы вернул.

Но результат мне нравится. Надеюсь, аудитории тоже будет лучше.

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

Когда opinion превращается в баг

У меня за долгое время использования компьютеров скопилось какое-то количество старой техники, в основном ноутбуков и планшетов, плюс я год назад увлекся и накупил очень старых ноутбуков и даже снял несколько видео — про свой самый первый ноутбук из 1994 года, про старые ThinkPad и так далее. При этом есть у меня теплое отношение к Linux — впервые я что-то такое попробовал еще в 2000-м (это были RedHat 6 и Mandrake), даже жил на Gentoo, регулярно пользовался Ubuntu, и так далее. Поэтому понятно, что когда культовый гик DHH (Дэвид Хайнмайер Хенссон, создатель Ruby on Rails и сооснователь 37 Signals) начал в каждом твите анонсировать собственную сборку Omarchy, я определенно захотел попробовать. Меня даже не остановили соображения, что DHH — чувак очень самобытный, а сборка названа opinionated и основана на ArchLinux — что я теряю, кроме свободного времени?

Аналитика миллениалов

Выходные в социальной сети, ранее известной как Twitter, прошли под знаком новой функции — About this account.

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

Не даем заснуть колонкам

На выходных задумался, что за последний год у меня сильно изменился шаблон поведения в совершенно стандартных сценариях использования продуктов. Если раньше, встречая какое-то мелкое неудобство, я пробовал его решить настройками или чьим-то готовым решением, то сейчас я начинаю думать — “А нельзя ли это устранить вообще? Что посоветует AI?”. И по результатам небольшого чата вполне может последовать радикальная перенастройка системы или даже написание программы, которая решит проблему.

История про долгую историю окупаемости

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

На четвертом курсе института нам читал лекции по экономике железнодорожного транспорта профессор Бондаренко и на лекции, посвященной расчету окупаемости капвложений (сейчас бы сказали — “инвестиций”), рассказал о том, что он входил в рабочую группу экономистов, занимавшихся разработкой ТЭО (технико-экономического обоснования) системы “Экспресс” — автоматизированной системы продаж билетов на пассажирские поезда в СССР. Кажется, речь шла о системе “Экспресс-2”, запущенной во всесоюзном масштабе в середине 80-х годов прошлого века.

Приятный сеанс вайбкодинга

Я в последнее время практически большую часть работы делаю с использованием AI-агентов, которые при этом что-то программируют. На меня за это регулярно сердятся “настоящие” программисты, мол, я ничего не понимаю, что там AI пишет, будет масса проблем потом, кто это сможет поддерживать и вообще… Я, правда, честно отвечаю, что меня не волнует, кто это сможет поддерживать, пока с этим справляется даже нынешний AI, тем более, что большинство вещей, которые в итоге получаются — это прототипы, которые используются для разовой или нерегулярной задачи. Если в итоге станет понятно, что идея, алгоритм или последовательность операций даёт нужный результат — “правильной” разработкой займутся живые люди, которые сделают “правильный” проект. Хотя при этом я неплохо представляю, что откуда берется, что с данными происходит и как проверить итоговый результат — а вот какой алгоритм сортировки применен или как не по канонам названы методы, меня и волновать не должно, я такого и про результат работы живых людей не знаю.

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

Никакого Борисполя

Певица Елка убрала из своей популярной песни слова “завтра в 7:22 я буду в Борисполе сидеть в самолете и думать о пилоте”. Теперь она поёт “завтра в 7:22 я буду лететь к тебе, сидеть в самолете и думать о пилоте”.

Получилось странно (ну, девушка летит к кому-то, а думает о пилоте, в исходном варианте никакого “тебя” и не существовало, кажется), но это у нее вышла художественная правда. Сидеть в самолете в Борисполе она больше никогда не будет. Мы, я надеюсь, как раз будем, а вот у нее в жизни больше никогда никакого Борисполя не случится.

Как и Прованса, я надеюсь. Пусть в Пхеньян летит.

Контекст ненужных MCP

Если вы начали использовать MCP практически сразу, как я — сходите в конфиг и удалите оттуда первые референсные серверы типа fetch и filesystem. Claude во всех видах давно умеет обращаться к более современному web-fetch, который работает через серверы Anthropic, на порядок реже банится сайтами и нормально извлекает контент. Что касается filesystem, то на Claude Desktop он еще может использоваться, а вот Claude Code гораздо лучше справляется своими силами, а MCP только занимает контекст.

Достаточно стандартная картина при установленном SuperClaude

Что подводит нас к разговору о контексте и его использовании. Любой MCP занимает место в контексте, примерно так же, как любое приложение, запущенное на смартфоне и работающее в фоне, влияет на энергопотребление и заряд батареи. Еще место в контексте занимают сообщения в сессии, файлы вида CLAUDE.md (причем как локальный в проекте, так и общий, на уровне пользователя), агенты, которые настроены в Claude Code. Если при этом поставить что-то типа прекрасного фреймворка SuperClaude и вдобавок согласиться на все предложенные дополнения, включая MCP, то получившийся Claude Code, безусловно справится с немалым количеством задач больше и лучше, чем до этого, но вот свободного контекста останется мало. Если конкретно — поскольку я по этим граблям и прошелся, — можно обнаружить, что из общего контекста в 200k токенов несколько тысяч занято системным промптом, полтора десятка тысяч — системными tools, 68k(!) — всеми MCP, и еще 25k — всеми файлами памяти, от CLAUDE.md до десятка файлов с инструкциями для компонентов SuperClaude. И для собственно сообщений чата остается лишь четверть, а то и меньше общего объема.

В общем, настоятельно рекомендую для начала удалить ненужные вам MCP — начиная с упомянутых выше fetch и filesystem. Из всего, что ставит SuperClaude, я в общем конфиге (на уровне пользователя, он загружается всегда, хоть и последним) оставил sequential-thinking, serena (рекомендую, это полностью заменяет все собственные попытки что-то сохранить в файл, чтобы потом напомнить Claude Code, чем вы занимались в прошлую сессию), tavily (веб-поиск, но не обязательно) и context7 (поиск по документации библиотек, фреймворков и так далее). Если вам нужно что-то типа chrome-tools или playwright — ничто не мешает в корне нужного проекта положить файл .mcp.json, где дописать нужные. Именно в этом проекте они и будут работать. К сожалению, отключить на уровне проекта нельзя, хотя все установщики норовят прописаться именно на user-scope.

Тот же контекст после выключения ненужных в конкретном проекте MCP серверов

Результат подобной чистки контекста вполне достойный — у меня получилось довести MCP tools до 21,5k токенов, что более чем в три раза меньше дефолтного состояния, а объем свободного контекста — до почти 95k. К сожалению, Claude автоматически резервирует 45k в качестве буфера для автосжатия сессии и это тоже не отключается.

Не забудьте, что добавляемые вручную серверы также можно добавить только для текущего проекта — для этого нужно в команде claude mcp add не указывать -s user. Но не забывайте, что в этом случае сервер все равно пропишется в дефолтном .claude.json в контексте текущего проекта, а не отдельным файлом в его директории.

К предыдущему конфигу просто добавлен github-mcp-server

P.S. Напоследок хочу показать еще одну страшную картинку полностью забитого контекста. На ней в MCP tools из приведенных 70+k токенов более 50k занимает один сервер — github_mcp_server. Очень яркий пример того, что комфорт требует компромиссов и наоборот.

Если рассудок и жизнь дороги вам…

Немного вечернего брюзжания.

После довольно долгого перерыва я включил вечером свой ноутбук. Я его не включал с февраля, когда его как компьютер в студии заменил новый Mac mini, а ездить я никуда за это время не ездил, так что смысла включать и не было.

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

Google Chrome сам обновиться уже не может — пришлось скачать вручную и поставить самостоятельно.

Mimestream — почтовый клиент для Gmail — оказался версии 1.6.3, предлагал обновиться до 1.7.3 , отваливался с ошибкой и вообще-то обновляться надо было до текущей 1.8.0, но тоже пришлось вручную ставить.

Но прекраснее всего (и предсказуемее) повел себя Telegram. Он тут же показал кнопку Update и выгрузился. Запустил опять — опять кнопка Update и выгрузился после нажатия. Короче, я проверил, что он обновляет — версия на февраль была 11.11, текущая 11.15 и это свидетельство гения победителей олимпиад каждый раз обновлялся на следующий билд и, видимо, собирался пройти пару десятков таких циклов. Пришлось опять-таки пойти на сайт, скачать свежую версию и поставить поверх.

Черт его знает, как мы дошли до такой эфемерности.

Talk Radio

Немного неожиданно посмотрел довольно старый фильм — Talk Radio, который снят Оливером Стоуном в 1988 году. Фильм в биографии Стоуна не самый заметный — он пришелся между реально крутыми “Взводом”, “Wall Street”, “Рожденный 4 июля” и “The Doors” и так сильно не нашумел. Хотя сам по себе очень достойный.

Я вообще вышел на него совсем с другой стороны — попросил ChatGPT составить список фильмов и сериалов, где показана кухня радио и ТВ — мне нравится, имея любительский опыт стримов, подкастов и монтажа, разглядывать технические детали, погружаться в атмосферу студий и newsrooms. Разумеется, мне посоветовали и The Morning Show, и The Newsroom, и даже “День радио” — и Talk Radio среди прочего.

Эрик Богозян в роли главного героя — Барри Шамплейна
Эрик Богозян в роли главного героя — Барри Шамплейна

И я в итоге вспомнил, что году в 1990-м, когда в киосках среди газет продавались брошюрки вида “Обзор фильмов года”, как раз про этот фильм тоже было написано. Это не была рецензия — просто короткая справка о фильме с описанием сюжета. Но вот что я помню, это впечатление от описания — чувствовалось, что и его автор, и я как читатель, были изумлены необычными обстоятельствами. Ну, представьте себе — где-то в Далласе местное радио, на нем программа, где ведущему может позвонить любой желающий и поговорить в прямом эфире на любую тему. Что про это мог подумать советский юноша — да не бывает такого! Что у нас, радио нет, что ли? Мы же знаем, что туда можно написать письмо, оно туда не факт, что дойдет, но, видимо, какие-то письма доходят, иначе что читают ведущие “В рабочий полдень”? Но позвонить? Даже с гласностью это как-то плохо уживалось.

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

Как доверие к AI обошлось мне в 15 кг веса

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

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

Национальная LLM: между политическими амбициями и технологическими реалиями

Последние несколько месяцев мы много слышим о создании национальной LLM. Эта цель была декларирована еще в феврале этого года, потом на DOU вышло интервью CTO Центра AI Excellence Дмитрия Овчаренко, а недавно прозвучало заявление министра цифровой трансформации Михаила Федорова, в котором даже был назван срок запуска первой версии LLM — конец этого года.

Все это время в любой дискуссии непременно встает вопрос — «А вообще нужна ли национальная LLM? Какова цель ее создания? Как ее можно будет использовать? Зачем ее создавать при наличии многих уже существующих моделей достаточно высокого уровня?». К сожалению, ответы представителей государства — это какая-то смесь технологических, безопасностных и политических аргументов, где последние занимают значительное, если не первое, место.

Джордж Койманс, RIP

В один день с Оззи от нас ушел Джордж Койманс — легендарный основатель и гитарист Golden Earring, одной из лучших групп Нидерландов. Любители рока помнят их “Radar Love” и очень многие знают песню “Going to the Run”, которую в достаточно совковой манере сняла “Ария”.

Джордж несколько лет страдал от ALS (боковой миотрофический склероз) и группа готовилась дать последний концерт 30 января 2026 года, все сборы от которого должны были пойти в фонд исследований этой болезни. Впрочем, участие Джорджа в концерте и так не планировалось, так что, возможно, он состоится все равно.

Умер Оззи Осборн

Он попрощался со всем миром буквально пару недель назад. И спокойно ушел.

Много лет назад он пел — “If I close my eyes forever, will it all remain the same?”.

Мы теперь можем почувствовать, что нет.