gotchazipc
Go back

작은 도구는 작게 유지하기

개인용 도구는 사용자가 한 명이라 요구가 단순해 보인다. 하지만 만드는 사람과 사용하는 사람이 같기 때문에 기능을 추가할 이유도 쉽게 늘어난다.

먼저 적어 둘 질문

  1. 지금 반복해서 겪는 문제가 무엇인가?
  2. 자동화하지 않아도 충분히 빠른가?
  3. 실패했을 때 원래 상태로 돌아갈 수 있는가?
  4. 다음 달에도 이 도구를 이해할 수 있는가?

예를 들어 파일 이름을 정리하는 명령은 다음처럼 입력과 출력을 분리하면 검토하기 쉽다.

type RenamePlan = {
  source: string;
  destination: string;
};

function preview(plan: RenamePlan[]) {
  return plan.map(item => `${item.source} -> ${item.destination}`);
}

실제 변경보다 preview를 먼저 제공하는 구조는 기능을 조금 늘리지만, 잘못된 자동화를 되돌리는 비용은 크게 줄인다.

이 글은 화면 검토를 위한 임시 preview fixture이며 최종 게시물이 아니다.


Back to top
Previous Post
영화가 끝난 뒤 남는 장면
Next Post
느린 페이지를 피하기 위해 확인할 것들