맥락과 이해를 돕기 위해 다시 인용 :
"디버깅은 처음에 코드를 작성하는 것보다 두 배나 어렵습니다. 따라서 코드를 최대한 영리하게 작성하면 정의에 따라 디버그하기에 충분히 똑똑하지 않습니다."
브라이언 케르 니건이 여기에 썼던 것은 분명히 컨볼 루션과 관련이 있으며 그는 실수로 영리한 단어를 사용했습니다.
"디버깅은 처음에 코드를 작성하는 것보다 두 배나 어렵습니다. 따라서 코드를 가능한 한 [복잡하게] 작성하면 정의에 따르면 디버그하기에 충분히 똑똑하지 않습니다."
회선:
A thing that is complex and difficult to follow.
영리한:
Showing intelligence or skill; ingenious
교육을받은 프로그래머는 간단한 코드가 독창적이라는 것을 알고 있습니다. 가능한 영리한 코드는 정의상 단순해야합니다. 교육을받은 프로그래머는 전염병과 같은 복잡한 코드로 작업하거나 작성하지 않아도됩니다. 또한 기회가있을 때마다 복잡한 코드를 영리한 코드로 바꿉니다. 코드는 일반적으로 복잡하게 시작되고 프로그래밍에 대한 인간의인지 능력에 대한 이해와 영역에 대한 지식이 경험과 공유 된 지식을 통해 더 잘 이해되므로 영리하게 접근합니다.
이 인용의 인기와 Brian Kernighan이 업계에서 꽤 인기가 있기 때문에이 단어의 오용은 사회적으로 부정적인 영향을 미치며 솔직히 그 사람이 해결 한 것을보고 싶습니다. 이 기사를 작성하기 전에 간단히 전자 메일을 보낼 수 있는지 확인하려고했지만 이해했던 전자 메일 연락처 정보를 찾을 수 없었습니다.
내가 본 부정적인 사회적 영향은 이제 더 영리한 동료를 괴롭히는 다른 프로그래머들입니다. 그들은 이제 영리함을 문제로보고 있기 때문입니다. 실제 문제는 새로운 일관적인 방식으로 일을함으로써 영리하다고 생각하고 더 큰 공동체를 이해하고 영리한 아이디어를 최대한 재사용하는 대신 이점이 없을 때 끊임없이 새로운 것을 발명하는 바보 같은 동료입니다.
나는 종종 자신의 것을 발명하는 것보다 이해를 얻는 것이 더 어렵다는 것을 분명히해야합니다 . 비현실적인 마감일에 대한 업계의 일반적인 문제로 인해 작은 틈새 문제에 대한 자신의 발명은 시간을 절약하는 데 사용됩니다. 이것은 유용하고 재사용 가능한 것들이 일반적으로 더 큰 틈새 시장을 대상으로하거나 발명에 유용한 추상화를 제공한다는 관찰에 근거합니다. 또한 사람들이 더 큰 돈을 벌기 위해 큰 틈새 시장을 목표로 삼는다 는 사실 에 근거하고 있습니다. 이는 종종 광범위한 응용 분야에 사용할 수있는 복잡성으로 인해 도구를 사용하기가 매우 어려워집니다.
또 다른 부정적인 사회적 영향은 이것이 우리의 자아 중심 세계에서 우리 자신의 이해 부족을 즉시 거부하고 일단 이해되면 아이디어가 실제로 이해 되더라도 복잡한 코드를 작성하기 때문에 진보와 이해하려는 욕구를 방지한다는 것입니다 아주 영리합니다.
TODO 참고 자료를 인용하고 싶지만 정보 공유 능력을 방해하지 않는 참고 자료가 부족하므로 정보의 출처로 기억하는 내용을 빠르게 인용하고 실제 정보를 찾을 수 있습니다. 하루 (또는 당신은 나를 위해 그것을 찾을 수 있습니다! :)
- Guido Van Rossum의 이벤트 루프 및 이벤트 루프에 대한 이야기
- Y-Combinator에서 영리한 사람들을 고용하지 말라고 언급 한 GitHub 직원
- 파이썬 커뮤니티에서 진행되는 많은 토론과 학습. 파이썬 커뮤니티는 특히 새로운 아이디어에 대해 비판적이지만 이해하지 못하는 새로운 아이디어를 무시하지 않으며, 일반적으로 처음에는 복잡한 것으로 보였던 기능을 핵심 언어 기능 / 패키지로 볼 수 있습니다.
- 내 10000 발 관찰을 기반으로 한 내 자신의 경험과 전문적인 의견. 나는 실제로 모든 것을 깨달을 수있는 구체적인 내용을 볼 수는 없습니다.
자신의 인용을 자유롭게 추가하십시오! 또한 내 텍스트에 쉼표를 자유롭게 추가하십시오. 꽤 오랫동안 영어로 쉼표 사용법에 대한 지식을 새로 고치지 않았습니다 ...