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

Это сообщение из Grokking Python, бесплатной рассылки, доступной на Substack от Educative, лучшей в мире обучающей платформы для разработчиков программного обеспечения. Здесь мы делимся с нашей командой лучшей информацией и ресурсами, связанными с Python — тем, что, по нашему мнению, может действительно улучшить ваше понимание.

Привет, читатели Grokking Python!

Мы любим Python за его активное сообщество. Будучи языком программирования с открытым исходным кодом, Python пользуется вкладом разработчиков со всего мира. Если вы когда-нибудь застревали на проблеме, связанной с Python, вы, вероятно, получили помощь от коллег Pythonistas или документацию с открытым исходным кодом. Это сила открытого исходного кода в действии!

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

ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ: Начало участия в проектах с открытым исходным кодом

Следующие ответы основаны на лучших практиках, разработанных экспертами GitHub. Большую часть этой информации вы можете применить к проектам с открытым исходным кодом в целом (не только к проектам Python).

Что именно означает термин «открытый исходный код»?

Программное обеспечение с открытым исходным кодом (ПО с открытым кодом) — это код, предназначенный для публичного доступа: каждый может видеть, изменять и распространять его по своему усмотрению.

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

Почему я должен рассмотреть возможность стать участником проекта с открытым исходным кодом?

Существует множество причин для участия в проектах с открытым исходным кодом:

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

Как я могу помочь обеспечить положительный опыт?

Во-первых, рассмотрите различные способы, которыми вы можете внести свой вклад в проект. (Подсказка: это не ограничивается кодированием). Например, люди помогают проектам следующим образом:

  • Планирование встреч или других мероприятий
  • написания документации
  • Проводить исследования пользователей для улучшения навигации
  • Очистка дублирующихся вопросов на GitHub или предложение новых меток для вопросов
  • написание учебников
  • Создание информационных бюллетеней или участие в уже существующих.

Далее узнайте о том, как организован проект:

  • Кто изначально был автором проекта?
  • Кто владеет им сейчас?
  • Кто является сопровождающим?

Это все важные люди, и их идентификация поможет вам сориентироваться в проекте.

Вы также захотите посмотреть на документацию проекта. Обычно на верхнем уровне репозитория проекта на GitHub вы найдете следующие файлы: LICENSE, README, CONTRIBUTING и CODE_OF_CONDUCT. Проекты могут также собирать документацию на отдельном сайте.

Полезно узнать, какие инструменты использует проект, которые обычно включают следующее:

  • Трекер проблем: где люди обсуждают проблемы, связанные с проектом.
  • Pull requests: где люди обсуждают и проверяют изменения, которые находятся в процессе разработки.
  • Дискуссионные форумы или списки рассылки: где обсуждаются темы для разговоров, в отличие от отчетов об ошибках или запросов функций (хотя некоторые проекты используют трекер проблем для всех разговоров).
  • Синхронный чат-канал: например, Slack или IRC, где могут происходить более непринужденные разговоры.

Наконец, постарайтесь установить личные связи. Присоединяйтесь к разговору в обсуждениях запросов на доработку или страниц проблем на GitHub, или используйте Twitter для установления контактов. Налаживание связей укрепляет доверие и поможет добиться того, чтобы ваш вклад был рассмотрен и принят. И никогда не знаешь: возможно, эти связи помогут вам получить следующую должность (или первую работу) в области разработки программного обеспечения.

По каким критериям я могу выбрать проект?

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

  • растет ли число участников
  • дату последней фиксации в репозитории GitHub (в идеале в течение недели или месяца).
  • Количество мейнтейнеров
  • Уровень активности в чате

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

Как я могу определить проблемы, над которыми мне предстоит работать?

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

Вы также можете посетить репозиторий GitHub проекта и добавить «/contribute» в конец URL. Например, посетив https://github.com/scrapy/scrapy/contribute, вы увидите относительно доступные задачи для тех, кто впервые вносит свой вклад в проект Scrapy.

Как я могу внести свой вклад?

После того, как вы определили проблему, над которой нужно поработать, вы захотите провести небольшое дополнительное исследование, чтобы убедиться, что она не обсуждается в другом месте. Проверьте README, открытые и закрытые проблемы, список рассылки и Stack Overflow. Если вы не найдете никаких признаков этого, продолжайте.

Затем ознакомьтесь с руководством по предоставлению материалов в проекте.

Затем на GitHub откройте проблему или запрос на исправление. Выбор способа зависит от типа вносимых изменений, но GitHub предлагает некоторые рекомендации.

Наконец, откиньтесь на спинку кресла и посмотрите, что произойдет. Возможны следующие варианты:

  • Ничего
  • Ваш вклад изменен
  • Ваш вклад не принят
  • Ваш вклад принят

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

Есть ли другие ресурсы, о которых я должен знать?

Да! Люди, увлеченные программным обеспечением с открытым исходным кодом, создали веб-ресурсы, которые помогут вам найти свой путь в качестве нового участника. К ним относятся:

  • GitHub Explore
  • Пятница открытых исходников
  • Только для новичков
  • CodeTriage
  • 24 Pull Requests
  • Взято на вооружение
  • Contributor-ninja
  • Первые вклады
  • SourceSort

Готовы начать? Тогда читайте дальше!

7 проектов Python с открытым исходным кодом, достойных вашего времени

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

1. coala

Coala — это библиотека, предоставляющая унифицированный интерфейс командной строки для линтинга и исправления кода, независимо от того, какие языки вы используете. Другими словами, coala — это как проверка орфографии и грамматики вашего кода. (Название расшифровывается как «COde AnaLysis Application»).

Нам нравится coala за ее относительную простоту и приветливую документацию. Вместе эти качества облегчают работу новых пользователей и участников.

Узнайте больше о coala:

  • Ознакомьтесь с руководством для новичков
  • Прочитайте руководство по внесению вклада на GitHub
  • Посетите репозиторий проекта на GitHub.

2. Django

Django — это высокоуровневый веб-фреймворк на языке Python, который упрощает запуск веб-сайтов, сокращая количество задач по разработке. Django считается полным и комплексным среди веб-фреймворков, потому что он поставляется почти со всеми приложениями, которые могут понадобиться веб-сайту. (Хорошее сравнение Django с Flask, более легким веб-фреймворком для Python, можно найти в этой статье на блоге Educative).

Пусть вас не пугает сложность Django. Даже если вы новичок в Python, вы всегда можете внести свой вклад, помимо кода. (Подробнее об этом позже в FAQ).

Узнайте больше о Django:

  • Прочитайте документацию «Вклад в Django
  • Посетите репозиторий проекта на GitHub

3. Keras

Keras — это высокоуровневый Python API с акцентом на глубокое обучение. Он включает специализированные репозитории, такие как компьютерное зрение, и рекламирует себя как «API, созданный для людей, а не для машин».

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

Узнайте больше о Keras:

  • Прочитайте руководство по участию в проекте
  • Посетите репозиторий проекта на GitHub

4. Requests

Requests — это библиотека HTTP для Python, которая позволяет легко отправлять запросы HTTP/1.1. Вклад в Requests может дать вам возможность получить широкую известность, поскольку это один из самых скачиваемых пакетов Python в настоящее время.

Тем не менее, не позволяйте известности проекта запугать вас. Requests обещает среду, где рады всем участникам, если они следуют одному правилу: «Будь сердечен или иди своей дорогой».

Узнайте больше о Requests:

  • Посетите репозиторий проекта на GitHub.

5. Scrapy

Scrapy — это высокоуровневый фреймворк для веб-скрейпинга, который может просматривать веб-сайты и извлекать данные с их страниц. Он также отличается высокой скоростью работы. Scrapy используется для поиска данных, обработки информации и исторического архивирования. (Хорошее введение в веб-скрейпинг можно найти в этой статье на блоге Educative).

Scrapy обещает здоровое и активное сообщество, и это хороший стартовый проект для начинающих разработчиков с открытым исходным кодом.

Узнайте больше о Scrapy:

  • Прочитайте документацию по вкладу в Scrapy
  • Посетите репозиторий проекта на GitHub

6. Ansible

Ansible — это платформа автоматизации ИТ, которая упрощает развертывание и поддержку приложений и систем. Она может автоматизировать управление конфигурацией, развертывание приложений, предоставление облачных ресурсов и многое другое.

Ansible имеет подробную документацию и является еще одним отличным проектом для начинающих разработчиков.

Узнайте больше об Ansible:

  • Читайте документацию Community Guide
  • Посетите репозиторий проекта на GitHub

7. cookiecutter

Cookiecutter — это утилита командной строки, которая создает проекты из шаблонов, называемых «cookiecutters». Например, эта утилита позволяет создать проект пакета Python из шаблона проекта пакета Python. cookiecutter приветствует все типы вкладов и обещает всегда отдавать должное.

Узнайте больше о cookiecutter:

  • Прочитайте документацию по внесению вклада
  • Посетите репозиторий проекта на GitHub.

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

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

Нам не терпится увидеть, что вы сделаете с открытым исходным кодом Python! Если у вас есть опыт участия в проекте или советы для новых участников, мы будем рады услышать об этом. Просто дайте нам знать об этом в комментариях или ответив на это письмо.

Как всегда, счастливого обучения!

Начать обсуждение

С какими проектами с открытым исходным кодом вы работали или надеетесь работать? Был ли этот пост полезен? Дайте нам знать в комментариях ниже!

Оцените статью
Procodings.ru
Добавить комментарий