AI를 옆에 두고 일하면 규칙을 적게 된다. 이건 이렇게 해라, 저건 하지 마라, 이 숫자는 여기서 가져와라.

처음엔 다 한 파일에 넣었다. 매번 자동으로 읽히는 파일이 하나 있으니 거기 넣으면 안 잊는다고 생각했다.

그 파일이 계속 길어졌다.

읽히는 시점으로 넷으로 나눴다

규칙마다 필요한 시점이 달랐다. 그래서 언제 읽혀야 하는지로 나눴다.

항상 읽히는 것. 모르고 시작하면 사고가 나는 것만 넣는다. 멤버에게 대량 발송하기 전에 미리보기를 볼 것, 날짜는 추측하지 말고 캘린더에서 확인할 것. 이건 120줄을 넘기지 않기로 했다. 길어지면 안 읽힌다.

최근 것만 남기는 것. 최근에 난 사고에서 나온 교훈이 자동으로 쌓인다. 스무 개에서 서른 개쯤 유지된다.

찾아서 읽는 것. 지금 250개가 있다. 특정 주제를 작업할 때만 필요한 상세한 규칙들이다. 자동으로 안 읽히니, 그 주제를 시작하기 전에 해당 목록을 열어 본다.

명령 안에 두는 것. 그 명령을 쓸 때만 필요한 절차와 톤. 명령을 실행할 때 같이 읽힌다.

새 규칙을 적을 때 세 질문으로 정한다. 모르고 시작하면 사고가 나나. 특정 명령을 쓸 때만 필요한가. 특정 주제를 다룰 때만 필요한가.

같은 규칙을 두 곳에 복사하지 않는다

이게 지키기 제일 어려운 규칙이 됐다.

편해 보여서 복사하기 시작하면 두 곳이 갈라진다. 한쪽만 고치는 날이 오고, 그러면 어느 쪽이 최신인지 알 수 없어진다.

그래서 위쪽이 늘 정본이고 아래쪽은 정본을 가리키는 한 줄만 갖는다. 예를 들어 쓰지 말아야 할 단어 목록은 늘 읽히는 곳에만 있다. 그 목록을 검사하는 명령에는 목록이 없고, 거기를 보라는 한 줄만 있다.

안 읽히면 적은 값이 없다

이 구조를 만들면서 생각이 하나 정리됐다.

규칙을 적는 목적은 실행이다. 적어 두었는데 필요한 순간에 안 읽히면 적은 값이 없다. 그래서 규칙을 쓸 때 이걸 언제 읽게 될지를 같이 정해야 한다.

항상 읽히는 곳은 좁아야 하고, 가끔 읽히는 곳은 넓어도 된다. 이 둘을 섞으면 좁은 쪽이 넓어져서 결국 아무것도 안 읽힌다.

따라 해보기

팀에 규칙 문서가 하나 있고 그게 길어지고 있다면, 각 규칙 옆에 이걸 언제 읽어야 하는지를 써보면 된다. 항상 읽어야 하는 것만 남기고 나머지는 따로 뺀다.