brunch

You can make anything
by writing

C.S.Lewis

by 개앞맵시 이복연 May 05. 2024

[탄생 비화] JVM 밑바닥까지 파헤치기

개앞맵시 최장기 번역 프로젝트

차례

- 첫 만남은 계획대로 되지 않아

- 두 번째 기회

- 좌초 위기

- 포기할 수 없는 이유

- 결국, 그럼에도.. 구글 퍼스트?

- 늦었지만, 낡지 않은

- 묻고 더블로 가

- 세상으로

- 다음을 기약하며


첫 만남은 계획대로 되지 않아

인사이트 출판사로 자리를 옮긴 후, 아직 불모지에 가깝던 중국의 도서 시장을 본격적으로 눈여겨보기 시작했습니다. 중국은 내수 시장이 크기 때문에 영미권 못지않게 별의별 책이 다 있습니다. 여기에 폐쇄적인 특성이 더해져서인지, 베스트셀러들의 주제가 영미권/일본/한국과는 다소 차이를 보였습니다. 그중 《JVM 밑바닥까지 파헤치기》의 원서는 오랜 기간 최상위권을 지키는 스테디셀러였습니다.


마침 인사이트는 기반 기술을 다루는 도서에 강점이 있었고, 저도 이런 책들을 좋아합니다. 하지만 커다란 문제가 있었습니다. JDK 7까지만 다룬다는 점이었습니다. 국내에는 JVM 내면을 다루는 책이 오랜 기간 없었어서 계속 눈에 밟혔지만, 이미 낡은 원서를 1~2년에 걸쳐 번역해 출간하는 게 의미가 있을지는 자신이 없었습니다.


그래서 에이전시를 통해 개정판 출간 계획이 있는지를 문의했고, “없다”는 답변이 돌아왔습니다. 아쉽지만 이 책은 포기하기로 했습니다.


두 번째 기회

반년 정도가 지났을까? 갑자기 베스트셀러 목록에 개정판이 등장했습니다. 아마도 에이전시에 알리지 않고 개정을 진행했던 거 같습니다. 업데이트된 내용을 확인하고, 서둘러 연락을 취해 번역 출판 라이선스를 얻어냈습니다.


번역서를 내려면 역자를 찾아야 합니다. 중국어, 자바(그중에서도 가상 머신), 인사이트 눈높이에 부합하는 번역이 가능한 사람이 필요했습니다. 그간 중국 IT 책의 번역서가 출간된 적이 없진 않았지만, 아무래도 영어나 일본어 쪽보다는 역자 후보군이 압도적으로 적었습니다. 그래서 역자를 수소문하기보다는 제가 직접 번역하기로 했습니다.


저는 자바를 언어 측면에서나 가상 머신 측면에서나 제법 깊게 파고든 경험이 있습니다. 자바는 1997년부터 다루기 시작하였고, 개발자 시절 제 최애 언어였습니다. 짧게나마 자바 가상 머신 팀에서 일하기도 했고요. 그래서 제가 번역한 후, 필요하다면 당시 함께 일한 지인들에게 검수를 부탁하기로 했습니다.


그렇게 번역은 순조롭게 진행되..지 못했습니다.


좌초 위기

의도치 않게 몇 가지 일이 겹쳤습니다.


에이전시를 통해 출판 라이선스를 가져오던 시기에 저는 《밑바닥부터 시작하는 딥러닝 3》를 번역하는 중이었습니다. 그리고 《구글 엔지니어는 이렇게 일한다》 원서가 출간되면 번역하기로 이야기된 상태였습니다(아직 출간 전).


여기에 하나가 더 추가됩니다. 바로 출판사 창업 합류입니다. 제가 출판에 첫 발을 내딛었을 때 팀장이셨던 분이 독립하여 창업하신다기에, 시장에서 자리를 잡으실 때까지 도와드리기로 했습니다.


이렇게 해서 번역 진행 중 1권, 예정 2권을 안은 채 창업까지.. 지금 생각하면 왜 그랬을까 싶지만, 당시에는 감당할 수 있으리라 판단했습니다. 다행히 《밑바닥.. 3》는 오래지 않아 마무리했습니다.


하지만 창업 초기여서인지, 체력 관리를 못해서인지, 회사 일과를 끝내고 나면 진이 다 빠졌습니다. 결국 《JVM..》과 《구글..》 번역이 하염없이 밀렸습니다. 제 번역 인생에서 처음 겪는 일이었습니다.


계속된 스트레스에 둘 중 한 권은 포기해야 할지를 수차례 진지하게 고민했습니다. 담당 편집자께 ‘죄송하다’는 메일을 쓰다가 보류하기를 몇 번.. 어느 날 또다시 고민하다 잠이 들 무렵이었습니다. 번뜩! 정신이 들었습니다. 번역하기로 한 두 권은 제가 정말 간절히 원해서 시작한 일이었습니다. 그에 반해 창업 합류는 ‘도와드리자’라는 취지로 시작한 일이었습니다(이 점은 창업 전부터 분명하게 밝혔습니다).


포기할 수 없는 이유

제가 두 책을 진심으로 원했던 이유를 요약하면 다음과 같습니다.


《JVM 밑바닥까지 파헤치기》

개발자 시절을 함께 한 최애 언어&플랫폼  

객체지향, 디자인 패턴, 리팩터링, TDD 등의 세계로 날 이끌어준 고마움  

그 깊숙한 내면의 매력을 진득하게 소개한 콘텐츠 부족  


《구글 엔지니어는 이렇게 일한다》

‘무엇을 만드는가’보다 ‘어떻게 일하는가’를 중시하는 제 성향  

더 나은 개발자를 꿈꾸며 고민하고 경험한 것을 나누고 싶은 마음

‘개발자들의 워너비 기업’ 하면 빠지지 않는 구글에 대한 호기심과 동경  


이렇듯, 둘은 제 인생 1막인 개발자 시절에 가장 애정하고 중시하고 동경한 대상이었습니다. 그리고 개발 현장에서 떠나 편집자로서 인생 2막을 한창 달리던 당시, 개발자 시절의 고민과 노하우를 쏟아부어 진행할 수 있는 ‘마지막’ 책들이 아닐까 하는 생각도 컸습니다.

다른 이를 돕고자 내게 의미가 되는 일을 포기하는 건 너무 억울했습니다. 그럼에도 창업 멤버가 바로 이탈해 버리면, 용기 내어 첫 발을 내디딘 회사 대표님께 큰 폐를 끼치는 일일 것입니다. 혼자서도 충분히 잘하실 분인데, 애초에 합류하지 않으니만 못한 상황을 만들었겠죠. 그래서 어떻게든 끝까지 다 책임지기로 다짐하고, 담당 편집자들께는 늦어지는 점을 양해 부탁드렸습니다.


결국, 그럼에도.. 구글 퍼스트?

결과적으로 할 일은 하나도 줄지 않았습니다. 세 가지 일(출판사, 구글, JVM)이 모두 그대로였습니다. 막 시작한 출판사 일을 소홀히 할 수는 없었기에, 번역은 우선순위를 두어 하나씩 진행해야 했습니다.


여러 고민 끝에 《구글..》을 먼저 진행하기로 했습니다. 두 책 모두 오래가는 가치를 담고 있습니다만, 구글의 내부인이 아닌 저로서는 출간이 늦어졌을 때 최신 내용을 반영하기가 쉽지 않습니다. 반면, JVM은 오픈 소스이기 때문에 부족한 부분을 제 노력으로 만회하기가 훨씬 유리했습니다.


그리하여 《구글 엔지니어는 이렇게 일한다》가 먼저 세상에 나오게 되었고, 《JVM..》은 그만큼 더 늦어졌습니다.


늦었지만, 낡지 않은

오랜 시간이 흘렀습니다. 《구글..》도 세상에 내놓고, 출판사와도 적절한(?) 시점에 작별을 고했습니다. 남은 것은 《JVM..》뿐.


원서 출간부터 번역서 출간까지의 타임라인은 대략 다음과 같습니다.

원서는 JDK 11이 출시되고, 12가 early access일 시절에 쓰였습니다. 더구나 많은 내용이 2판 시절, 즉 JDK 7 이전 시절의 내용을 고스란히 담고 있었습니다. 자바는 백엔드 시장을 지탱하는 대표적인 기술이었고, 기업에서 백엔드는 신기술이 나왔다고 해서 손바닥 뒤집듯 교체할 수 없기 때문이었죠. 하지만 번역을 재개했을 시점에는 이미 JDK 17이 등장했고, JDK 7은 기술 지원이 끊겼습니다. 백엔드 기술의 수명이 아무리 길다 해도 원서 그대로 출간하는 건 의미가 없었습니다. 원서 2판의 번역 라이선스 계약을 포기했을 때와 똑같은 상황이었죠.


그렇지만 《JVM..》을 미루고 《구글..》을 선택했을 때 이미 예상하고 각오한 상황이기도 했습니다. 버전 12 이후의 모든 JDK를 다 깔아놓고, 변경사항을 일일이 추적하고 검증했습니다. 오라클이 배포한 공식 자료와 블로거들의 신기술 설명/분석 글들을 찾아 공부했습니다. 너무 낡은 내용과 원서 기준 미래 예측들을 다 쳐내고, 그 자리를 최신 내용으로 교체했습니다. 바뀐 부분이 너무 많아서 일일이 역자 주석으로 처리할 수는 없었습니다. 그래서 새로운 내용을 원래의 본문에 자연스럽게 녹였습니다. 이때 단순히 최신 정보를 전달하는 데 만족하지 않고, 원서가 다루는 기술 깊이에 절대 부족하지 않도록 노력했습니다. 덕분에 ‘낡은 원서를 역자가 보강했다’는 느낌 없이, 애초부터 최신 내용을 기초로 쓴 것처럼 풀어낼 수 있었습니다.


다사다난했던 번역은 이렇게 마무리되...지 못했습니다.


묻고 더블로 가

사실 저는 출판사에서 빠르게 대응한다면 JDK 21 출시 전에 번역서를 출간할 수 있게끔 원고를 전달했습니다. 하지만 세상은 당연히 제 위주로 돌아가지 않습니다. 어려운 내용에 만만치 않은 분량임은 말할 것 없거니와, 이 책이 엄청난 전략 제품은 아니었을 겁니다(그랬다면 애초에 번역을 미룰 수조차 없었겠죠). 담당 편집자가 진행 중인 다른 책들을 제처 두고 제 원고에 매진할 이유가 없었다는 이야기입니다. 저도 같은 업에 종사하는 입장이라서 재촉하지도, 사정을 여쭙지도 않았습니다. 그저 기다릴 뿐..


원고를 넘기고 저는 (그 사이에 또 나온) 《밑바닥부터 시작하는 딥러닝 4》를 번역했습니다.


이렇게 또 시간이 흘러 JDK 21이 출시되었습니다. JDK 21은 장기 지원(LTS) 버전이라서 모른 척 지나치면 책의 가치가 크게 훼손될 터였습니다. 그래서 ‘애매하게 21 직전에 출간하느니 차라리 잘 되었다’ 생각하고 원고 전반을 한 번 더 리뉴얼했습니다. 그리하여 원서보다 두 개의 LTS 버전을 더 반영한 번역서가 탄생했습니다.


세상으로

지금껏 어느 하나 소홀히 내놓은 책은 없습니다. 하지만 그중에서도 《JVM 밑바닥까지 파헤치기》는 가장 오래 걸렸고, 가장 많은 부분을 번역이 아닌 새로운 내용으로 채웠습니다. 긴 시간 저를 믿고 기다려주신 한기성 사장님과 송우일 편집자님께는 말로 표현하기 어려운 죄송함과 감사함을..


다행히 책 초기 반응이 나쁘지 않습니다. 자바의 위세가 예전 같지 않아서 걱정했으나 찾아주시는 분이 많으시네요. 지금까지는 여러 서점에서 분야별 베스트 상위권에 랭크 중입니다. 조금 더 버텨준다면 출판사 분들께 가졌던 죄송함은 털어버려도 될 거 같습니다. 독자 분들께서도 이 책에서 기대하신 바를 충분히 얻어가신다면 더는 바랄 게 없겠습니다.


다음을 기약하며

이번에 적지 않은 비중을 새로 공부해 채워 넣으며 얻은 게 많았습니다. 덕분에 나중에 혹시라도 필요하다면 원서와는 독립적으로 개정판을 낼 수도 있을 거 같습니다. 지금 이야기하기에는 너무 이릅니다만, 다음 LTS 버전인 JDK 25나 29가 출시될 즈음에 시장 상황과 제 여건을 봐서 어쩌면.. 정말 어쩌면입니다. 바쁘거나 흥미를 잃으면 모르는 척하겠습니다. ㅎㅎ


그리고 아직 풀지 않은 재미난 비화가 남아 있습니다. 이 역시 상황을 봐야겠지만, 아마도 멀지 않은 미래에 보따리를 풀 날이 올 거 같습니다.



- 자매품: <머신러닝 딥러닝 문제해결 전락> 탄생 비화

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari