Как вы связались с сообществом с открытым исходным кодом?
Похоже, что нормальная прогрессия для присоединения к проектам заключается в том, чтобы немного помогать, зарабатывать доверие, а затем принимать в качестве члена сообщества (т.е. иметь доступ к фиксации).
Теперь, я уже, по-видимому, знаю "лучший способ" того, как получить инволюцию, в манере говорить; это не мой вопрос; я надеялся достичь: как все остальные были в восторге? Несомненно, не все пошли по пути "найти проект и отправить патчи" - или они? Я не знаю никого в сообществе с открытым исходным кодом, поэтому я просто хочу узнать...
Возможно, вы уже знали кого-то в сообществе и просто впали в него? Может быть, вы были разочарованы какой-то ошибкой и в результате стали вносить свой вклад? Возможно, вы просто обнаружили проект на SourceForge...
Обновление:
Похоже, что самая распространенная причина - просто царапать зуд, quote singpolyma: "Ищете проект, который может внести свой вклад, часто не правильный путь". Вместо этого вы должны присоединиться к сообществу с открытым исходным кодом, внося свой вклад в проект, который вы уже знаете и используете.
Важно:
Пожалуйста, пожалуйста, пожалуйста: Расскажите мне о своем конкретном опыте, никаких общих ответов, пожалуйста. Кроме того, ответьте, только если вы либо участник проекта, либо участник патча. Пожалуйста, не давайте советы о том, как присоединиться к сообществу, это не тот ответ, который я ищу. Если вы хотите дать совет по вступлению в сообщество, ответьте в этом другом разделе.
Отличные ответы:
Связанный:
Ответы
Ответ 1
Мои личные анекдоты:
-
Я связался с сообществом Tcl, когда он впервые начинался в 1991 году или около того. Список рассылки и более поздняя новостная группа usenet были очень важны для общения с людьми. Я специализировался на евангелизации и обучении пользователей, и в итоге в итоге написал две книги по этому вопросу. Один из них по-прежнему печатается через десять лет:
http://www.amazon.com/dp/0201634740
-
Теперь я использую много Python и очень люблю пакет cx_Oracle. Снова я был активен в списке рассылки и внес несколько исправлений.
-
Я сделал пару пакетов программного обеспечения, которые я написал для работы. Создав их с открытым исходным кодом, я смог получить хорошие отзывы, и поскольку они не были "секретным соусом" моих работодателей в то время, они не прочь поделиться кодом. Двумя наиболее популярными пакетами были
http://sourceforge.net/projects/kap/ Кинетический прикладной процессор - это было создано, когда я работал на китайском интернет-магистрале.
http://code.google.com/p/orapig/ - OraPIG, генератор интерфейса Oracle Python - он сгенерировал код Python для вызова API, определенных в базе данных, и включает интерфейс базы данных XML-RPC.
Совет:
Вместо того, чтобы искать проекты для присоединения, попробуйте внести вклад в проекты, которые вы уже используете.
Часто трудно перейти в "основное" развитие, потому что (а) на большом проекте, который может быть довольно большим куском кода для понимания, и (б) есть, вероятно, основная группа людей, уже работающих на нем.
Итак, предположим, что вам нравится определенная часть программного обеспечения и вы хотите начать помогать, вы можете начать работать по краям. Вот несколько конкретных задач, которые помогут вам интегрироваться с группой.
- напишите несколько тестовых примеров для ошибок, которые нужно добавить в набор тестов регрессии.
- просмотрите базу данных ошибок и найдите ошибку для работы. Это может быть лучший способ проникнуть в основное развитие.
- просмотрите базу данных запроса функций и посмотрите, есть ли небольшая задача, над которой вы можете работать.
- найдите "пользовательские doc" запросы... многие из них включают код примера для написания, который вы можете предоставить.
Удачи!
Ответ 2
Обычно люди участвуют:
- вы используете продукт FOSS в повседневной работе.
- вы заметили проблему или недостающую функцию.
- вы отправляете письмо сопровождающему, чтобы спросить, действительно ли эта ошибка/отсутствует функция.
- сопровождающий говорит "да", это ошибка/отсутствует функция
- вы решили попытаться исправить/добавить ошибку/функцию
- вы называете безумным
- вы отправляете исправление для сопровождающего
- сопровождающий смеется или смотрит или говорит: "Большое спасибо!"
Если вы повторите несколько последних шагов несколько раз, сопровождающий, вероятно, предоставит вам доступ к репозиторию RCS проекта, а затем вы действительно можете стать опасным. Но суть в том, что вам решать что-то, например, написать код - просто быть "заинтересованным" в проекте недостаточно.
Ответ 3
Я присоединился к DiSo и Greasemonkey.
Лучшим способом, который я нашел, чтобы принять участие, является ранняя разработка проекта или просто очень интересная. С DiSo или различными проектами github, в которых я участвую, это был первый, с моими вкладами Greasemonkey, последним.
Ищете проект, который может внести свой вклад, часто не правильный путь. Используйте материал и узнайте, что вы хотите построить/исправить, а затем сделайте это.
Ответ 4
Я немного поработал с патчом на GnuCash, так как моя жена возобновила работу неполный рабочий день недавно, когда наши дети немного выросли.
Я бы предпочел, чтобы мои глаза вырвались с горячим покером, чем переустановить Windows, но GnuCash не хватало чего-то, что [какой-то другой учетный пакет], поэтому я сказал ей, что добавлю его.
Как оказалось, они взяли мой патч и сделали его намного лучше, прежде чем положить его (до того момента, когда, возможно, 1% последнего патча было моим материалом), но по крайней мере мы теперь можем использовать GnuCash вместо этого запатентованного вещи. Они также были невероятно отзывчивы - от подачи патча до доступности патча была только неделя или около того, и она была в продукте через три недели.
Я также однажды исследовал получение патча в процессе учета в ядре Linux, но требуемые усилия намного перевешивали мои потребности: -)
Я не участвую на регулярной основе, по мере необходимости (нахожу свой зуд и царапаю его). Есть некоторые, кто делает это хобби, но я бы предпочел провести свободное время с детьми, и, к сожалению, мой работодатель не заплатит мне за помощь в другом месте.
Этот последний бит особенно меня раздражал:
- Патч Linux значительно помог бы нашему продукту (и многим другим).
- Это было изменение поведения другого нашего продукта, которое ухудшило полезность нашего продукта.
- решение было довольно простым, концептуально (требуемое усилие было тестирование, поскольку проблема была бы высокой отдачей [переключением задач] и очень распространенной [все используют Linux]).
- было бы быстрее скопировать патч, чем обходной путь, который мы в конечном итоге реализовали.
- Обходной путь - это kludge (p'tooee).
- теперь никто в мире не имеет преимущества нашего патча (включая нас).
Ответ 5
То, что я сделал, было довольно просто; Я открыл его.
К мне присоединился один постоянный разработчик и другие двое, которые жертвуют код за кулисами. Проект находится на очень ранних стадиях, поэтому его не так много загрузили.
Ответ 6
Что действительно помогает проекту с открытым исходным кодом иметь архитектуру плагина.
Гораздо проще внести простой плагин, например. формат файла, чем пытаться добавить что-то в ядро Linux. Это упрощает и упрощает создание сообщества.
TODO: Пожалуйста, поставьте анекдот.