Глава 24 · Что дальше? Roadmap Python-разработчика

Первый вклад в Open Source

Маленький проверяемый вклад, уважение к правилам проекта, review и лицензиям.

Первый вклад может быть маленьким

Open Source не требует начинать с нового алгоритма в CPython. Исправление опечатки, воспроизводимый bug report, тест для подтверждённого дефекта или уточнение примера может быть полезным вкладом. Ценность определяется правилами конкретного проекта и качеством взаимодействия.

Выбрать проектлицензия, область, активностьПрочитатьREADME и CONTRIBUTINGПодтвердить Issueграницы и воспроизведениеИзменитьfork или branch, сфокусированный diffПроверитьтесты и локальные проверкиPull Requestreview и исправления
Небольшой вклад проходит техническую проверку и review.

Рабочая последовательность

  1. Выберите проект: проверьте область, активность, лицензию и соответствие Вашим навыкам.
  2. Прочитайте README: разберитесь в назначении, установке и поддерживаемых версиях.
  3. Прочитайте CONTRIBUTING: соблюдайте code of conduct, шаблоны и команды проверки.
  4. Выберите Issue: найдите небольшую подтверждённую задачу или согласуйте новую.
  5. Воспроизведите: запишите минимальный сценарий на поддерживаемой версии.
  6. Создайте fork или branch: следуйте правилам проекта и изолируйте изменение.
  7. Внесите изменение: держите diff сфокусированным и не смешивайте несвязанные правки.
  8. Выполните тесты: добавьте проверяемое доказательство и запустите локальные проверки.
  9. Откройте Pull Request: опишите причину, область и выполненную проверку.
  10. Пройдите review: отвечайте на вопросы спокойно и обсуждайте требования и компромиссы.
  11. Внесите исправления: обновите код и тесты; после решения поблагодарите участников.

Социальные навыки являются частью инженерии

У сопровождающих проекта мало времени. Короткий контекст, воспроизводимый пример и сфокусированный diff сокращают время на review. Несогласие обсуждайте через требования и компромиссы. Не принимайте замечание к коду как оценку личности и не требуйте немедленного ответа.

Лицензии и происхождение кода

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

Хорошая первая цель
Ищите задачу, которую можно понять и проверить за несколько занятий. Маленький принятый diff учит чтению чужого кода, правилам проекта и review лучше, чем большой необсуждённый rewrite.
Официальная документация
Git reference
GitHub pull requests documentation
pytest documentation