プログラミングに関するほとんど知られていない事実

プログラマーとして、ソフトウェアの作成方法について多くのことを学びました。 ここにあなたを驚かせるかもしれないいくつかの事実があります。



プログラマーはコードの作成に10〜20%の時間を費やし、ほとんどのプログラマーは、レベルに関係なく最終製品に分類されるコードを1日あたり10〜12行だけ作成します。 優れたプログラマーは、残りの90%の時間のほとんどを、最適なソリューションを見つけるために考え、研究し、実験することに費やしています。 悪いプログラマーはこの時間をデバッグに費やし、コードのランダムな変更を行い、パフォーマンスをチェックします。



「優れたターナーは平均よりも数倍優れた働きをしますが、優れたプログラマーは通常の1万倍のコストがかかります」

ビルゲート。


優れたプログラマーは、平均よりも10倍生産的です。 優秀なプログラマーは、平均より20〜100倍生産的です。 そしてこれは誇張ではありません -1960年代以降に実施された研究はこれを明確に示しています。 悪いプログラマーは非生産的なだけではありません。彼は仕事をしないだけでなく、他の人が解決しなければならない問題を生み出します。



トッププログラマは、コードの作成にほとんど時間を費やしません。 少なくとも最終製品に入るもの。 コードに多くの時間を費やしているプログラマーは、古い問題に対する既存の解​​決策を探すのが面倒であるか、文盲であるか、慢すぎるかのいずれかです。 優秀なプログラマーは、標準的なアプローチを定義して使用することの達人です。 優れたものは、完璧なアーキテクチャを求めて絶えずリファクタリングすることを恐れません。 悪いものは、概念的な整合性、簡潔さ、階層、設計パターンに欠けるコードを記述し、リファクタリングが非常に困難です。 不正なコードをゴミ箱に捨てて、最初からやり直す方が簡単です。



プログラムは、宇宙の他のすべてのものと同様に、エントロピーの法則に従います。 継続的な変更によりプログラムが破壊され、元のアーキテクチャの整合性が侵害されます。 これは避けられませんが、整合性の問題を考慮に入れていないプログラマーは、完了する前でも不要になるほど急速に壊れるプログラムを作成します。 エントロピー整合性エラーは、おそらくプロジェクトの失敗につながる最も一般的なエラーです。 そして2番目に一般的なのは、クライアントの希望に反するプログラムの作成です。 プログラムの破壊は開発の進行を指数関数的に遅らせるので、多くのプロジェクトは予算と期限の混乱を増大させる雪崩になり、これは完全に破壊されるまで続きます。



2004年の調査では、ほとんどのソフトウェアプロジェクト(51%)が重大な問題( 期限を守れない、予算を超えている、デフォルト、誤動作など-約1 %)に直面していることがわかりました失敗します。 これは、後者が31%だった1994年よりも優れています。



ほとんどのプログラムはチームによって作成されますが、これは民主的な活動ではありません。 通常、アーキテクチャを担当するのは1人だけで、残りはエンコーダーのみです。



プログラミングは大変です。 これは非常に激しい精神活動です。 優れたプログラマーは、週7日24時間、仕事について考えます。 彼らは魂と夢の中で最高のコードを書きます。 最も重要な作業はキーボードから離れて行われるため、ソフトウェアプロジェクトの開発を加速することはできず、オフィスでより多くの作業を強制したり、プロジェクトに新しい人を追加したりします



翻訳者から。 おそらく、これらの事実はあまり知られていないか、ユニークではありません。 しかし、彼らはどこかおかしく、どこか有益で、確かに注目に値するように思えました。



All Articles