Многие разработчики часто проходят мимо свободного программного обеспечения (open source) по многим причинам: недостаток времени, боязнь выставить свою работу на показ и быть раскритикованным или еще каким-либо. Если вы читаете эту статью, скорее всего, это не о вас и вы уже на пути к совершенствованию навыков программирования и ценного вклада в мировое сообщество!
Основная идея заключается в том, что вам не обязательно быть программистом-суперзвездой, чтобы помогать разрабатывать свободные программы. Вам достаточно познакомиться с понравившимся вам проектом. Сила свободного, бесплатного программного обеспечения в его сообществе. Успешны проекты, в которых участвует активная пользовательская база. Если вы можете помочь проекту расти в плане сообщества или помочь активным разработчикам быть продуктивнее – это тоже имеет большой вес.
1. Читайте документацию.
Удивительно, как много людей участвуют в самых разнообразных проектах (не только с открытым исходным кодом) и не пользуются всеми прелестями существующей документации и инструкциями. Просто прочитайте материалы к проекту и вы автоматически попадете в топ 10% членов сообщества. Чтение документации не только поможет вам узнать лучше о текущем состоянии проекта, но и особенностях работы с ним. Вы можете начать сразу исправлять опечатки, ошибки и несоответствия изложенной информации.
2. Участвуйте в обсуждениях.
Подключитесь к email рассылке, IRC или Stack Overflow для обсуждения и предложения идей. Слушайте и читайте первыми о новых событиях или создавайте их сами. Вы можете помочь новичкам разобраться в проекте, указывая им на релевантные материалы документации и, в последующем, отвечать на более глубокие и сложные вопросы на ряду с предложением новой функциональности и так далее.
3. Пользуйтесь этими программами.
Вместо тысячи слов, достаточно просто скачать и установить программы! Пользуйтесь ими и прочувствуйте работу с ними как пользователь. Если вы не можете применить программу под свои нужны – возможно вы трудитесь не над тем проектом. Оценку ПО с точки зрения обычного пользователя сложно переоценить. Во многих успешных компаниях хорошей практикой считается так называемый “dogfooding”, когда разработчики сами пользуется тем, что они создают. Скорее всего вы очень быстро столкнетесь с раздражающими ошибками. Это хорошо, главное не отчаиваться. В этом и есть одна из прелестей программ с открытым исходным кодом – у вас есть возможность менять что-то, что вам не нравится.
4. Создавайте отчеты об ошибках.
Самая простая форма участия – создание отчетов об ошибках. Если вы видите, что что-то сломалось – задокументируйте это. Так просто. Вероятно, кто-то заметит и починит это. Когда вы создаете отчет – крайне важно описать контекст и максимальное количество информации, насколько это возможно. В идеальном отчете об ошибках есть шаги выполнения для достижения ошибочной ситуации. Когда разработчик будет его исправлять, то ему сначала будет необходимо его воспроизвести и убедиться, что он реально существует и уловить взаимосвязь происходящих с программой состояний. И у разработчика должна быть возможность проверить, не воспроизводится ли ошибка после исправления. В противном случае ошибка так и может остаться неисправленной.
Между прочим, у нас целая лекция, посвященная занесению баг-репортов. Ознакомиться с ней вы можете посетив курсы Тестирования ПО в Минске
5. Вносите исправления.
Теперь, когда вы погрузились в проект и уже состоялись как активный член сообщества, когда вы уже имеете навыки программирования и полны желания помочь, берите баги с низким приоритетом, познакомьтесь с системой контроля версий и вступайте в ваш личный увлекательный квест. Если вы еще не достигли требуемого уровня знаний, то устремитесь в соответствующие книги, документацию, уроки, форумы, чтобы быть полезным гражданином сообщества и следовать принципам разработки, принятым на проекте.
6. Внедряйте новую функциональность.
К этому моменту, вы уже должны уже чувствовать себя уверенно в кодовой базе проекта. Вы уже перечитали ее несколько раз (полностью или частично) и внесли несколько небольших исправлений ошибок. Вы полностью понимаете архитектуру и как разные части взаимодействуют между собой и обмениваются данными. У вас появилась отличная идея новой функциональности. В отличии от исправлении ошибок, новую функциональность необходимо обсудить еще до внедрения с ведущими разработчиками. Ваша идея может не вписываться в основную концепцию проекта. Может есть альтернативные решения. Может кто-то уже работает над чем-то похожим. Меньше всего вам бы хотелось долго и упорно над чем-то работать, что в последующем выбросят, не так ли? Сначала убедитесь, что ваша идея понравится сообществу.
7. Напишите руководство или урок.
Некоторые проекты свободного ПО огромны и очень сложны даже для опытных разработчиков. Вы все же можете внести ценный вклад, написав инструкцию по установке или работе/разработке. Чем более зрел проект – тем более возможны разнообразные настройки, режимы и варианты использований. Потенциальные пользователи могут просто потерять интерес, запутавшись в документации. Напишите пошаговый урок, который демонстрирует использование проекта.
8. Напишите программу-пример.
Это может быть реализовано как в рамках какого-то урока, так и самостоятельно. Напишите нетривиальное приложение для других людей, чтобы они использовали его в жизненных ситуациях. Написание такой программы улучшит также и ваше владение составляющими проекта и помогут выработать большую уверенность при начале разработки.
Чтобы научиться самостоятельно создавать программы – посетите наши курсы Java в Минске
9. Начните свой проект.
Это отличный шанс сделать мир лучше. Если ваша цель вам неподсильна в одиночку – вы всегда можете объявить о наборе людей в вашу команду. Если они разделяют ваши взгляды, то вы сможете сами вырастить собственное сообщество и получить ценные опыт и знания.
10. Общайтесь с реальными пользователями.
Публичные выступления могут казаться чем-то крайне тяжелым вначале, однако это весьма ценный навык во всех сферах жизни. Это также может помочь вашим новым проектам или проектам, в которых вы участвуете. Заявите о своем существовании. Также участвуйте во всяческих хакатонах и конференциях, заведите блог или пишите статьи!
Запишитесь прямо сейчас или закажите звонок с бесплатной консультацией!
Записаться сейчас / Бесплатная консультация