Неделя высокой продуктивности: 227 коммитов, 16 PR, релиз GitBanner 1.3.0 и укрепление py-libp2p. Узнайте, как я совмещал задачи и что из этого вышло. Читайте сейчас!
Задумывались ли вы, сколько полезного можно успеть за семь дней, если правильно расставить приоритеты? На этой неделе я сделал 227 коммитов в дюжине репозиториев, закрыл 16 PR и поддерживал идеальный семидневный стрик. Это был интенсивный челлендж по переключению контекста, но он того стоил. В этой статье я расскажу, как я совмещал разработку TUI-интерфейса, укрепление P2P-сети и архивацию старого проекта, и какие уроки извлёк.
Большую часть времени (95 коммитов!) я посвятил подготовке релиза 1.3.0 для GitBanner. Я углубился в систему типов TUI и реализовал 16-битную эстетику: использовал шрифт Silkscreen для заголовков и VT323 для основного текста. Это придаёт инструменту ретро-терминальный вид, который я просто обожаю.
Помимо визуальных изменений, я проделал много «невидимой» работы: пересобрал каталог dist, перегенерировал карточки и упростил логику подписей, чтобы счётчик общего числа коммитов не дублировался с 52-недельным обзором. Всё это — полировка, которая делает продукт законченным.
Мой obsidian-vault получил 58 коммитов. Да, я отношусь к базе знаний как к кодовой базе. Я переработал палитру графа, чтобы каждая категория имела яркий и различимый цвет на основе перцептивного расстояния. Также я написал инструмент calendar-sync для исправления frontmatter и заполнения ежедневных заметок за август 2026. Если это не автоматизировано — я этого не делаю.
Я решил официально архивировать kad-monitor. Но не хотел просто переключить бит и уйти. Я потратил 37 коммитов на создание полноценного «демонстрационного стенда». Я влил PR #1, который включает запускаемую симуляцию, полную панель управления и результаты A/B-экспериментов. Я также честно задокументировал ограничения в README. Приятно завершить проект с чистым руководством по развёртыванию и CI-бейджами, а не оставить его гнить.
Большая часть серьёзной инженерной работы ушла в py-libp2p. P2P-сети безжалостны, и эта неделя была посвящена устойчивости. Я открыл PR #1442, чтобы обеспечить разнообразие IP-подсетей в k-buckets Kademlia DHT. В децентрализованной сети не хочется, чтобы все пиры были из одной подсети — это риск централизации. Также я устранил проблему безопасности в PR #1396, укрепив HTTP-сервер /sdp против DoS-атак с амплификацией памяти.
Одним из самых приятных исправлений был PR #1441. Я заметил, что наши декодеры varint принимали усечённые или слишком длинные входные данные. Это классический крайний случай, который может привести к разным странностям в будущем, поэтому я ужесточил проверки, чтобы отклонять повреждённые данные немедленно.
Я также поработал над hydradb, открыв PR #80 для оптимизации производительности курсора. Старая логика пересканировала хвост курсора при каждом сбросе страницы, удерживая глобальный мьютекс — не очень хорошо для конкурентности. Я заменил это на вычитание выгруженных байтов, что должно заметно ускорить работу.
На этой неделе я открыл 13 issue, в основном тестируя свои инструменты или разбираясь в зависимостях.
merge_distributed_inner_join считает null ключи равными (Issue #96). Это приводит к огромному кросс-продукту null-строк, который может взорвать память.Неделя была насыщена Python и TypeScript, но я также коснулся Lua, настраивая Neovim. Я упростил свой конфиг: убрал toggleterm и связанную с ним сложность в пользу более лаконичного рабочего процесса. Я также вернул привязку <leader>gg для запуска snacks.lazygit. Иногда лучший код — это удалённый код: я закончил неделю с отрицательным числом строк в конфиге, что всегда является целью.
Статистика говорит о значительном росте: +29 890 строк и -12 478 строк. Большая часть добавлений — документация и бэкфилл Obsidian, но 12 тысяч удалений — это много рефакторинга в GitBanner и py-libp2p.
На следующей неделе я сосредоточусь на запуске GitBanner 1.3.0. Хочу убедиться, что новая система типов TUI безупречна. Также планирую глубже разобраться с проблемами join в HydraDB — исправление кросс-join на null-ключах будет интересным вызовом в распределённой логике.
Семь дней подряд коммитов. Стрик жив, кофе крепок, код становится чище. Увидимся на следующей неделе!
Яш К. Сайни — инженер, работающий публично: AI/ML, низкоуровневое программирование (Rust/C/C++) и open source.
Хочешь закрепить знания на практике?
Решай задачи на Algolit — интерактивная платформа для обучения
Начать бесплатно →