Эта статья нуждается в редакционном обзоре. Как вы можете помочь.
Перевод не завершен. Пожалуйста, помогите перевести эту статью с английского.
Эта страница служит пособием для Ваших первых шагов в сообществе Mozilla. Добро пожаловать, мы рады видеть Вас :)
Нужна помощь?
Сообщество Mozilla гордится тем, что является открытым, доступным и дружественным сообществом для новых участников. Если у Вас возникают какие-нибудь сложности, мы сможем ответить на Ваши вопросы в IRC комнате #introduction на irc.mozilla.org.
Мы знаем, что даже до того, как Вы начнёте вносить вклад, настройка Firefox для работы или поиск ошибки, которая хорошо подходит для Ваших навыков может быть проблемой. Мы всегда ищем способы улучшить этот процесс и сделать Mozilla более открытой, доступной и простой для участия. Если после прочтения этой документации у Вас остаются ещё какие-то вопросы, то Вы можете обратиться к Mike Hoye на [email protected], чтобы мы могли разрешить проблему для Вас и каждого нового участника.
Какие навыки мне нужны?
Mozilla является большим проектом, и мы рады получить помощников с различными навыками.
- Если Вы знаете C++, например, Вы можете помочь разработке ключевых систем Firefox, Firefox OS и других продуктов Mozilla.
- Если Вы знаете JavaScript или HTML/CSS, Вы можете внести свой вклад во внешний интерфейс Firefox или Gaia, прикладной уровень Firefox OS.
- Если Вы знаете Java, Вы можете способствовать Firefox Mobile - Firefox на Android - и MozStumbler.
- Если Вы знаете Python, Вы можете помочь нашим веб сервисам, включая Firefox Sync или Firefox Accounts.
- Если Вы знаете Make, shell, Perl или Python, Вы можете содействовать нашей системе сборки.
- Если Вы знаете C, Вы можете внести свой вклад в NSS, Opus и Daala.
- Если Вы знаете Rust, Вы можете способствовать rustc или Servo, веб-браузерному движку, предназначенному для параллелизма и безопасности.
- Если Вы знаете Go, Вы можете помочь Heka, инструменту для обработки данных.
- И также есть много способов внести свой вклад в миссию Mozilla без программирования. Если Вы хотите принять участие в проектировании, поддержке, переводе, тестировании или других видах помощи, загляните на страницу Возможности для Волонтеров.
Возможно, Вы не знаете программирования, но Вы всё ещё хотите начать обучение? Это замечательно, программа Webmaker для Вас, и есть ещё больше ресурсов, доступных на Mozilla Developer Network!
Шаг 1 - Сборка Firefox, Thunderbird или других приложений
Следуйте нашей простой инструкции по сборке Firefox, или сборке Thunderbird. Это достаточно просто, но может занять некоторое время, поэтому Вы можете перейти к следующим этапам пока происходит сборка.
Больше информации по сборке Вы найдете тут.
Шаг 2 - Как помочь сообществу Mozilla
Смотрите Mozilla Firefox: Development Process. Thunderbird оперирует похожими процессами.
Шаг 3 - Найти чем помочь
Исправить простую ошибку
Если есть что-то, что Вы хотели бы исправить в Firefox, Thunderbird или в других любимых приложениях сообщества Mozilla, то это хорошее место для начала. Есть несколько способов сделать это:
- Поиск в bugzilla по релевантным ключевым словам,
- Найти в списке продуктов и их компонентов на bugzilla компонент, который Вы хотели бы исправить. Затем посмотреть, нет ли багов, связанных с этим компонентом.
- Спросить в irc каналах #introduction or #developers на irc.mozilla.org.
Находить ошибки - хороший старт для новичков
Разработчики Mozilla помечают некоторые ошибки как легкие (для новичков), чтобы начинающим было легче разобраться в процессе после исправления этих ошибок:
- Ошибки от наставников (или альтернативные, обычно затрагивает фиксы в интерфейсе) Вы получаете от Ваших наставников, которые помогают Вам шаг за шагом в решении ваших вопросов. Обычно в этих ошибках достаточно информации чтобы приступать к их испавлению. Всякий раз, когда Вы нуждаетесь в помощи, обратитесь к наставнику по IRC, в самой ошибке, или по электронной почте. Когда Вы исправили ошибку, он поможет внести исправления в ветку проекта.
- "Good" первые ошибки могут быть слегка устаревшими, но в какой-то момент их жизни мы посчитали, что они были бы хорошим началом для новичков в Mozilla. Мы находимся в процессе переноса этих ошибок, в ошибки для наставников, но более поздние "Good" ошибки могут быть хороши началом, если нет соответствующих ошибок.
- Студенческие проекты являются крупными проектами, которые могут быть подходящими для студента. Конечно, если Вы не являетесь студентом, Вы все равно не должны стесняться исправлять ошибки этого рода.
Шаг 4 - Исправление ошибки
Мы доверяем это Вам. Кроме того, у нас есть ресурсы, которые могут помочь:
- Проверить тут https://developer.mozilla.org/En/Developer_Guide,
- Обратитесь за помощью в комментарии к ошибке, или на IRC каналах #introduction или #developers,
- Наш чек-лист для ревьюеров поможет Вам добиться благосклонности ревьюеров при проверке Вашего изменения.
Если Вы исправили ошибку, вероятно, это потребует обновления документации разработчика. Как только ошибка исправлена, не забудьте добавить dev-doc-needed
ключевое слово с ошибкой (или попросите кого-то сделать это за Вас, если у Вас нет editbugs привилегии на Bugzilla). Эта отметка включает индикатор о том что требуется внести изменения и в документацию. Если Вы не отметите ошибку, Ваша работа может остаться незамеченной командой в документах! Вы можете отметить ошибку этим ключевым словом в любое время, Вам не нужно ждать, пока она на самом деле будет исправлена.
Конечно, наша документация это вики, Вы можете помочь обновлению документации себе. Даже если вы не знакомы с навыками письма, имейте в виду, что наши полезные, счастливые гномы документации будут следовать за вами и очищать ее для вас :)
Шаг 5 - Получите отзывы по вашему коду
Однажды поправив ошибку, приложите патч к ошибке, и попросите о ревью вашего кода. Сделайте это, нажав по ссылке Детали на вашем документе, затем выставите review флаг к ? and введедите bugzilla ID Вашего ревьюера (либо адрес электронной почты :UniqueName). Очень важно привязать к задаче bugzilla ID, иначе запрос на ревью будет потерян. Как попросить человека проверить Ваш код?
- Если Вы решали задачи от Вашего наставника, то Вы можете попросить его просмотреть Ваш код , это самый простой вариант.
- Запустите
hg blame
и посмотрите людей, которые работали над функцией которые Вы исправляли - они могут быть хорошими кандидатами. - Исправленная ошибка сама по себе может содержать четкое указание на человека, которого можно попросить о ревью.
- Есть похожие ошибки или связанные с ней темы? В этом случае, ревьюер этих ошибок может быть хорошим выбором.
- У нас есть устаревающий список модулей, в котором перечислены люди и владельцы модулей, которые могут быть хорошими ревьюерами. В худшем случае, установите владельца модуля в качестве рецензента, и попросите их в комментариях выбрать кого-то лучше, если у них нет времени.
Шаг 5b - Следите за отзывами
Если Вы попросили сделать обзор, но рецензент ничего не говорит в течение нескольких дней, не бойтесь спрашивать его. Просто добавьте комментарий к ошибке, говоря 'review ping?', еще через несколько дней, если он до сих пор не ответил. Если он не отвечают после этого обратитесь за помощью в #introduction or #developers.
Шаг 6 - Ответ на ревью
Часто, ревьюер Вашего кода будет просить Вас вносить изменения, возможно незначительные, но возможно и что-то серьезное. В любом случае, не забудьте просить, как внести исправление, если Вы не знаете как! Прикрепите новое исправление к ошибке и попросите пересмотреть Ваши исправления. Если они дают Вам r+, это означает, что Ваше исправление будет принято в дерево проекта!
Шаг 7 - Получение актуального кода в дереве
Так как Вы еще не имеете возможности править код в дереве, Вы должны попросить кого-то о помощи. Если у Вас есть наставник, попросите его. Если нет - попросите ревьюера. Если ревьюер слишком занят, то отметьте, что необходима фиксация, добавив пару необходимых ключевых слов(checkin-needed). После чего люди у которых есть доступ, внесут Ваше изменение в общюю ветку.
Шаг 8 - Повторение
Поздравляем, Вы исправили Вашу первую ошибку! Можете вернуться к шагу 3 и повторить упражнение. Теперь, когда Вы исправили свою первую ошибку, Вы можете просить доступ к репозиторию 1-го уровня, с которым Вы можете нажать на tryserver и получить обратную связь о Ваших изменения на различных платформах. После исправления некоторого количества ошибок, Вам следует запросить 2/3 уровень доступа (в зависимсти от репозитория, который Вы используете) - Вы сможете отправить Ваш код на сервер после того, как он был изменен.
В заключении
Мы находимся в процессе совершенствования информации на этой странице для новичков в проекте. Мы будем переводить остальные страницы в ближайшее время, а пока Вы можете ознакомиться с ними в их нынешнем виде:
- A guide to learning the mozilla codebase.
- A beginner's guide to SpiderMonkey, Mozilla's Javascript engine.
- Mozilla platform development cheatsheet.