すべてのオプションとプロジェクト、特にそれらのほとんどのサイズを利用できるので、オープンソースは初心者にとって非常に困難な場合があります。私の質問は、どのようにしてオープンソースのソフトウェアを助け、そこから学ぶことができるのでしょうか?どこから始めますか?どのファイルを最初に読み取りますか?初心者レベル以上のプログラマーが貢献を始めるのを助けるためのアドバイスはありますか?
すべてのオプションとプロジェクト、特にそれらのほとんどのサイズを利用できるので、オープンソースは初心者にとって非常に困難な場合があります。私の質問は、どのようにしてオープンソースのソフトウェアを助け、そこから学ぶことができるのでしょうか?どこから始めますか?どのファイルを最初に読み取りますか?初心者レベル以上のプログラマーが貢献を始めるのを助けるためのアドバイスはありますか?
回答:
実行を楽しむ(オープンソース)アプリケーションを見つけます。このように、あなたはすでに「テスター」です。何でもかまいません(オペレーティングシステム、メディアプレーヤーなどのアプリケーション、ライブラリ、ネットワークツール、アプリケーションスキン、デスクトップテーマなど)。そのようなソフトウェアがどの言語で書かれているかを調べてください。あなたが知っているものを選ぶか、新しいものを学びます。ソースを取得します。それと開発者ドキュメントを読んでください。ビルドしてから、独自のビルドを実行します。独自の使用法と、追加すると便利だと思われるものを調整してください。差分を学ぶ。パッチの差分を作成し、開発者にメールで送信します。これを数回実行してから、コミット権限があるかどうかを尋ねます。
それをあなたの履歴書に入れて、これをオンラインで広めてください。
私は自分の作品の多くをオープンソースとして無料でリリースしています。これにより、他の人があなたの作品を見て判断できるので、既存のオープンソースプロジェクトに参加したり、他の人があなたのオープンソースプロジェクトに貢献したりすることが簡単になります。
OpenHatchを試してください。そこであなたは貢献するプロジェクトを見つけることができます。まだ使っていませんが、気持ちいいときは使うつもりです。
この秋、私はUCOSPを介して他の学生とオープンソースプロジェクトに取り組みます。そのようなグループは他にもあります。たとえば、Google Summer of Codeです。あなたがまだ学校にいるなら、間違いなくこれらのプログラムに参加してみてください。
また、優先プロジェクトのメーリングリストを購読したり、IRCルームに参加して、何人かの人々と知り合い、そこからアクセスすることもできます。
いくつかのオンラインコードリポジトリを試してください。いくつかは他よりも社会的ですが、それらはすべて良いです。パッチを提出したり、バグ(まだ貢献している)を提出したりすることもできます。人気のあるものには、GitHub、Googleオープンソースコード(具体的にはGoogle Project Hosting)、およびSourceForgeがあります。
オープンソースソフトウェアの作成方法に関するこの無料の本を読むことができます。時々参考にさせていただきます。
開発には2つの方法があります。
最初のアプローチは、2番目のアプローチよりも建設的で生産的ではありません。最初の方法では、単純にWebの世界をさまよい、次々にWebページを閲覧して、オープンソースプロジェクト(たとえばJoomal)が見つかるまで、それを使用してWebサイトを構築することに決めます。たとえばゲーム開発者である場合、またはjQuery開発に興味がある場合は、あまり良くありません。
したがって、まず何をしたいかを指定することを強くお勧めします。JavaScript開発者になりたいですか?iOS開発者ですか?プロジェクトマネージャー?何をしたいですか?
すべてのオプションとプロジェクト、特にそれらのほとんどのサイズを利用できるので、オープンソースは初心者にとって非常に困難な場合があります。
もちろん、それは気が遠くなるでしょう。まだフィルタリングしていないためです。最初に、何をしたいかを指定する必要があります。すると、2つまたは3つのオープンソースソリューションしか手元になくなるまで、それはますます狭くなっていることがわかります。ここでは、問題ありません。
一番大事なことは、自分が情熱を注いでいるプロジェクトを見つけて、それについてできる限りのことを学び始めることだと思います。
すべてのメーリングリストに登録すると、コミュニティが相互にどのようにやり取りするかについての良いアイデアが得られます。ちょうどあなたがあなたの研究をし、インテリジェントなよく考え抜かれた質問をすることを確認してください。
注:上記のリンクはすべてWordPressオープンソースプロジェクトに関連していますが、大規模なオープンソースソフトウェアプロジェクトのほとんどに適用できます。