프로 스프링 2.5 6장 저자와 번역 합의 메일

봄싹스터디에서 베타리딩 중인 프로 스프링 2.5 6장 AOP 관련 내용 중에 이상한 부분이 있다는 글이 올라온적이 있습니다. 성윤님이 올린 글 @Aspect는 누구의 것?이라는 글인데 저 부분을 번역한 것이 바로 접니다. 번역하면서도 저 부분이 뭔가 맘에 걸렸지만 일단은 번역 자체가 급해서 걍 넘어갔었는데 다행히도 베타리딩에서 잘 걸렸네요.

몇 일 미루다가 오늘 아침 저자에게 메일을 보냈습니다.

사용자 삽입 이미지
대충 @AspectJ 애스팩트가 AspectJ에 의존하는데 왜 의존하지 않는다고 썼느냐.. 라고 보냈습니다. 그랬더니 답장이 왔는데..

사용자 삽입 이미지
음.. 이건 걍 읽어보시면 좋은 내용입니다. 본래는 어쩌구 저쩌구 하면서 좀 장황하게 얘기를 해주네요. 중요한건 ApsectJ 라이브러리를 참조하기는 하지만 애노테이션을 떄문에 참조하는 것이지 스프링 AOP를 사용할 때는 AspectJ의 compile-time weaving 같은 컴포넌트를 사용하진 않는다는 겁니다. 그런 뜻으로 AspectJ에 의존하지 않는다고 한거라는거죠.

하지만 너무 애매하자나요. 그래서 다시 메일을 보냈습니다.

사용자 삽입 이미지
애매하니까 AspectJ 라이브러리에서 애노테이션만 사용하고 다른 것들은 사용하지 않는다는 식으로 번역하겠다고 보냈습니다.

사용자 삽입 이미지
귿~ 잘 해결됐네요. 그렇게 하랍니다. 번역서에서는 좀 더 분명하게 적어드리겠습니다.

재벌의 묘미(?)

출판사 부탁으로 다른 분이 번역한 걸 손보는 작업을 하고 있습니다. 물론 자봉은 아닙니다. 그리 내키는 작업은 아닙니다. 누군가의 자존심을 상하게 하는 일일 수도 있으니까요.

그런데 참 재밌습니다. 번역을 꾸준히 하다보면 자신 만의 패턴이 생기는데 같은 상황에서 다른 분들은 해당 표현을 어떻게 한글화 하는지 볼 수 있습니다. 그런 재미가 쏠쏠합니다.

가끔은 다른분이 표현한 것보다 더 좋은 표현이 떠올라서 그걸로 수정할 때가 있는데 그럴 때는 뭔가 ‘잘난채’하는 기분도 느껴집니다. 그래봤자 도토리 키재기지만 말이죠.ㅋㅋㅋ

이런 글을 쓰면 마치 제가 번역을 쫌 하는 것처럼 느끼실 수 있겠지만 전혀 그렇치 않으니까 그런 생각은 하지 말아주세요. 저는 관심있는 글을 번역하는게 재밌어서 하는거지 잘해서 한다거나 이름 한 줄 때문에 한다거나 돈을 보고 하는게 아니랍니다.(솔직히 말하면 이런 이유들도 어느 정도는 작용을 합니다.) 제가 책을 1년에 30권만 읽었어도(부끄럽게도 1년에 그 정도도 안 본다는 거죠..ㅋ) 번역 품질이 더 좋아졌을 수 있을텐데하며 아쉬워 하는 중입니다. 말이 나온김에 올해에는 한 달에 3권을 목표로 도전해야겠습니다.

예를 들어..

Listing 8-4. Mixed-Concern Interface

초벌: 목록 8-4. 잡다한 관심 사항이 있는 인터페이스

재벌: 코드 8-4. 혼잡한(Mixed-Concern) 인터페이스

요런 재미가 있다고나 할까요…

번역 품질을 높이는 방법?

전 잘 모릅니다. 번역을 꾸준히 하고는 있지만 잘 한다고 생각하지도 않으며 잘 하려고 연구를 해보지도 않았습니다. 그럴 시간에 하나라도 더 번역을 해야하기 때문에… 그래도 한 번 생각난 김에 정리해보면 다음과 같습니다.

먼저 번역하는 사람의 문장력이 좋아야 합니다. 번역자가 문장력이 좋고 한글 표현을 잘 사용할 줄 안다면 그만큼 품질 좋은 번역 기사나 번역서가 나올 겁니다.

다음으로 번역자가 영어를 감당할 수 있어야 합니다. 영어를 잘 몰라도 주변에 영어를 잘 알고 있는 친구나 사전을 이용해 가면서 문맥에 비슷한 표현이 나오도록 할 수 있어야 합니다. 기술 서적 중에 쉬운 책들은 중학교 수준 영어 실력만 있어도 번역이 가능하죠.

세번째로는 번역하려는 내용을 알고 있어야 합니다. 저 같은 경우 짧은 글을 번역할 때는 이 규칙은 보통 무시합니다. 새로운 기술이 알고 싶어서 번역할 때도 있거든요. 대신 책이나 레퍼런스 같이 분량이 많아서 일관성이 있어야 하고 어떤 기준이 필요할 때는 해당 기술을 얼마나 잘 이해하고 있는가가 번역 품지을 좌우하기도 합니다. 실제로 제가 메이븐을 하나도 모를 때 메이븐 튜토리얼을 번역한 적이 있는데.. 요즘 들어 가끔보게 되면 민망해 죽을 지경입니다.

네번째로는 재벌이 중요합니다. 다시 한 번 전체 내용을 읽어보면서 날림 번역으로 어색한 문장이나 문맥에 맞지 않는 내용이 눈에 띄면 다시 원문과 비교해서 손보는 작업입니다. 이 작업을 하면서 자신이 읽어도 이해가 된다. 싶을 정도면 일단 OK 입니다. 저는 보통 짧은 글은 재벌도 잘 하지 않는 편입니다. 짧은 글은 애초에 처음 번역할 때 날림 번역을 하지 않고 문맥에 맞추면서 하기 때문에 자잘한 오타와 한 두 문장을 고쳐야 하는데 시간을 소비하고 싶지 않아서 입니다.

마지막으로는 번역을 꾸준히 해서 감을 잃지 말아야 하는건데 이건 잘 지키고 있습니다. 꾸준히 하다보면 비슷한 문장이 등장했을 때 번역 패턴이 생기기도 하고 더 좋은 한글 표현이 떠오르기도 합니다. 예를 들어 오늘 GMP를 듣다가 알게 된건데 All I want for cristmas is you 같은 경우. “내가 크리스마때 원하는 전부는 너야.” 라고 All 을 곧이 곧대로 번역하는 거 보다 “내가 크리스마스때 원하는 건 오직 너 뿐이야.” 라고 All의 의미를 반전시키면 훨씬 깔끔한 문장이 되는거죠. 이런 건 꾸준히 하다보면 하나 둘 씩 생기는 스킬 같은 거라고 생각합니다.

어쩃거나.. 결론은 번역 품질을 높이려면 번역자가 번역을 잘 해야 한다는 거… 그렇지 않고 베타리딩에 모든 걸 건다?? 글쎄요. 저 같은 경우 베타리딩 할 때 품질이 영 아니면 대충 해버리거나 중간에 포기해버립니다. 베타리더가 돈을 받는 것도 아니고 명예가 생기는 것도 아닌데 감수자나 번역자 역할을 대신 해줄 순 없으니까요.

one A for every B 번역하기

얼핏보면 모든 B에 대한 하나의 A. 즉 모든 B가 하나의 A를 공유하는 것 같이 보이지만, 전혀~~ 전~~~혀 아닙니다. 완전히 틀린 번역이 되버립니다.

“각각의 B에 A 하나씩”

이게 정답입니다.

“the application now maintains one instance of the aspect for every target”

자 그럼 위의 문장은 어떻게 번역 or 이해해야 할까요?

“이제 애플리케이션은 각각의 타겟 객체 마다 애스팩트 객체를 하나씩 사용하게 된다.”

이렇게 됩니다. 간혹 원서로 공부를 하시거나 번역을 하실 때 주의 하시기 바랍니다.

번역 할것들이 넘쳤다. 열심히 하자!

9월

Ajax and Java development made simpler, Part 3: Build UI features based on DOM, JavaScript, and JSP tag files
JSF for nonbelievers: JSF conversion and validation

10월

– Getting started with JavaServer Faces 1.2, Part 1: Building basic applications (스크린캐스팅)
JSF for nonbelievers: JSF component development
Automation for the people: Continual refactoring

11월

Meet the JavaScript Development Toolkit
Automation for the people: Hands-free database migration

– Java Persistence With Hibernate
– Pro Spring 2.5

기타

Spring Dynamic Modules Reference
The Ted Neward Challenge (AOP without the buzzwords)