Bob Belderbos: 가드레일은 코드베이스를 보호... 노트

Bob Belderbos: 가드레일은 코드베이스를 보호합니다. 무엇이 당신의 판단을 보호합니까?

"칼 뉴포트는 코딩에서 AI가 주도하는 속도가 좋은 엔지니어링을 정의하는 비판적 사고 능력을 약화시킬 수 있다고 경고한다. 개발자들은 코드를 능동적으로 이해하는 대신 수동적인 인식을 하게 되어, 근본적인 이해에서 멀어질 위험이 있다. 일부는 수동 코딩으로 완전히 돌아갈 것을 주장하지만, 저자는 균형 잡힌 접근 방식을 모색한다. 이 중간 지점은 학습과 기술 개발에 필수적인 마찰을 의도적으로 통합하는 것을 포함한다.기술 퇴화는 AI 자체를 사용하는 것에서 오는 것이 아니라, 내부 모델링 프로세스를 위임하는 것에서 발생한다. 저자는 기술 퇴화와 AI가 미묘하게 잘못된 코드를 생성할 가능성을 구별한다. 소유권과 이해를 유지하기 위해 개발자는 복잡한 코드 경로를 재도출하고 모든 변경 사항을 설명할 수 있는지 확인해야 한다. AI 작업을 잘 정의된 문제로 좁히면 엔지니어가 계속 참여하고 코드 검토가 압도적으로 많아지는 것을 방지할 수 있다.코리 셰이퍼의 상세한 프롬프트와 철저한 코드 검토와 같은 방법은 이러한 마찰을 보존하는 실용적인 방법을 제공한다. 그러나 인간의 주의력은 유한하므로 나머지 작업을 자동화해야 한다. 여기서 "설계에 의한 정확성(correctness by design)"이 중요해지며, 강력한 타이핑 및 컴파일 시간 어설션과 같은 엄격한 시스템 수준 검사를 사용한다.Rust는 유효하지 않은 상태를 표현할 수 없게 만들어 AI 준수를 강제함으로써 이를 예시한다. Python에서는 타입 체커와 유효성 검사 모델이 유사한 목적을 수행한다. 궁극적으로 개발에서 AI를 책임감 있게 사용하려면 판단력을 날카롭게 하기 위해 중요한 결정에 대한 통제권을 유지하고, AI의 책임성을 보장하기 위해 엄격한 규칙을 구현하는 것이 모두 필요하다. 소프트웨어 엔지니어링은 판단과 경험의 과정으로 남아 있으며, AI는 지루한 측면을 자동화한다. 핵심 요점은 가장 중요한 결정을 AI에 위임하는 것을 식별하고 거부하여 진정한 소유권과 견고한 코드를 보장하는 것이다."