TGViewer
Channel Public Channel
Удалов

Удалов

@udalovx

Привет! Меня зовут Сергей Удалов и я Ruby Team Lead. Кроме этого веду YouTube @SergeiUdalov и телеграм-канал @UdalovX. ЛС @SergeiUdalov
Subscribers
416
Photos
136
Videos
11
Links
134
Recent Posts 20 shown
Post #457 293
Сегодня рано утром, часов в 5, беспилотник жахнул в соседний дом.

Первая мысль про своих детей. Потом, как понимаешь, что прошло мимо твоей семьи, начинаешь думать о других.
  • 😢 24
  • 🤡 5
  • 🕊 4
  • 👏 1
  • 🤯 1
Post #456 500
А вы обратили внимание, что не все коллеги осовили навык "threads" в рабочих чатах?

Настойчиво пишут новые комментарии ниже.

Я тоже хочу такое упорство.
Post #455 520
В этом году на RubyRussia буду участвовать в круглом столе. Тема будет озвучена позже - не уверен, что могу делать анонс.

Доклада у меня не будет. Может, и хорошо. Доклад сильно затратнее в подготовке.

В любом случае, рад буду участвовать.
  • 👍 8
  • 🔥 6
Post #454 541
Пишу код и тексты в Vim с 2009 года. Последние годы, как и многие, пересел на дистрибутив LazyVim. Долго конфигурировал его под себя, а сейчас наоборот - почти чистый LazyVim плюс пара своих плагинов.

Сегодня сделал для себя "открытие", которое заметно улучшило юзабилити.

Я много работаю с Markdown, внутри файлов куча форматирования, и читать это сырым текстом неудобно. Решил проверить, какой вообще есть просмотрщик Markdown - плагин для NeoVim. Казалось, что он встроен.

Оказалось, всё проще, чем думал. Запускаем :LazyExtras, находим lang.markdown и включаем.

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

Советую.
  • 👍 9
  • 🔥 2
  • ❤ 1
Post #453 435
Сегодня с утра шел дождь и я не нашел в себе мотивации бежать в зал. Когда поднялся, дождик уже закончился, но настроя уже не было. Короче, пропуск.
  • 😭 9
  • 🐳 3
  • 💅 2
  • 🙏 1
  • 🌚 1
  • 🤨 1
Post #452 479
Год я метался между ИИ-инструментами для программирования.

Cursor, OpenCode, Claude Code, Charm — перепробовал всё доступное. У каждого находил свои плюсы, минусы и что-то удобное. И, честно говоря, мне нравилось пробовать новое.

Месяц мог начинаться на Cursor — работал на его Auto или Composer. Когда подписка подходила к концу, переключался на OpenCode и уже работал через API.

Полмесяца уходило на то, чтобы привыкнуть к новому инструменту: сочетания клавиш, особенности, свои skills и команды.

А во второй половине месяца — снова переключение.

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

Я даже настроил общую память для агентов через Cognee и общие инструменты через MCP Jungle. Но это закрывает только часть проблемы.

Удобного способа шарить skills и команды между инструментами я так и не нашёл.

И вчера понял простую вещь:

Чтобы делать лучше, нужно делать меньше.

Отбрасываю всё лишнее.

В качестве harness оставляю один инструмент — Pi Dev.

Почему он:

— минимальный — его проще контролировать и настраивать;
— при необходимости позволяет переключиться на другого провайдера;
— с ним просто интересно разбираться.

Да, возможно, это выйдет дороже.

Раньше доступ к моделям давала подписка. Теперь придётся отдельно оплачивать API.

Это осознанная плата за то, чтобы больше не переключаться.

С моделями была та же история.

DeepSeek, Qwen, Grok и другие. Постоянный поиск баланса между качеством и ценой.

Теперь остановился на двух:

DeepSeek V4 Pro — для сложных задач.
DeepSeek V4 Flash — для быстрых.

Этого достаточно.

Меньше инструментов.
Меньше переключений.
Меньше времени на метания.

Делаю меньше — чтобы делать глубже и лучше.
  • 👍 21
Post #451 473
Простой цикл работы с агентом перестал меня устраивать

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

Дал задачу - ждёшь выполнения. Пока ждёшь - отвлекаешься на что-то, либо думаешь, что нужно переключиться на что-то другое. Следующую задачу можно написать в этот же чатик с ним. Он через какое-то время её возьмёт, но новое сообщение может потерять актуальность. Если отправить несколько таких сообщений в очередь, то как их редактировать, поменять местами, уточнить - такой возможности уже нет.

Хочется, чтобы агент сам брал следующую задачу из списка, а списком управлял я. Пока он делает текущую - я думаю над следующими задачами, меняю их порядок.

Одним словом, последнюю неделю я строил такой процесс. Под себя выбрал утилиту Backlog.md https://github.com/MrLesk/Backlog.md.

Что это

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

У него есть API. И самое главное - есть описанный навык, как агент может сам брать задачи или ставить новые задачи. Сам добавляет нужное описание в AGENTS.md.

Как это выглядит в работе

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


1. устанавливаем npm i -g backlog.md
2. инициализируем проект в текущей папке backlog init "My Awesome Project"
3. просим агента добавить задачи или добавляем вручную backlog task create "Render markdown as kanban"
4. пишем агенту "делай задачи из бэклога в порядке очереди пока все не сделаешь"
5. наблюдаешь за выполнением через backlog board, параллельно можешь добавить новые задачи

Кстати, есть еще Web UI: backlog browser

Что не так

Есть недостаток: когда он выполнит одну задачу и переходит к следующей, у него контекст уже заполнен. Сейчас работаю над следующим улучшением, чтобы контекст очищался. Здесь нужен внешний планировщик, который бы агента запускал. Чуть позже расскажу про это.

Почему собрал сам, а не взял готовое

Я знаю, что подобные инструменты есть, подобные задачи они решают. Трекеры для агентов уже существовали. Но мы сейчас живём в такую эру, что разбираться с чужим продуктом, где 95% ненужных фич, смотреть их, разгребать и искать, что конкретно тебе нужно, уже не так хочется. Есть возможность в любой момент попросить агента написать нужный тебе продукт, который будет выполнять эти 5% и делать только это. Продукт под себя, под одного человека.

Сейчас как раз начал делать такого мастер-агента, который об этом позаботится. Об этом расскажу в будущих статьях, когда доделаю.
  • ❤ 7
  • 👍 3
Post #450 582
Думаю над темой для RubyRussia. Очень не хочется ставить ИИ во главу угла. Хочу поговорить про проектирование кода и/или автотесты.
  • 👍 16
  • ❤ 1
Post #449 787
В Угличе открыли майнинг-ферму.
1820 руб за кг биткоина.
Хранить желательно в холодном кошельке.
  • 😁 12
  • 🎉 1
Post #448 744

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • 👍 10
  • 🔥 2
  • 😁 2
  • 🤓 1
Post #447 745
git diff показывает только изменения уже отслеживаемых файлов. Новые (untracked) файлы в листинге не появляются. Годами мирился: смотрел их отдельной командой или сначала делал git add, чтобы затащить в staging.

Сегодня попросил ИИ написать скрипт git-diffall, который решает проблему. Одна выдача - и изменённые, и удалённые, и добавленные файлы. Рабочее дерево при этом не меняется.

git-diffall

Полная картина изменений одной командой без побочных эффектов. Удобно анализировать перед коммитом.

Исходник: https://gist.github.com/sergio-fry/79c629823e85368fbd905c334a9a1446
  • 👍 6
  • 🔥 5
Post #446 2.33K
В гостях Илья Зыкин, он же the-teacher: бывший учитель информатики, автор гемов с тысячами звёзд — the_role, the_sortable_tree, rails-start — и AI-фреймворка ActiveHarness. Главное — будущее Rails в эпоху AI и то, что остаётся разработчику, когда код пишут нейросети.


https://youtu.be/dUiXI9miHyQ
  • ❤ 11
  • 👍 4
  • 👎 1
Post #445 866
Вчера записали большой выпуск подкаста с Ильей Зыкиным (@prostocoding), говорили больше 2-х часов. Ждите!
  • 🔥 17
Post #444 970

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • 🔥 14
  • 💅 2
Post #443 888
В китайском книжном магазине
  • 🐳 11
Post #442 654
На набережной в Благовещенске стоял стол для армрестлинга. И вот такой крепкий парень.
  • 🔥 11
  • 👏 9
  • 👍 3
  • 🤔 1
Post #441 728
Нужно себя побаловать
  • 👍 12
  • 😁 7
  • 💅 6
Post #440 841
Какие интересные новости в мире Ruby?
  • 🔥 3
Post #439 882
Не успел сфотографировать целое - уже все съел. Короче, я на спорте, медовик на завтрак.
  • 😁 11
  • 🔥 4
  • 🫡 1
Post #438 819
RubyRussia 2026 начали собирать заявки. Отличная новость!

Обязательно буду подаваться. Уже есть 2 идеи, но об этом позже.
  • 👍 17
  • 🔥 3
Older posts →

About this channel

How can I read @udalovx without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Удалов: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Удалов have?
Удалов (@udalovx) has 416 subscribers on Telegram, refreshed roughly every 30 minutes.
Does Удалов know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →