コンテキストおよび再理解を容易にするための再引用:
「デバッグは、最初にコードを書くよりも2倍難しくなります。したがって、コードをできる限り巧みに書くと、定義上、デバッグするのに十分ではありません。」
ブライアン・カーニガンがここで書いたものは明らかに畳み込みに言及しており、彼は誤って賢い言葉を使っていました。
「デバッグは、最初にコードを記述するよりも2倍困難です。したがって、可能な限り[複雑な]コードを記述すると、定義上、デバッグするのに十分ではありません。」
畳み込み:
A thing that is complex and difficult to follow.
賢い:
Showing intelligence or skill; ingenious
教育を受けたプログラマーは、単純なコードが独創的であることを知っています。可能な限り賢いコードは、定義上は単純でなければなりません。また、教育を受けたプログラマーは、ペストのような複雑なコードの操作や作成を避けます。また、可能であれば、複雑なコードを賢いコードに変換します。通常、コードは複雑な状態から始まり、プログラミングに関する領域と人間の認知能力の知識が経験と知識の共有を通じてよりよく理解されるため、巧妙さに近づきます。
この引用の人気と業界で非常に人気のあるブライアン・カーニガンのために、この言葉の誤用は社会にマイナスの影響を与えます。この記事を書く前に、私は彼に単純にメールを送信できるかどうかを確認しようとしましたが、理解できるメールの連絡先情報を見つけることができませんでした:(。
私が見た負の社会的影響は、他のプログラマーがより賢い仲間を追放していることです。なぜなら、彼らは現在、賢さを問題として見ているからです。本当の問題は、新しいユニディオマティックな方法で物事を行い、より大きなコミュニティを獲得して理解し、賢いアイデアを可能な限り再利用するのではなく、利益がないときに絶えず新しいものを発明することによって賢いと考える愚かな仲間です。
ただし、理解することは、自分で発明するよりも難しい場合が多いことを明確にする必要があります。業界では非現実的な締め切りの共通の問題があるため、小さなニッチ問題に独自の期限を設定することで、時間を節約できます。これは、有用で再利用可能なものは通常、より大きなニッチを対象とする、または発明の有用な抽象化を提供するという観察に基づいています。また、人々が大きなニッチを狙ってより多くのお金を稼ぐという事実に基づいていますが、これは多くの場合、広範囲のアプリケーションで何かを使用できるようにするのに伴う複雑さのためにツールを非常に使いにくくします。
他の負の社会的影響は、これが進歩と理解の欲求を妨げることです。なぜなら、私たちのエゴセントリックな世界では、私たちはすぐに理解の欠如を否定し、一度理解されたとしても、複雑なコードを書き留めるからですとても賢い。
TODOいくつかの参考文献を引用したいと思いますが、情報を共有する能力を妨げないように参考文献が不足しているので、私の情報源として覚えていることをすぐに引用し、実際の情報を見つけます日(または私のためにそれを見つけることができます!:)
- イベントループについてのGuido Van Rossumの講演と、それらを理解する方法
- Y-Combinatorで賢い人を雇うことを避けると述べたGitHubの従業員
- Pythonコミュニティで行われている議論と学習の多く。Pythonコミュニティは特に新しいアイデアに批判的ですが、彼らが手に負えない新しいアイデアを却下することはありません。通常、複雑なものとして最初に見られていた機能をコア言語機能/パッケージとして見ることができます。
- 10000フィートの観測に基づく、私自身の経験と専門的な意見。しかし、あなたの経験と観察があなたに同じことを伝え、他の誰かがこの答えにいくつかのメリットを与えることができることを願っています。
自由に引用を追加してください!また、テキストにカンマを自由に追加してください。英語でのコンマの使用に関する知識をかなり更新していません...