이야기를 디버깅하는 개발자.

개발과 창작 사이에서, 사람들이 자기만의 이야기를 만들 수 있는 도구와 기록을 만듭니다.

roslyn.dev 자세히보기

만드는 기록/작게 만든 도구들 4

원고와 사진 파일의 버전·백업 정책을 직접 만든 기록

백업은 파일을 복사하는 일이라고 생각하기 쉽습니다. 하지만 복사본이 어디에 있는지 모르거나, 최신 버전인지 확인할 수 없거나, 복구해 본 적이 없다면 위기 때 백업은 존재하지 않는 것과 비슷합니다.저는 원고와 사진을 동시에 다루면서 파일의 종류보다 복구 시나리오를 먼저 정했습니다. 이번 글에서는 비용이 큰 시스템보다 혼자 유지할 수 있는 백업 정책을 설명합니다.원본·공개 자산·백업을 분리합니다작업 폴더에는 편집 중인 원본과 업로드용 변환 파일이 함께 생깁니다. 이 둘을 백업할 때 같은 폴더에 넣으면 무엇을 보존해야 하는지 모호해집니다. 저는 원본, 공개 자산, 백업을 저장 위치와 키 구조에서 구분합니다.원본은 수정 이력을 보존하고, 공개 자산은 다시 만들 수 있도록 생성 정보만 남깁니다. 백업은 현재 폴..

작은 CLI 도구를 배포할 때 설정·로그·업데이트를 설계하는 법

개인적으로 쓰려고 만든 CLI는 실행만 되면 충분합니다. 그러나 다른 사람이 사용하기 시작하면 설정 파일이 어디에 있는지, 오류가 무엇을 뜻하는지, 업데이트 후 되돌릴 수 있는지를 설명해야 합니다.이번 글에서는 작은 도구를 배포할 때 코드 기능보다 먼저 결정해야 할 네 가지를 정리합니다. 패키지 레지스트리를 쓰든 실행 파일을 배포하든 공통으로 적용되는 기준입니다.첫 실행에서 알아야 할 것을 줄입니다CLI 사용자는 README를 끝까지 읽지 않고 명령을 실행합니다. 첫 실행에서 필요한 설정이 무엇인지, 기본 출력이 어디에 저장되는지, 실패했을 때 다음에 무엇을 해야 하는지가 바로 보여야 합니다.저는 설정을 명령행 인자, 환경 변수, 설정 파일 세 층으로 나누고 우선순위를 문서에 고정합니다. 비밀 값은 로그..

티스토리 글을 자동으로 백업하는 스크립트 만들기

블로그 글을 백업해야겠다고 마음먹고 오픈 API 문서부터 찾았는데, 그 문은 이미 닫혀 있었습니다. 예전에는 인증 토큰을 받아 글 목록과 본문을 정직하게 내려받을 수 있었지만 지금은 그 경로가 없습니다. 남은 것은 누구나 브라우저로 볼 수 있는 공개 경로뿐입니다.처음에는 관리자 화면의 내보내기 기능을 쓰면 되지 않느냐고 생각했습니다. 실제로 그것도 방법이지만, 사람이 직접 눌러야 하는 일은 결국 하지 않게 됩니다. 저는 3년쯤 백업을 미루다가 계정 문제로 하루 동안 블로그에 접속하지 못한 적이 있는데, 그때 처음으로 "글이 내 손에 없다"는 사실이 실감났습니다.이 글은 API 없이 공개 경로 세 가지만으로 백업 스크립트를 짠 기록입니다. 각 경로에서 무엇을 얻을 수 있고 무엇이 부족한지 비교하고, 이를 ..

플랫폼별 복붙 오류를 없애는 원고 서식 변환기 직접 만들기

한글 파일에서 5,000자를 복사해 연재 플랫폼 에디터에 붙여넣고 미리보기를 눌렀는데, 문단 사이가 전부 두 줄씩 벌어져 있었습니다. 대사 앞의 들여쓰기는 사라졌고, 큰따옴표는 어느새 모양이 다른 문자로 바뀌어 있었습니다. 결국 한 화 분량을 눈으로 훑으며 손으로 고쳤습니다.이런 일이 한두 번이면 참고 넘어갑니다. 그런데 매주 두세 편씩 올리는 사람에게는 매번 15분씩 새는 일이 됩니다. 저는 웹소설을 써서 온라인 출판까지 해본 적이 있는데, 그때 가장 짜증났던 게 원고 자체보다 이 붙여넣기 뒤처리였습니다.이 글은 그 뒤처리를 대신하는 작은 변환기를 만든 기록입니다. 무엇이 깨지는지 먼저 분류하고, 각각을 정규식 규칙으로 옮기고, 마지막에는 왜 이 도구를 서비스가 아니라 파일 하나짜리 HTML로 두는 편..

반응형