Erneutes Zitieren für den Kontext und ein einfacheres Verständnis:
"Das Debuggen ist doppelt so schwierig wie das Schreiben des Codes. Wenn Sie den Code also so geschickt wie möglich schreiben, sind Sie per Definition nicht klug genug, um ihn zu debuggen."
Was Brian Kernighan hier schrieb, bezieht sich offensichtlich auf Faltung, und er benutzte fälschlicherweise das Wort klug.
"Das Debuggen ist doppelt so schwierig wie das Schreiben des Codes an erster Stelle. Wenn Sie den Code daher so [verschachtelt] wie möglich schreiben, sind Sie per Definition nicht schlau genug, um es zu debuggen."
Faltung:
A thing that is complex and difficult to follow.
Klug:
Showing intelligence or skill; ingenious
Geschulte Programmierer wissen, dass einfacher Code genial ist. Code, der so clever wie möglich ist, sollte per Definition einfach sein. Geschulte Programmierer vermeiden es auch, mit verschlungenem Code wie der Pest zu arbeiten und diesen zu schreiben. Sie werden auch gewundenen Code in cleveren Code verwandeln, wann immer sie die Chance haben. Code beginnt normalerweise verwickelt und nähert sich der Klugheit, da Wissen über den Bereich und das Verständnis der menschlichen kognitiven Fähigkeiten beim Programmieren durch Erfahrung und geteiltes Wissen besser verstanden werden.
Aufgrund der Popularität dieses Zitats und der großen Beliebtheit von Brian Kernighan in der Branche wirkt sich dieser Missbrauch des Wortes negativ auf die Gesellschaft aus, und ich würde es gerne sehen, wenn der Mann selbst das anspricht. Bevor ich diesen Artikel schrieb, habe ich versucht, eine E-Mail an ihn zu senden, aber ich konnte keine E-Mail-Kontaktinformationen finden, die ich verstand :(.
Die negativen sozialen Auswirkungen, die ich gesehen habe, sind, dass andere Programmierer ihre schlaueren Kollegen ausschließen, weil sie Klugheit jetzt als Problem sehen. Das eigentliche Problem sind die dummen Kollegen, die denken, sie seien schlau, indem sie Dinge auf eine neue, unidiomatische Weise tun und ständig neue Dinge erfinden, wenn es keinen Vorteil gibt, anstatt die größere Gemeinschaft zu gewinnen und zu verstehen und schlauere Ideen so weit wie möglich wiederzuverwenden.
Ich muss jedoch klarstellen, dass es oft schwieriger ist, ein Verständnis zu erlangen, als das eigene zu erfinden. Aufgrund des in der Industrie häufig auftretenden Problems unrealistischer Fristen wird Zeit gespart, wenn Sie Ihre eigenen für Ihr kleineres Nischenproblem erfinden. Dies basiert auf der Beobachtung, dass nützliche, wiederverwendbare Dinge normalerweise auf eine größere Nische abzielen oder eine nützliche Abstraktion für die Erfindung darstellen. Es basiert auch auf der Tatsache, dass Menschen auf große Nischen abzielen, um mehr Geld zu verdienen, wenn dies die Verwendung des Tools aufgrund der Komplexität, die damit verbunden ist, etwas für ein breites Anwendungsgebiet nutzbar zu machen, häufig äußerst schwierig macht.
Die andere negative soziale Auswirkung ist, dass dies den Fortschritt und den Wunsch nach Verständnis verhindert, da wir in unserer egozentrischen Welt sofort unser eigenes Unverständnis verleugnen und den Code des Verwickelns abschreiben, selbst wenn die Idee einmal verstanden wurde ziemlich schlau.
TODO Ich möchte einige Referenzen zitieren, aber ich möchte auch, dass das Fehlen von Referenzen meine Fähigkeit, Informationen zu teilen, nicht beeinträchtigt, damit ich schnell zitiere, woran ich mich erinnere, als Quellen für meine Informationen und vielleicht die tatsächlichen Informationen finde Tag (oder du findest es für mich! :)
- Guido Van Rossums Vortrag über Event-Loops und wie er sie verstanden hat
- Ein GitHub-Mitarbeiter, der angab, es zu vermeiden, clevere Leute für Y-Combinator einzustellen
- Ein Großteil der Diskussionen und des Lernens, die in der Python-Community stattfinden. Die Python-Community steht neuen Ideen besonders kritisch gegenüber, lehnt sie jedoch nicht ab, wenn sie sie nicht ohne weiteres verstehen. In der Regel werden Funktionen, die zunächst als verschlungen angesehen wurden, als Kernsprachfeature bzw. -paket betrachtet.
- Meine eigene Erfahrung und professionelle Meinung basiert auf meinen 10000-Fuß-Beobachtungen. Ich kann die Einzelheiten nicht wirklich erkennen, um sie von oben aufzuklären :( Hoffentlich werden Ihre Erfahrungen und Beobachtungen Ihnen dasselbe verraten, und jemand anderes kann unten einen Kommentar abgeben, um dieser Antwort einen gewissen Wert zu verleihen.
Fühlen Sie sich frei, Ihre eigenen Zitate hinzuzufügen! Fühlen Sie sich auch frei, meinem Text Kommas hinzuzufügen. Ich habe meine Kenntnisse über die Verwendung von Kommas in Englisch seit geraumer Zeit nicht mehr aktualisiert ...