Когда вы только начинаете знакомиться с открытым исходным кодом, вы задаетесь вопросом:

Я немного знаю [язык программирования]. Я хочу попрактиковаться, помогая. Как мне найти проект с открытым исходным кодом, в который я могу внести свой вклад? Хм ... Я не знаю, с чего начать. Это кажется сложным.

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

Подход №1: внесите свой вклад в то, что любите

Самый распространенный ответ, который я получаю, - это внести свой вклад в то, что вы уже используете каждый день. То, что вас интересует.

Подход № 2: ищите проекты для начинающих.

Вот несколько характеристик проектов с открытым исходным кодом для начинающих:

  • Четко определенные, подробные инструкции по участию, которые включают локальную настройку проекта, рабочий процесс Git и рекомендации по стилю кодирования.
  • Правильная классификация проблем с использованием таких ярлыков, как «хорошо обнаружившая первую ошибку», «новичок» или «только впервые обнаружившая ошибку».
  • Активность по этим вопросам для начинающих, с быстрым ответом на предыдущие вопросы

Подход № 3: Прекратите поиск проектов и начните поиск ошибок.

Это подход, который я выбрал, и он является предметом данной статьи.

Попробовав подходы №1 и №2, я перестал думать о проектах. Вместо этого я сосредоточился на поиске ошибок, которые, как я думал, я мог бы исправить.

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

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

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

Так как же начать с поиска ошибок?

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

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

Поиск хороших ошибок для новичков

Хорошее место для начала поиска ошибок - Up For Grabs. Вся цель сайта - помочь новым участникам разобраться, поддерживая список проектов с проблемами, удобными для новичков. Это отличное место для начала, если вы совершенно заблудились.

GitHub имеет мощную поисковую систему, в которой вы можете настроить поиск различными способами. Самый простой способ поиска - по ярлыку выпуска.

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

Вы можете еще больше сузить область поиска в зависимости от языка программирования, который вам удобен, добавив language: name в свой поисковый запрос. Например, вот все задачи, помеченные как« новичок в JavaScript».

Issuehub.io - это инструмент для поиска проблем по ярлыку и языку, если вам утомительно запоминать синтаксис поиска GitHub.

Если вы новичок в открытом исходном коде, вам обязательно стоит начать с Только для новичков. Это инициатива Кента С. Доддса, основанная на его собственной публикации Только для новичков и Верните доброту в открытый исходный код Скотта Хансельмана. Ошибки помечены как только для новичков.

Вы также можете найти этот Твиттер-бот полезным. Он публикует в Твиттере все проблемы, помеченные как только для новичков.

Еще один отличный способ найти проблемы - YourFirstPR от Шарлотты Спенсер. Они демонстрируют стартовые проблемы на GitHub, которые могут быть легко решены новыми участниками.

Awesome-for-beginners - это репозиторий на GitHub, который собирает проекты с хорошими ошибками для новых участников и применяет ярлыки для их описания.

Openhatch - некоммерческая организация, которая помогает снизить барьеры для входа в open source. Здесь также можно найти ошибки и проекты.

Экосистема участников Mozilla

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

Но Mozilla также использует свой собственный инструмент под названием Bugzilla в качестве основного средства отслеживания проблем. Они размещают некоторые из своих задач здесь и используют Mercurial для контроля версий вместо Git.

Firefox - один из проектов, использующих Bugzilla и Mercurial. Если честно, это немного страшно. Это очень важно. Поэтому я рекомендую этот отличный пост в блоге и видео, который отлично помогает демистифицировать эти инструменты.

На протяжении многих лет Mozillians пытались максимально упростить участие в Mozilla. Вот их усилия:

  • Первые хорошие ошибки: это ошибки, которые разработчики определили как хорошее введение в проект. Их часто (но не всегда) относительно легко решить.
  • Исправленные ошибки: для этих ошибок назначен наставник, который будет там в IRC, чтобы помочь вам, когда вы застрянете во время работы над исправлением. Они часто просматривают ваш патч и оставляют отзывы. Если вы не знаете, с чего начать работу над проектами Mozilla, это лучшее место для начала. У вас будет кто-то, кто ответит на ваши вопросы, когда вы почувствуете, что натолкнулись на стену. Все наставники, с которыми я работал, всегда были очень отзывчивыми, отзывчивыми и полезными.
  • Bugs Ahoy: это сайт, посвященный поиску ошибок в Bugzilla. У него удобный интерфейс, где вы можете фильтровать по языку.
  • Firefox DevTools: этот сайт посвящен сообщениям об ошибках в инструментах разработчика в браузере Firefox. Вы можете сортировать по компонентам DevTools, над которыми хотите работать.
  • Что я могу сделать для Mozilla - это отличный способ изучить и выяснить, над чем вы можете работать, ответив на кучу вопросов о ваших навыках и интересах.
  • Запустить Mozilla: это учетная запись в Твиттере, в которой публикуются твиты о проблемах, подходящих для новых участников экосистемы Mozilla.

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

Если вы считаете, что этот пост был полезен, нажмите «︎ ❤» , чтобы помочь продвинуть его среди других.