brunch

You can make anything
by writing

C.S.Lewis

by 쿠우보이 Jan 29. 2017

김칫국 마시는 데 돈 들지 않으니

공짜니깐

설 연휴를 기회로 만들지 못했던 todo 리스트를 React로 만들어 보기로 했다. 그런데 쉽지 않다. 리스트를 추가하는 것까진 만들었는데, 각 리스트에 대한 삭제가 되질 않는다. 멘붕.. 뭔가 잘만하면 참 쓰기 편할 것 같은 게 React 인 것 같지만, 아직 초보인 나에겐 편하고 안 편하고를 떠나서 되질 않으니... React를 만든 페이스북에서는 나 같은 친구를 보면 그쪽에서 멘붕이 올 것이 분명하다.

"이렇게 쓰기 쉽게 만들어 줬는데 이걸 이해 못하냐!"

마크 주커버그의 외침이 들리는 것 같다.

이틀 째 리스트 삭제가 달 동작하지 않아 샘플 코드를 찾아봤다.

무수히 많은 todoItems .....

그동안 찾아봤던 샘플 코드 중, 그래도 제일 무난한 것 같아 리뷰하는 중에 있다. 역시 처음에 어떻게 설계하느냐가 중요해...라고 생각하던 중, 나 같은 초보가 설계는 무슨... 못하는 부분은 일단 따라 해서 작성해보자!라는 굳은 의지로 리뷰를 하고 있다.


계속적으로 사업 아이템을 찾고 있다. 무슨 사업 아이템을 찾는데 스토리가 없다. 이름만 들어도 알 것 같은 회사들은 초창기에 왜 이 사업을 하게 되었는지 '스토리'가 있기 마련인데, 나는 도무지 스토리가 생기지 않는다. 그러기 어렵겠지만, 혹시라도 성공해도 나는 아마 '성공기'같은 책은 못 쓸 것 같다. 너무 재미없을 테니깐. (재밌으려고 사업하는 게 아니지 않으냐 물을 수 있겠지만, 철없는 나는 아직까지는 재밌으려고 사업을 하는 거다)


내가 어떤 누구들보다 더 똑똑하거나 영특한 것도 아니고, 천재도 아니고, 심지어 수재도 아니다. 따라서 남들이 많이 모르는 분야에서 나만이 우연찮게 알고 있는 분야에서 무언갈 해야 한다. 나는 자동차 통신 임베디드 SW 회사에서 기술영업을 했다. 그러면서 불편했던 점을 해소할 수 있는 것들을 사업 아이템 후보로 삼고 있었다. 가장 불편했던 점들은 고객들이 기 구매한 라이센스들에 대해 바로바로 확인하기가 어렵다는 점이었다. 제품 자체가 50가지가 넘는 모듈, 그리고 각기 다른 하드웨어와 컴파일러, 그리고 자동차 회사의 사양까지 연결되어 있어 여간 복잡한 것이 아니다. 내부적인 조회 목적으로 지금까지는 pdf로 된 주문서를 눈으로 보고 엑셀에 차곡차곡 고객들의 구매한 라이센스 정보를 손으로 저장해놓은 것이 전부였다. (거의 원시시대 수준)


라이센스 입력 및 조회할 때마다, 아 이것 좀 본사에서 자동화해주면 안 될까? 하고 투덜거렸다. 그럼 내가 해보는 건 어떨까? 일단 pdf를 text string으로 변환할 수 있는 라이브러리가 있는지 찾아봤다. 내가 할 줄아는 언어는 대충 javascript밖에 없으니깐 js로 찾아봤다. 역시. pdf 관련 라이브러리가 눈에 띈다. 오픈소스 프로젝트로 진행이 되고 있는 듯하다. 얼른 다운로드하여서 이래 저래 쓰는 방법을 연구해 봤다. 30분이 지난 후, 라이브러리 적용 방법을 알아내었으나, 이런. 이것은 pdf viewer 의 오픈소스 웹 어플리케이션이었던 것이다. 아.. 삽질.

다시 내가 원하고 자 하는 pdf-to-text 라이브러리를 찾았다. 그리고 또 30분간 삽질을 계속한 결과 드디어 sample pdf를 string으로 바꿀 수 있었다. 일부러 빈칸을 없애고 다 붙여버렸는데, 이후 단어를 조회해서 쓸모없는 부분을 잘라버려야 해서 다시 빈칸을 복구해야 할지도 모르겠다. 이제 숙제는, 나름 정형화되어있는 주문서의 pdf에서 필요한 라이센스 정보만 추출하여 잘 정리해서 보여줄 수 있어야 한다. json/xml 형태로 내보내어 다른 쪽에서 rendering 하기 쉽게 해야 할지도 모르겠다.


사실 이런 기술적인 부분은 계속적인 삽질이나 조언 등을 통해 해결할 수 있겠지만, 내가 진짜 더 시간을 쏟아야 하는 부분은, 나만 알고 있는 이런 회사의 복잡한 라이센스 모델에 맞게 튜닝하는 것이다. 이 점이 진짜로 메리트가 있는 부분이니깐. 타겟 고객은 현재 다니고 있는 회사의 본사 (회사 업무시간과 회사 자원을 이용하지만 않으면 되는 것으로 알고 있다) 그리고 자동차 OEM 및 자동차 공급사들이 되겠다. 영업은 어떻게 하지? 현업인 엔지니어 고객분들이 필요를 느껴도, 구매팀에서 사주지 않으면 팔 수가 없다. 현업/구매팀 모두에게 필요성이 있어야 한다.


김칫국부터 마신다고, 혹시라도 내가 이 프로그램을 만들어서 본사에 팔 수 만 있다면, 오픈소스 라이브러리를 이용해서 상업화가 가능한지 알아봐야 했다. 오픈소스 라이센스에 대해 제대로 알아보겠다고 유투브 검색을 하다가 40분 이상 어떤 세미나를 들었는데, 나중에 보니 어떤 오픈소스사의 제품 홍보 차원에서의 강의였다. 바로 꺼버리고, 다시 짧은 오픈소스 소개 영상과 위키로 대체했다. 삽질의 연속.


오픈소스 라이센스 종류는 여러 가지가 있지만 가장 많이 사용되는 것들 중 하나가 GPL, 그리고 MIT 라이센스였다. GPL은 리차드 스톨만이 만들었다고 하는데 되게 엄격하다. 이 라이센스로 된 코드를 사용하면, 파생된 모든 소스코드는 공개가 되어야 한다. 그래서 상업화는 거의 불가능하다고 보면 되겠다. (아니면, 코드는 공개하고 기술지원 및 유지보수에 대해 돈을 받기도 한다고 들었다.)

이에 반해 상대적으로 MIT 라이센스는 코드 공개의 의무가 없으며, 상업화도 가능해 보인다. 그러나 이 MIT 라이센스가 되어있는 코드 자체에서 GPL 라이센스의 라이브러리가 쓰이는지 확인해야 했다.


해적 창업 가이드에서는 무조건 고객의 수요가 있는지 알아보고, 미리 주문을 받고 만들어보라고 했다. UFO를 만들어내도, 팔 수 없으면 로스웰로 가버릴지도 모르니깐. UI는 능력이 없으니 pdf에서 바로 라이센스 정보만 추출하여 블록 형태로라도 터미널에서 보여줄 수 있는지 MVP를 만들어서 본사 친구에게 보여줘야겠다. 그리고 MVP를 뿌려놓고 피드백을 받아봐야겠다.



매거진의 이전글 꼰대
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari