dref

디자인 참고 자료를 모으기만 하고 정작 쓸 때 못 찾는 게 문제였다. 모으는 일과 쓰는 일을 한 화면에서 잇는 도구를 만들었다.

개인 · 설계 및 구현26.07 –비공개 시스템 · 소스 미공개

Node.js · SQLite · HTML/CSS

Problem

디자인 참고 자료는 모으는 게 어려운 일이 아니다. 모아 둔 것이 정작 필요한 순간에 안 나오는 게 문제다. 북마크와 스크린샷 폴더에 계속 쌓았는데, 새 화면을 설계할 때 그중에 뭘 봤는지 기억이 나지 않았다. 더 근본적인 건 모으는 일과 쓰는 일이 끊겨 있다는 점이었다. 자료는 자료대로 쌓이고 설계는 설계대로 하니 왜 그렇게 정했는지가 아무 데도 안 남는다. 다음 프로젝트에서 같은 고민을 처음부터 다시 하게 된다. AI에게 참고 자료를 모아 달라고 하면 양은 금방 채워진다. 그런데 내가 직접 고른 것과 AI가 주워 온 것이 섞이는 순간, 그 더미 전체가 내 취향의 근거로서 값을 잃는다.

Decision

  1. 자료의 원본은 폴더에 놓인 텍스트 파일이고, 검색용 데이터베이스는 언제든 지우고 다시 만들 수 있는 사본으로만 뒀다. 데이터베이스를 원본으로 삼는 쪽이 만들기는 훨씬 쉽지만, 그러면 도구가 망가졌을 때 자료도 같이 사라진다.
  2. AI가 자동으로 주워 온 자료는 예외 없이 “아직 안 본 후보”로 시작한다. 내가 직접 고르기 전에는 취향의 근거로도, 추천의 근거로도 쓰지 않는다. 양을 늘리는 건 쉽지만 내가 고르지 않은 것이 섞이면 더미 전체가 근거로서 값을 잃는다.
  3. AI가 정리한 내용을 정답 파일에 바로 쓰지 못하게 막았다. 제안은 따로 쌓이고, 검사를 통과한 것을 내가 채택해야 정답이 된다. 그 대신 웹앱만 열어서는 초안이 아예 생기지 않고 AI 세션을 같이 켜야 그 단계가 움직인다. 불편하지만 받아들였다. 저절로 채워진 빈칸은 채워진 것이 아니라 검토를 건너뛴 것이기 때문이다.
  4. 거절한 제안에는 이유를 반드시 남기게 했다. 그냥 지우면 AI가 같은 제안을 계속 들고 온다. 거절 사유가 다음 제안의 입력이 되어야 주고받기가 앞으로 나간다.
  5. 저장한 화면 캡처는 아예 버전 관리에 넣지 않기로 했다. 자료 118개가 전부 원본 주소를 갖고 있어 다시 받을 수 있기 때문이다. 잃어버릴 수 있다는 걸 알고 내린 결정이라, 되돌려야 할 조건도 같이 적어 뒀다. 주소 없는 자료를 만들게 되면 그 이미지는 하나뿐인 원본이 된다.

Result

쌓인 참고 자료
118개
직접 고른 것과 AI가 주워 온 후보를 구분해 표시한다.
설치해야 하는 라이브러리
0개
검색용 데이터베이스, 웹 서버, 테스트 도구 전부 Node 기본 기능만 썼다.
이미지 백업
안 함 (118/118)
자료 전부가 원본 주소를 갖고 있어 다시 받을 수 있다.

결과 중에 제일 쓸모 있는 건 화면 위에서 대화가 오간다는 점이다. 캡처한 이미지 위를 클릭해 포스트잇처럼 메모를 붙이고 보내면, AI 세션에 한마디만 해도 그 메모 옆에 답이 붙는다. 디자인 판단은 원래 글이 아니라 화면 위에서 오가는 것인데, 그걸 글로 옮겨 적는 과정에서 계속 정확도가 새고 있었다. 이 주고받기는 따로 만든 도구와 저장 형식을 공유해서, 어느 쪽에서 시작한 것이든 같은 방식으로 이어 돈다.

소스를 공개하지 않는 건 코드가 부끄러워서가 아니라 안에 든 것 때문이다. 저장된 자료는 남이 만든 화면이고, 붙여 둔 메모는 그에 대한 내 사적인 평가다. 다만 이미지는 애초에 버전 관리에 들어가 있지 않아서, 공개하려면 코드와 메모만 정리하면 된다.

지금은 전면 개편 중이다. 자료를 모으고 분류하는 쪽은 돌아가고 있고, 그 자료를 실제 설계 결정에 이어 붙이는 쪽을 만들고 있다. 순서를 이렇게 잡은 이유는 앞쪽이 비어 있으면 뒤쪽을 만들어도 검증할 방법이 없기 때문이다.