Нажимая “Принять все файлы cookie”, вы соглашаетесь на сохранение файлов cookie на вашем устройстве с целью улучшения навигации по сайту, анализа использования сайта и помощи в наших маркетинговых усилиях. Подробнее
Настройки cookie
Нажимая “Принять все файлы cookie”, вы соглашаетесь на сохранение файлов cookie на вашем устройстве с целью улучшения навигации по сайту, анализа использования сайта и помощи в наших маркетинговых усилиях. Подробнее
Узнайте, как внести свой вклад в проекты Ultralytics с открытым исходным кодом, и изучите лучшие советы, связанные с документацией, просмотром PR и использованием основных инструментов.
Основа программного обеспечения с открытым исходным кодом - это сотрудничество, обучение и совместное использование. Проекты с открытым исходным кодом - это отличный способ для людей объединиться и построить что-то большее, чем они сами. Мы в Ultralytics придерживаемся принципов открытого исходного кода и всегда призываем вас вносить свой вклад в наши проекты с открытым исходным кодом.
Если вы хотите внести свой вклад, будь то написание документации, рецензирование кода или решение проблем, но не знаете, с чего начать, или сталкиваетесь с какими-то проблемами, мы готовы помочь вам начать. В этой статье мы расскажем вам о том, как начать участвовать в проектах Ultralytics с открытым исходным кодом. Давайте окунемся в работу!
Важность вклада сообщества Ultralytics
Прежде чем мы рассмотрим, как внести свой вклад, давайте ответим на вопрос, почему вклад так важен. Мы очень верим в важность вклада сообщества Ultralytics . Участвуя в наших проектах с открытым исходным кодом, вы делаете больше, чем просто помогаете нам создавать лучшее программное обеспечение. Участники играют ключевую роль в обеспечении того, чтобы наши технологии оставались открытыми, совместными и постоянно развивались. Благодаря вашему вкладу наши проекты процветают, становятся доступными и полезными для пользователей и разработчиков по всему миру!
Помимо создания передового программного обеспечения, участие в проектах Ultralytics - это еще и фантастическая возможность для вашего роста. Вы сможете развить свои навыки кодирования, решения проблем и работы в команде, работая рядом с опытными разработчиками, которые могут подсказать и поделиться передовым опытом. Ваши усилия могут оказать реальное влияние на инструменты, которыми пользуются тысячи людей по всему миру. Участие в работе нашего сообщества также поможет вам расширить профессиональную сеть, открыть новые возможности и улучшить свое портфолио, чтобы привлечь внимание работодателей.
Рис. 1. Причины для участия в Open Source. Изображение автора.
Как начать работу с материалами Ultralytics с открытым исходным кодом
Если вы хотите принять участие в разработке или просто ознакомиться с последними версиями кода, следующим шагом будет клонирование репозитория Ultralytics . После этого вы можете перейти в каталог проекта и установить пакет в режиме редактирования, как показано в приведенном ниже фрагменте кода.
После настройки среды и знакомства с проектом вы можете изучить различные области, в которых вы можете оказать значимое влияние. Ultralytics предлагает несколько способов участия в проекте, и вы можете выбрать, как внести свой вклад, исходя из ваших навыков и интересов.
Вот обзор некоторых опций:
Документация: Вклад в документацию — отличный способ погрузиться в проект, оттачивая свои навыки письма. Вы можете помочь, улучшая существующую документацию, добавляя недостающие детали или создавая новые руководства, которые облегчат другим внесение своего вклада.
Исправление ошибок: Если у вас есть опыт программирования, подумайте о том, чтобы заняться исправлением ошибок. Это может варьироваться от незначительных корректировок до более сложных проблем, что даст вам возможность внести ощутимый вклад в проект.
Улучшения функциональности: Для тех, кто готов углубиться, работа над улучшениями функциональности может быть одновременно сложной и полезной. Это может включать добавление новых функций, улучшение существующих или работу над планом развития проекта.
Проверка запросов на внесение изменений (pull request reviews): Проверка запросов на внесение изменений - еще один ценный способ внести свой вклад, особенно если вы знакомы со стандартами и передовыми практиками проекта. Предоставляя обратную связь и предлагая улучшения, вы помогаете поддерживать качество и целостность кодовой базы.
Обсуждения в сообществе: Участие в обсуждениях в сообществе — отличный способ внести свой вклад, если вам нравится сотрудничать и делиться идеями. Участвуйте в текущих беседах, предлагайте новые идеи или помогайте другим, предлагая свои идеи и решения.
Каждая из этих областей предлагает уникальный способ внести свой вклад, и вы можете выбрать тот, который лучше всего соответствует вашим сильным сторонам и интересам. Помните, что каждый вклад, каким бы маленьким он ни был, играет ключевую роль в развитии и росте Ultralytics .
Рис. 2. Каждый вклад ценится в нашем растущем сообществе. Источник изображения: Envato Elements.
Внесение вклада в документацию Ultralytics с открытым исходным кодом
При внесении вклада в документацию Ultralytics обязательно просмотрите существующую документацию и проверьте наличие проблем или обсуждений, которые указывают на области, требующие улучшения. Это поможет убедиться, что ваш вклад будет направлен туда, где он наиболее необходим.
При написании или редактировании важно помнить, что необходимо следовать рекомендациям проекта для поддержания единообразия. Вот несколько советов по форматированию:
Начинайте каждый документ с четкого введения и используйте простой и доступный язык.
Используйте маркеры для списков, описательный текст для ссылок и изображения размером менее 1 МБ, чтобы страницы загружались быстро.
Если у вас возникнут вопросы по форматированию, самый простой способ перепроверить его — посмотреть, как форматировалась предыдущая документация.
Рис. 3. Пример форматирования в формате Markdown (слева) и конечный визуализированный документ (справа). Изображение автора.
После того, как вы сделали черновик, важно просмотреть его, создав документацию локально. Вы можете выявить любые проблемы перед отправкой. Для этого начните с клонирования репозитория и перехода в каталог проекта:
Далее вы можете установить необходимые зависимости:
Наконец, запустите документацию локально, чтобы просмотреть изменения:
Вы можете просмотреть локально созданную документацию, перейдя по адресу `http://127.0.0.1:8000/` в своем веб-браузере.
После проверки на ясность, точность и последовательность вы можете отправить запрос на внесение изменений (pull request) с четким описанием созданного вами документа. Обязательно поместите документ в соответствующий раздел, исходя из того, где он лучше всего подходит (руководства, решения, интеграции и т. д.). Пожалуйста, также ознакомьтесь с файлом index.md для соответствующих разделов и общим файлом mkdocs.yml и внесите необходимые обновления. Внимание к деталям поможет упростить процесс проверки и гарантировать, что ваш вклад будет хорошо интегрирован в проект.
Что следует помнить, внося вклад в код с открытым исходным кодом
Внося свой вклад в проект Ultralytics , важно следовать лучшим практикам, которые гарантируют, что ваш код будет чистым, поддерживаемым и легко интегрируемым. Вот несколько ключевых моментов, о которых следует помнить:
Избегайте дублирования кода: По возможности повторно используйте существующий код и минимизируйте ненужные аргументы.
Вносите небольшие, целенаправленные изменения: Сосредоточьтесь на небольших, целенаправленных изменениях, а не на крупных модификациях.
Упростите или удалите код: Ищите возможности упростить код или удалить ненужные части.
Пишите эффективные docstrings: Четко объясните, что делает ваш код, и дайте ссылки на соответствующие ресурсы.
Избегайте ненужных зависимостей: Добавляйте зависимости только в том случае, если они абсолютно необходимы.
Рис. 4. Лучшие практики документирования исходного кода.
Также важно учитывать долгосрочную поддерживаемость кодовой базы. Прежде чем вносить какие-либо изменения, спросите себя, могут ли ваши модификации нарушить существующий код, использующий Ultralytics. Если да, подумайте, как решить эту проблему и обеспечить максимальную совместимость ваших изменений.
После того как вы разработали часть кода для участия в проекте, вам нужно будет протестировать его. Вы можете использовать такие фреймворки, как pytest, чтобы проверить свои изменения перед отправкой. Последовательное форматирование кода - еще один аспект вашего вклада, который очень важен. Такие инструменты, как Ruff Formatter , помогут вам сохранить стилистическую последовательность и detect любые логические ошибки или несоответствия в вашем коде.
Рассмотрение запросов на включение изменений
Просмотр запросов на слияние (PR) - это отличный способ внести свой вклад! PR создается, когда кто-то просит слить его изменения в основной проект. Это помогает поддерживать проект Ultralytics в рабочем состоянии. Когда вы просматриваете PR, убедитесь, что вы понимаете, почему были сделаны изменения. Автор должен четко объяснить цель и преимущества обновления, и вы должны увидеть в PR доказательства тщательного тестирования.
Давайте рассмотрим несколько ключевых моментов, на которых следует сосредоточиться.
Проверьте наличие юнит-тестов: Убедитесь, что PR включает тесты для новых функций или изменений, чтобы подтвердить, что код работает должным образом и не вызывает проблем.
Просмотрите обновления документации: Убедитесь, что документация обновлена с учетом изменений или новых функций, включая примеры, ссылки на API и другие соответствующие сведения.
Оцените влияние на производительность: Учитывайте, как изменения влияют на производительность. При необходимости запросите сравнительные тесты производительности или дополнительное тестирование.
Проверка тестов CI: Убедитесь, что все тесты непрерывной интеграции (CI) пройдены, включая проверки форматирования кода и результаты модульных тестов.
Совместная работа над исправлениями: Если какие-либо тесты не пройдены, поработайте с автором, чтобы решить проблемы, прежде чем утверждать PR.
В качестве рецензента обязательно предоставляйте конкретные и четкие отзывы о любых проблемах или опасениях. Предлагайте предложения по улучшению и задавайте вопросы, которые помогут автору продумать потенциальные проблемы. Призывайте их следовать передовым практикам в кодировании, тестировании и документировании и не стесняйтесь указывать им на ресурсы, которые могут помочь. И последнее, но не менее важное: всегда признавайте усилия, которые автор вложил в PR. Положительные отзывы помогают поддерживать дружелюбную и совместную атмосферу в сообществе открытого исходного кода.
Вклад – это прежде всего сообщество
Участие в проектах с открытым исходным кодом, таких как Ultralytics , может дать вам вдохновляющее чувство сообщества. Пишете ли вы код, проверяете PR, обновляете документацию или участвуете в обсуждениях - все ваши усилия помогают проекту расти и развиваться. Ответы на вопросы или участие в дискуссиях, будь то на GitHub, Discord, Subreddit или других форумах, - это ценный способ внести свой вклад и наладить контакт с другими людьми. Помните, что ваш вклад, каким бы маленьким он ни был, оказывает значительное влияние и способствует созданию атмосферы сотрудничества и поддержки для всех участников!