Слогер Создать блог
Разработка

Как за месяц открыть 116 PR и получить 13 мерджей: опыт open source

Один разработчик за месяц открыл 116 пулл-реквестов, нашел 177 багов и получил 13 мерджей. Разбираем, как это устроено и какие выводы можно сделать.

116 пулл-реквестов, 177 найденных багов, 13 мерджей, из них пять — в чужие репозитории. За один месяц. Это не фантастика, а реальные цифры из отчета разработчика Анируддхи Адака, который решил проверить, что будет, если относиться к open source как к ежедневной практике.

Сразу оговорка: эти цифры не должны пугать. Они показывают не недостижимый рекорд, а механику. Большинство из 177 issues — это мелкие баги, найденные при чтении кода. Пять мерджей в чужие проекты — результат аккуратной работы с существующей архитектурой. И каждый такой PR — это кусок портфолио, который работает на вас даже после закрытия вкладки GitHub.

Почему open source стоит времени

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

Анируддха за месяц просматривал чужие репозитории с «лупой»: читал код, искал места, где поведение расходится с ожиданиями. Так и родились 177 issues. Из них 7 публичных security-репортов и 2 приватных — то есть часть найденного была достаточно серьезной, чтобы сообщать о ней непублично.

Цифры, которые стоит разобрать

Распределение issues по проектам показывает, что не нужно пытаться охватить все сразу. Десять проектов, на которые пришлись основные находки, и вот как они распределились:

ПроектЧисло issues
openclaw/openclaw60
google-gemini/gemini-cli40
langfuse/langfuse10
truefoundry/trueforge9
OpenHands/OpenHands9
volcengine/OpenViking8
PrimeIntellect-ai/prime-agent8
langgenius/dify7
genspark-ai/genoffice5
Aider-AI/aider5

Шестьдесят issues в одном проекте — это не значит, что проект ужасен. Это значит, что вы глубоко в него погрузились. Гораздо полезнее изучить один репозиторий досконально, чем поверхностно посмотреть десять.

Кейс: как починить Ctrl+F в больших таблицах

Самый яркий результат месяца — два мерджа в genspark-ai/genoffice, офисный пакет с открытым кодом. Первый фикс касался поиска по таблице: при ленивой загрузке данных Ctrl+F искал только среди уже загруженных строк. Если в вашей таблице 50 тысяч строк, а нужное значение на 40-й тысяче, поиск выдавал честное «ничего не найдено». Значение, конечно, было.

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

Это и есть главный навык open source-разработчика — уважение к чужому коду. Прежде чем что-то добавлять, посмотрите, нет ли уже готовой функции, которую можно расширить.

Второй кейс: фича, которая обернулась уроком

Второй мердж добавил в GenOffice подсветку строки и столбца активной ячейки — как в Excel, только аккуратно и опционально. Фича полезная, но не она запомнилась. А запомнилась ошибка, которую автор допустил в первом пуше: при добавлении новых строк интерфейса он сдвинул значения i18n-ключей во всех девятнадцати локалях. Кнопка на вкладке View в зависимости от языка показывала «en» или «zh» вместо нормального текста.

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

Как повторить этот результат

Если вы хотите не просто разово пофиксить баг, а погрузиться в open source системно, вот что стоит делать:

  • Выберите один-два проекта, которыми реально пользуетесь. Так вы будете знать, как они должны работать, и быстрее найдете несоответствия.
  • Читайте код без задачи. Просто открывайте файлы и смотрите, что происходит. Баги начнут находиться сами.
  • Оформляйте PR так, чтобы мейнтейнеру было легко. Описывайте, как воспроизвести проблему, что меняете и почему, какие тесты прогнать.
  • Не расстраивайтесь, если PR не приняли с первого раза. Из 116 PR восемь автор отозвал сам — это нормально, когда видишь, что решение неудачное и лучше переделать.
  • Используйте готовые примитивы, даже если они кажутся неочевидными. Чужой код — это библиотека, а не препятствие.

Но главное — регулярность. Разовые контрибьюты дают мало. А вот ежедневная практика — чтение, поиск, мелкие фиксы — со временем превращает вас в человека, которому мейнтейнеры доверяют.

Типичные ошибки новичка

По опыту этого месяца можно составить небольшую таблицу ошибок:

ОшибкаКак избежать
Сдвиг i18n-ключей при массовом редактированииПроверять каждую локаль отдельно, прежде чем пушить
Изобретение собственного механизма вместо использования существующегоСначала искать в кодовой базе готовые помощники
Плохое описание PRВсегда указывать, как воспроизвести проблему и что изменилось
Слишком большой PRДробить на мелкие логические изменения

Что в итоге

Цифры августа — не цель, а побочный эффект регулярной работы. 116 PR, 177 issues — это не про «выпить море кода», а про системное погружение. Каждый принятый мердж — строчка в резюме, каждый issue — доказательство того, что вы умеете находить проблемы. И каждый отклоненный PR — повод стать лучше.

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

По материалам: career. Текст переработан редакцией Слогера.

← На главную

Рекламное место — Конец поста
Реклама · Слогер

Комментарии (0)

Войдите, чтобы комментировать.

Пока нет комментариев. Будьте первым.

Маркетинг

250 тысяч за настройку, ещё до первого звонка. Что мы сделали вместо этого

Мы изучили, сколько стоит голосовой робот для обзвона. Только за настройку, до первого звонка и без оплаты разговоров, у специализированных поставщиков просят порядка 250 тысяч рублей. У нас этот модуль встроен в платформу: заявка превращается в лид, робот звонит, результат записывается в карточку, менеджер получает задачу. Готовый шаблон сценария, подключил, поправил тексты и звонишь. Рассказали, как это устроено и почему подход «готовое решение» дешевле: https://fluxs.ru/golosovoy-robot-dlya-obzvona?utm_source=telegram&utm_medium=social&utm_campaign=voice-calls

Слогер 09.10.2026 ▲ 1
Карьера

Как ИИ-пайплайн превращает 1500 вакансий в 12 откликов: разбор пяти стадий поиска работы

Автор прогнал через систему больше 1500 объявлений и оставил в очереди двенадцать. Разбираем, как устроены стадии, где правила работают лучше модели и почему последнюю милю нельзя автоматизировать.

Слогер 09.10.2026 ▲ 0
Fluxs lenta
Реклама · fluxs.ru
Разработка

Почему сеньор чувствует плохой код, а джун — нет: как превратить интуицию в правила

Разбор ситуации с dev.to: джун спросил наставника, откуда тот знал, что код неправильный, — и ответа не последовало. Что стоит за этим «чутьём» и как передать его другому человеку.

Слогер 08.10.2026 ▲ 0
Образование

Как исследователю стать заметным в мире: разбор открытой науки, Horizon Europe и площадок без рецензий

Япония вошла в Horizon Europe — крупнейшую исследовательскую программу ЕС. Разбираем, что это меняет для отдельного учёного: обязательства по открытой науке, площадки без рецензий и репозитории, которые связывают одно с другим.

Слогер 08.10.2026 ▲ 0
Fluxs lenta
Реклама · fluxs.ru
AI

Почему AI-агент не может получить деньги за работу: разбор агентских бирж труда

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

Слогер 08.10.2026 ▲ 0
Образование

Рабочее место школьника: как оборудовать его дома, чтобы уроки делались

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

Sloger 07.10.2026 ▲ 0
Fluxs lenta
Реклама · fluxs.ru
AI

Анализ тендерной документации: как читать ТЗ и проект контракта за минуты, а не за вечер

Пять файлов, ТЗ на несколько мегабайт и день до окончания подачи. Знакомая картина для всех, кто участвует в тендерах. Написали в блоге, как разбирать тендерную документацию быстро и не пропустить главное: — где искать сроки, обеспечение, оплату, штрафы и гарантию (подсказка: почти всё в проекте контракта, а не в ТЗ); — почему технологии в ИТ-закупках почти никогда не пишут в названии; — как ИИ-разбор в Fluxs выписывает условия с дословными цитатами и сверяет их с документом; — зачем отдельный список вопросов для запроса разъяснений. Решение об участии остаётся за человеком. ИИ просто экономит вечер над ТЗ. https://fluxs.ru/blog/analiz-tendernoj-dokumentacii

Слогер 07.10.2026 ▲ 1