graphql-design-tutorial
graphql schema를 어떻게 설계할 것인지에 대한 shopify의 튜토리얼 문서이다. 우리 팀에서 이 문서의 내용을 차용해 graphql schema를 설계했기 때문에 문서를 읽는 것이 스키마를 이해하는 데 많은 도움이 되었다.
돌아본 계기
입사 초기에 CTO님이 이 문서를 알려주셔서 graphql도 배우고 영어도 공부할 겸 번역을 했었다. 현재까지는 한국어, 일본어, 간체자, 스페인어 등 여러 언어로 번역이 되었다.
번역한 뒤로는 별 신경을 쓰지 않았는데, 최근 회사에 새로 들어오신 분들이 이 문서를 참고하기 시작하면서 발 번역을 수정할 필요성을 느꼈다. 그래서 쌓였던 먼지를 털고 오래 전 번역했던 graphql-design-tutorial을 최근에 다시 읽었다.
shopify/graphql-design-tutorial 2019년 8월
PR
예전에 포크 떴던 레포에서 수정해서 PR을 날렸는데 confilct가 났었다. 보니까 이후로 30개의 커밋이 더 쌓였고, 한국어 외에도 스페인어 일본어 중국어 등이 추가되어 있었다. pull 해서 확인해보니 한국어도 수정이 돼있었다.
어떤 분이 개떡같이 번역한 것을 찰떡같이 수정해 놓으셔서 changes가 많이 줄었다. 그래도 번역이 덜 된 부분이나 애매모호한 번역, 어색한 번역투가 남아있어 PR을 날렸다.
오픈소스: 책임감과 성장
오픈소스는 개방된 코드이고 누구에게나 문이 열려 있다. 하지만 그렇다고 가볍게 생각할 것은 아니다. 내가 쓴 코드로 버그가 발생할 수도 있고, 내가 번역한 문서에 오역이 있어 많은 사람들이 잘못된 사실을 배울 수도 있기 때문이다. 다함께 만드는 소스이기 때문에 더 책임감을 요하는 것 같다.
그 당시에는 새로운 기능이나 편리한 것이 있으면 무조건 추가되는 게 좋다고 생각했는데 몇 번 오픈소스에 찝쩍거려보니 그렇지 않았다. 프로젝트마다 메인테이너의 철학이 다른 것도 있고(예를 들어 외부 라이브러리는 최소한으로 쓴다든지, 최소한의 꼭 필요한 기능만 제공한다든지 등) PR을 받아들이는 분위기도 달랐다.
이번 계기로 오픈소스에 커밋하는 것에 신중함과 책임감을 느끼게 됐다(그게 설령 버그가 생기지 않는 번역일지라도). 한편 이후에 쌓인 커밋들을 보며 오픈소스의 매력은 함께 성장해나가는 것임을 느꼈다. 프로젝트에 필요한 것을 사람들이 추가하고, 또한 나의 부족한 부분은 다른 사람이 메꿔준다. 아는 사람도 아니지만 함께 프로젝트에 기여한다는 점에서 어떤 유대감이 생긴다.
open up your code and let us in ~