2011년 북미 아파치콘(ApacheCon NA 11)에 다녀왔습니다. 한국에 들어와서 밀린 업무를 시작했습니다. 다녀오고서 많은 생각이 들었습니다.
다양한 발음
첫째로 떠오르는 건, 사람들의 말을 알아듣기가 꽤 힘들었습니다. 아파치콘은 세계의 오픈소스 개발자들이 모인 자리로, 발음이 정말 다양합니다. 남미와 아시아, 유럽에서 온 사람들의 발음이 서로 다릅니다. 자신의 발음을 얼마나 미국식에 가깝게 하느냐 보다, 어떻게 그 다양한 발음들을 알아듣느냐가 더 중요합니다. 제가 발음은 좀 엉망으로 해도 사람들은 잘 알아들었습니다. 이런 경험은 기존 교육 방법으로는 쉽게 할 수 없는 지라, 좀 더 전문적인 교육이 필요하지 않은가 의문이 들었습니다.
자신감, 어휘, 문법의 중요성
이야기를 나누면서 자신감과 어휘, 그리고 문법의 중요성을 느꼈습니다.
자신감이 없는 사람의 발표는 소리가 어물어물하여 도무지 알아들을 수가 없었고, 양해를 구하는 말을 하며 발음에 신경을 쓰느라 진도가 나가지 않아 듣기에 참 피곤했습니다. 발음이 어색해도 당당하게 크고 빠르게 말하는 사람의 내용을 귀담아 들을 수가 있었습니다.
또한 굉장히 한정된 분야의 이야기를 나누기 때문에 아주 다양한 어휘를 배울 필요는 없었지만, 여전히 어휘는 중요했습니다. 우리가 자주 쓰는 기술 용어들의 영어 어휘와 일반 회화에서 쓰는 정도의 어휘는 익혀두어야 합니다.
문법은 기본 중의 기본입니다. 어휘를 아무리 잘 늘어놓아도 말의 앞뒤가 맞지 않는다면 이해하기에 굉장히 힘이 듭니다. 이런 부분이 힘든 한 일본인은 아예 대본을 써놓고 와서 읽는 모습도 보았습니다. 문법을 떠올리느라 시간을 허비하는 것보다는 훨씬 나았습니다.
오픈 소스, 오픈 토론
발표 방식은 어차피 다른 기술 발표들과 크게 다르지 않았습니다. 사람들은 자리에 앉아 연단을 바라보고. 강사는 연단에서 서서 화면에 발표자료를 띄워놓고. 화면을 넘겨가며 설명을 하는 바로 그 전통적인 방식입니다.
오히려 크게 차이가 난 것은, 열린 토론 자세였습니다. 일반적으로 상업 기술에 대한 자리는, 핵심 구현 방법에 대한 이야기를 잘 나누지 않고 그저 어떻게 쓰는지와 성능이 어떠한지, 얼마나 기능이 다양한지에 대한 홍보 정도에 그치는 경우가 많습니다. 하지만 오픈소스 기술에 대한 토론은 어차피 모두 공개된 기술에 대하여 논하는지라, 더 깊은 수준의 알고리즘과 구현 단계 등에 대해 논할 수 있었습니다.
일례로, 마이크로소프트가 오픈소스 분산처리 기술인 하둡에 대한 발표를 할 때가 인상적이었습니다. 도대체 무슨 개선점을 반영시켰냐는 질문에 마이크로소프트의 담당자는 꿀먹은 벙어리가 될 수 밖에 없었습니다. 아무리 좋은 기술을 만들어도, 오픈하지 않으면 더 깊은 단계에 대해서 논의할 수 없습니다.
인맥
핵심 개발자들과의 인맥을 쌓은 점도 커다란 수확입니다. 아침 8시부터 저녁 11시까지 참가한 날도 있었을 정도였고, 그 때마다 핵심 개발자들과 만나서 질문도 하고 기분에 대해서 묻기도 하니 제법 친근해졌습니다. 루씬의 핵심 개발자와는 명함도 나누었고, 발표 제의에 수락까지 받아냈습니다. 우리와 비슷한 문제를 겪고 있는 회사의 핵심 개발자와도 의견을 나누고 명함을 주고받을 기회가 있었습니다.
장벽들
가장 큰 어려움을 겪은 부분은 역시 언어, 음식과 일정 부분이었습니다. 영어에 아주 익숙하지는 않아 약간의 어려움이 있었습니다. 컨퍼런스에서 제공된 음식은 주로 우리 입에 잘 맞지 않는 것들 뿐이었습니다. 식초로 절인 쌀 샐러드는 정말 지독했습니다. (…) 일정 관리가 조금 허술해, 해카톤에서는 따로 집중하는 시간이 없어서 첫날부터 굉장히 녹초가 됐습니다. 다른 발표들도 시간이 바뀌거나 라이트닝 토크가 다른 일정의 시간을 침범하는 등의 약간의 진행 문제가 있었습니다.
검색 기술
제가 관심을 가진 루씬의 활용 예는 굉장히 다양했습니다. 실험적인 프로젝트로 연인간 짝을 지어주는 서비스로 활용하거나, 체스 문제를 풀고, 상품을 추천하거나, 표절 논문을 찾아내는 경우에도 활용할 수 있다고 합니다. 물론 그 전용으로 설계된 시스템보다 훨씬 낫다는 이야기는 아니지만, 루씬의 수학적인 바탕을 활용한 생각의 전환점으로 삼기에 충분한 발표였습니다. 회사에서 추구하는 실시간 분석에도 참고할만한 바였습니다.
새롭게 출시될 루씬 4에 대한 발표도 굉장히 인상적이었습니다. 색인 자료구조 개선으로 인해 검색 성능이 향상되고, 멀티스레드를 원활히 사용하여 색인 성능을 높아졌습니다. 이를 구현하면서 겪은 고충에 대해서도 해카톤에서도 핵심 개발자를 만나서 들을 수 있었습니다. 다만 대중이 사용할 수 있기 위해서는 내년까지 기다려야 할 것으로 보입니다.
그 밖에 미트업에서는 세계의 검색엔진 개발자들이 모여서 각자가 겪는 어려움을 털어놓고, 그 해법에 대해서 함께 논의했습니다. 전 세계에 스케일링하는 서비스 제공자부터 모바일 기기의 검색 기능까지 정말 다양한 환경에 대한 이야기를 나누었습니다. 물론 그 중에서도 윈도를 사용하는 개발자는 당장 운영체제를 바꾸라는 핀잔을 들었습니다.
이런 실무자들의 모임을 통해서 우리가 흔히 겪을 수 있는 문제에 대해 파악하고 피해갈 방법을 모색할 수 있었습니다. 또한 우리가 택하지 않은 접근법에 대해서도 간접적으로 들을 수 있어 시야를 넓히는 데에도 도움이 됐습니다.
결론
아파치콘에 참석한 건 개발자로써 굉장히 기쁜 일이었습니다. 핵심 기술자들과 만나 기술에 대한 열린 토론을 나눴으며, 앞으로의 교류할 통로도 만들었습니다. 잘만 활용하면 이를 바탕으로 기술적 어려움을 쉽게 해결하거나 새로운 사업 기회를 개척할 가능성을 보았습니다. 비록 언어나 음식, 일정 등에서 어려움이 없지는 않았으나, 다음에 제대로 준비하여 참석한다면 더 나은 결과를 낼 수 있을 터입니다.
