Как стать крупным спонсором проекта с открытым исходным кодом?

10

Я знаю, что советами по умолчанию для проектов с открытым исходным кодом и началом работы является исправление ошибок. Но у меня есть ощущение, что это тот путь, по которому можно было бы пойти, если бы они хотели быть тестером / исправителем ошибок в проекте. Как стать активным участником проекта с открытым исходным кодом? [Т.е. на уровне архитектуры]

monksy
источник
15
Шаг 1 - Станьте огромным вкладчиком. Шаг 2 - урезать немного.
PSR

Ответы:

10

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

Люди советуют начинать с исправления ошибок, потому что это заставляет их копаться в кодовой базе и знакомиться с тем, как все работает. Это также поможет вам принять участие в дискуссионном сообществе проекта, каким бы оно ни было (обычно это список рассылки или форум), так что вы почувствуете направление проекта. Вы бы почувствовали себя немного глупо, если бы вы сделали 80% пути с вашей новой функцией, только чтобы обнаружить, что кто-то еще работал над этим все время, и они только что закончили!

Мейсон Уилер
источник
Достаточно далеко, так вы бы сказали, что это более политическая или смущающая тактика? [Aka. реклама патча в блоге, прежде чем получить разрешение на коммит]
monksy
2
@monksy - это ни, как вы обычно не делают это публично, но вклад его через любой механизм подходит для кодовой базы. Вы пытаетесь завоевать доверие через обмен опытом. Вы не получаете коммитов от раздражающих людей!
SDG
1
@monksy: не рекламируйте свой патч в блоге; откуда вы знаете, кто-нибудь из проекта это увидит? Если у вас есть патч, отнесите его в дискуссионное сообщество и поговорите об этом там. Вот где вы, вероятно, получите наиболее полезный ответ. (Кстати, если у вас есть исправление ошибки, будьте готовы доказать, что это действительно ошибка. Это означает, что вы понимаете, что должен делать код, и можете показать воспроизводимый случай, когда он делает что-то еще. Убедитесь, что вы знаете разницу между ошибка и код, делающий то, что он должен делать, что вам не нравится.)
Мейсон Уилер,
4

Там нет ярлыков. Проекты с открытым исходным кодом чрезвычайно основаны на заслугах. Когда вы показали, что способны справляться с небольшими задачами, вам в конечном итоге будут доверять все более крупные задачи. Проекты с открытым исходным кодом также имеют большой интерес со стороны участников, которые вносят один или два патча, а затем продолжают двигаться, и еще больше людей, которые «вносят вклад» в одну или две грандиозные, но неосуществленные идеи, движутся дальше. Если вы хотите внести больший вклад, вам придется показать, что вы в нем надолго.

Тем не менее, постепенные архитектурные улучшения часто приветствуются, особенно если они решают серьезную ошибку или проблему производительности. Например, несколько лет назад одним из нескольких патчей, которые я внес в проект Cinelerra, было архитектурное изменение стека отмены, которое значительно уменьшило потребление памяти и задержку для операций, которые нельзя отменить.

Вы добьетесь наибольшего успеха, если решите проблему, с которой сталкиваетесь лично, а не просто станете участником проекта с открытым исходным кодом. Когда я отправил этот патч в Cinelerra, я не пытался внести архитектурное изменение в случайно выбранный проект с открытым исходным кодом, я пытался выяснить, почему это заняло так много времени, чтобы переместить точку входа / выхода при редактировании моих видео.

Карл Билефельдт
источник
Ницца! Я всегда хотел использовать Cinelerra, но в заднице всегда было сложно установить его на gentoo. Спасибо за вклад. Но это именно то изменение, которое я предлагаю и спрашиваю. Это достаточно большие изменения, чтобы заставить людей беспокоиться, но это не исправление ошибки.
Monksy
2

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

Ryathal
источник
Это похоже на долгий путь к принятию архитектурных / дизайнерских решений. [Я работаю при условии, что вилки плохие]
monksy
@monksy кажется, что вы исходите из другой предпосылки, чем, возможно, ваш вопрос обозначен. Если вы считаете, что у вас гораздо лучший способ, чем в текущем проекте, возможно,
вступите в непритязательную
5
@monksy, чтобы подняться вверх по лестнице, нужно время, вы не решитесь начать с вершины, если не сделаете свою собственную лестницу.
Ryathal