オープンソースプロジェクトのデフォルトのアドバイスは、バグの修正を始めることです。しかし、プロジェクトのバグのテスター/フィクサーになりたいのであれば、その道を進みたいと思っています。どのようにしてオープンソースプロジェクトのアクティブな貢献者になりますか? [すなわち建築のレベルで]
これはおそらく少しトートロジーのように聞こえるでしょうが、新機能の主要な貢献者になりたい場合は、しばらく製品を使用し、それを改善する新機能を見つけて、機能を実装するコードを作成してください、そしてそれを貢献してください。
人々がバグ修正を始めることを勧められる理由は、それが彼らにコードベースの周りを探検させ、物事の仕組みに慣れるためです。また、プロジェクトのディスカッションコミュニティ(通常はメーリングリストまたはフォーラム)に参加できるので、プロジェクトの方向性を感じることができます。新しい機能の80%を達成して、他の誰かがずっとそれに取り組んでいて、彼らがそれを完成させただけだと気付くと、少しばかげた気分になります!
ショートカットはありません。オープンソースプロジェクトは極端にメリットに基づいています。小さなタスクを処理できることを示したら、最終的にはますます大きなタスクで信頼されます。また、オープンソースプロジェクトは、1つまたは2つのパッチを提供するコントリビューターによる多くの推進力を持っており、1つまたは2つの壮大だが実装されていないアイデアを「提供」するさらに多くの人々が次に進みます。あなたがより大きな貢献をしたいなら、あなたはあなたが長い間そこにいることを示さなければならないでしょう。
そうは言っても、特に大きなバグやパフォーマンスの問題を解決する場合は特に、インクリメンタルアーキテクチャの改善が歓迎されます。たとえば、数年前、私が Cinelerra プロジェクトに貢献したいくつかのパッチの1つは、取り消し可能な操作のメモリ消費と待機時間を大幅に削減する取り消しスタックのアーキテクチャの変更でした。
「オープンソースプロジェクトへの貢献者になる」だけではなく、個人的に直面している問題を解決する場合に、最も成功するでしょう。私がそのパッチをCinelerraに提出したとき、私はランダムに選択されたオープンソースプロジェクトにアーキテクチャの変更を提供するつもりはありませんでした。ビデオの編集時にイン/アウトポイントを移動するのに非常に時間がかかる理由を理解しようとしていました。
これを行うには、すでにその地位にいる人々を知り、彼らに参加することへの関心を示します。これは、バグを修正し、バグを見つけて、開発に参加することで達成できます。