소개
스프레드시트가 곧 시스템이었습니다.
저는 실제 제품 개발을 스프레드시트와 공유 드라이브로 돌리는 곳에서 일했습니다. 누가 그것이 좋은 방법이라고 생각해서가 아니라, 이를 해결해 줄 도구들이 구매팀을 갖춘 회사에 맞춰 가격이 매겨지고 설계되어 있었기 때문입니다. 어떤 파일이 잘못됐는지는 모두가 알았습니다. 어떤 파일이 맞는지는 아무도 말할 수 없었습니다.
만드는 사람
저는 Row입니다. 2025년에 ManyRows를 시작했고, 투자 없이 자비로 혼자 만들고 운영하고 있습니다.
ManyRows라는 이름은 데이터의 행(row), 즉 표 안에 나열되는 여러 줄을 가리킵니다. 제품이 실제로 다루는 것이 바로 그것이기 때문입니다. 하지만 이 이름이 진짜로 뜻하는 것은 관계형 구조, 즉 하나가 여럿과 맺는 관계입니다: 부모와 그 구성 요소들, 스타일과 그 컬러웨이들, 주문과 그 사이즈들처럼요. 이 일대다 관계는 스프레드시트가 붙들고 있지 못하는 부분이며, 그것을 붙드는 일이 PLM이 존재하는 이유의 대부분입니다. 덧붙이자면 제 이름도 Row이고, 스키마 설계부터 결제 연동, 고객 지원, 지금 이 문장까지 전부 저 혼자 하고 있습니다.
이전에는 몇 년 동안 콘텐츠 플랫폼과 앱 빌더를 만들었습니다. 덕분에 가장 어려운 부분은 이미 갖고 있었습니다: 의류든 배합이든 기계 가공 부품이든, 무너지지 않고 휘어지는 데이터 모델입니다.
그런 엔진이 있으면 당연히 또 다른 범용 앱 빌더를 만들고 싶어질 법합니다. 저는 그러고 싶지 않았습니다. 그런 도구는 이미 많고, 데모는 하나같이 근사하지만, 제가 실제로 지켜본 팀이 겪던 어려움에는 그중 무엇도 도움이 되지 않았을 겁니다. 그 팀의 일은 한 번도 “행 몇 개 저장하기”였던 적이 없고, 언제나 “공장이 어떤 리비전으로 만들었고, 누가 승인했는가”였기 때문입니다. 무엇이든 모델링할 수 있는 도구는 변경 관리와 리비전, BOM을 결국 스스로 발명하게 만들 뿐이고, 그것이 일의 전부입니다.
그래서 이것은 근사한 인터페이스를 가진 데이터베이스가 아니라 PLM입니다. 타입과 필드는 직접 정의하지만, 그 아래에서 동작하는 엔진은 다단계 BOM이 무엇인지, 그레이딩이 있는 사이즈 스펙이 무엇인지, 두 사람이 같은 레코드를 동시에 편집할 때 변경 요청이 무엇을 보장해야 하는지를 이미 알고 있습니다. 하나의 문제를 제대로 푸는 것이, 모든 문제를 얕게 푸는 것보다 값어치가 있었습니다.
이것은 방향을 찾고 있는 사이드 프로젝트가 아니라, 유료 요금제를 가진 실제 제품입니다. 동시에 솔직히 작습니다. 둘 다 사실이며, 두 가지를 함께 놓고 판단해 주시기 바랍니다.
한 사람이 주는 것
작다는 것은 보통 사과할 일로 취급됩니다. 하지만 이 업계에서는, 이 사이트에 있는 구체적인 네 가지가 애초에 가능한 이유가 바로 그것입니다.
그리고 물어봐야 할 것
한 사람이 운영하는 회사에 제품 데이터를 맡길 때 당연히 나올 질문은 제가 그만두면 어떻게 되느냐는 것입니다. 이 질문은 저에게도 물어야 하고, 투자받은 다른 벤더들에게도 비슷하게 물어야 합니다. “인수되고 제품이 단종된다”는 일은 PLM 업계에서 실제로 일어나는 일이기 때문입니다.
제 답은 이렇습니다. 나가는 길은 이미 제품 안에 들어 있고, 지금 당장 테스트해 볼 수 있습니다. 프로젝트 전체를 스키마와 레코드 모두 포함한 번들로 내보내, 다른 곳으로 다시 가져올 수 있습니다. 평소에 쓰는 그 API 그대로입니다. 모델은 버려지고 행만 남은 CSV가 아닙니다. 지원 티켓도, 만류하는 통화도 필요 없습니다. ManyRows가 어떤 이유로든 더 이상 맞는 답이 아니게 되면, 당신이 만든 것을 그대로 가지고 떠나면 됩니다.
이것은 의도적인 설계입니다. 떠나기가 얼마나 괴로운지가 아니라, 제품이 얼마나 좋은지로 경쟁하고 싶습니다.