「増分ハッキング サイクル」を使用してプログラミング スキルを磨きましょう


ハッカーになる方法を学ぶことは、楽器の演奏を学ぶことによく似ている、とソフトウェア開発者でオープンソース支持者のエリック・スティーブン・レイモンド氏は言います。 ESR は、彼がよく言及するように、プログラマー志望者がハッキング方法を学ぶのに役立つ 7 つのステップをリストしています。

ここでの「ハッキング」とは「オープンソース環境における探索的プログラミング」と定義されており、セキュリティ侵害や犯罪ではなく、プログラミングのスタイルです。ここで提案されている「増分ハッキング サイクル」は、コーディングの学習に実践的なアプローチをとった人なら誰でもよく知っているでしょう。興味のあるオープンソース プログラムを選択し、変更または追加する小さな機能を見つけて、変更を加えます。そしてそれをオープンソース コミュニティと共有してください。次に、新しくて難しいプロジェクトを選択します。 (他にもありますが、要点はこれです。)

プログラムのメンテナにパッチを送信するという部分は重要な部分だと ESR は言います:

私は当初、これをオプションのステップとして説明しました。賢明な友人は、おそらくそうすべきではないと指摘しました。一人で楽器を演奏するのは練習には非常に適していますが、音楽はその中にある創造性が他の人に聞かれて初めて完成し、検証されます。コンピューター上で一人でヌードルすることも同様に練習には適していますが、他の人がアクセスするとハッキングが完了します。

あなたが書いたものを使用してください

。現実世界でのテストは重要です。

場合によっては (始めたばかりの場合が多いですが) パッチが拒否されることがあります。これに対処する方法を学ぶ必要があります。それは、あなたの探求で失敗する運命にあるという意味ではありません。通常、これが意味するのは、コードを十分に注意深く読んでいないこと、または (いつものように) 貢献しようとしている開発グループの文化や慣行に関する重要な点を見逃していることです。これらの間違いは修復できます。

この漸進的アプローチの利点は、複雑さを増しながら大量のコードに没頭することで、最終的にはよりオリジナルなコードを作成できるようになることです。これは、豊富な音楽を聴いて練習したミュージシャンが音楽のパターンを変えることができるのと同じです。オリジナルの楽曲に仕上げます。

の尊敬される著者からの投稿全文をご覧ください。大聖堂とバザール 詳細については。

ハッキングを学ぶ方法|エリック・スティーブン・レイモンド

写真提供者セバスチャン・テル・ブルク