yagni

YAGNI의 진짜 비용은 코드 작성량이 아니라 선택지와 시간 가치다

YAGNI는 단순히 노동을 아끼라는 규칙이 아니라, 추측에 기반한 구조(speculative structure) 를 미리 만드는 것을 경계하는 원칙이다. AI 시대에도 선택지 상실과 비용을 앞당겨 지불하는 손실 때문에 미래 기능을 지금 만들면 안 된다는 Kent Beck의 핵심 메시지.

Mimul
MimulJune 27, 2026 · 4 min read · Last Updated:

YAGNI는 단순히 코드 작성 노동을 아끼라는 규칙이 아니라, 추측에 기반한 구조를 미리 만드는 것을 경계하라는 원칙이다. AI로 코드 비용이 거의 0이 되었음에도 선택지 상실과 비용을 앞당겨 지불하는 손실이라는 두 가지 본질적 비용 때문에 여전히 미리 만들지 말아야 한다.

  • 많은 사람들이 YAGNI(You Aren’t Gonna Need It)를 “지금 필요하지 않은 코드를 작성하지 말라”는 노동력 절약 규칙으로 오해한다.

  • 그러나 YAGNI의 본질은 코드 작성 비용 절감이 아니라, 미래 기능 때문에 미리 설계를 구축해버리는 추측에 기반한 구조(speculative structure) 를 피하는 데 있다.

  • 미리 구조를 만들면 두 가지 비용(두 장의 청구서)이 발생한다:

    1. 선택지 상실(Optionality Bill)

    • 예상 기능이 실제로 나타나지 않을 가능성이 높다. 잘못된 구조로 인해 우회 작업 + 제거 비용이 든다.
    • 예측이 맞더라도, “올바른 구조를 나중에 만들 수 있는 선택지”를 조기에 포기하게 된다.
    • 기다리는 것은 게으름이 아니라, 선택지라는 자산을 유지하는 것이다.

    2. NPV(Net Present Value) 비용

    • 비용을 앞당겨 지불하고, 수익(기능)을 뒤로 미루게 된다.
    • 예측이 완벽히 맞아도, 비용을 먼저 지불하는 순서 자체가 손실을 만든다.
    • “나중에 개량하면 더 비싸다”는 주장도 결국 또 다른 예측일 뿐이다.
  • AI의 등장으로 코드 작성 비용이 거의 0에 가까워졌지만, YAGNI는 여전히 유효하다.

    • 노동력 절약 규칙이었다면 AI로 인해 무의미해졌을 것이다.
    • 하지만 선택지 상실비용 선지급이라는 두 손실은 그대로 남는다.
    • 오히려 AI가 생성한 코드는 자신이 작성하지 않은 만큼 이해도가 낮아 상황을 악화시킬 수 있다.
  • 결론: 코드가 저렴해졌다고 해서 미래 기능을 지금 만들 필요는 없다.
    선택지와 자금(시간 가치)은 사용하지 않고 보관할 때 가치가 높다. 코드 작성 비용이 낮아져도 이 기본 원칙은 변하지 않는다.

참조 사이트

  • The Cost YAGNI Was Never About

Mimul

Written byMimul
Mimul is a programmer, technologist, exercise enthusiast and more.
Connect