원고에서 손 뗀지 얼마 안됐는데 벌써 책 내용도 가물가물하다. 그러니 책을 써온 그 동안의 기억도 금새 사라지겠지. 더 잊기 전에 책을 써왔던 이야기를 적어놔야겠다.

IT서적은 국민학교 5학년 때부터 교보문고 컴퓨터 서적 코너에 수시로 들락거리면서부터 꾸준히 읽고 공부하기 시작했으니 대충 27년쯤 읽어온 것 같다. 하지만 한번도 내가 직접 책을 써볼까 하는 생각을 해본 적은 없다. 그래서 2006년 어느날 당시 마소 기자였던 희용이(지금은 마소 발행인이자 마소 인터렉티브 사장)가 "형 책 한번 써볼 생각 없어?"라고 지나가는 말로 물어봤을 때도 별 생각 없이 "기회되면 한번 해보지"라고 대답했던 것 같다. 누가 부탁하면 거절을 못하는 못된 습성 때문에 "안 써"라고 말할 수는 없었기 때문이었을 것이다. 그리고 어느날 희용이가 강남에서 출판사 관계자와 함께 만나자고 했을 때도 별다른 생각없이 희용이 얼굴이나 한 번 보려고 나갔다.

그날 에이콘 출판사의 김희정 편집장님(지금은 부사장님)을 처음 만나게 되었다. 한국 IT서적은 97년에 삼각형 출판사에 여러번 크게 데인 뒤로 다시는 국내 서적은 보지 않겠다고 결심하고는 10년간 전혀 읽지 않았다. 99년에 해외로 나갔으니 더더욱 한국 책은 볼 기회가 없었다. 그래서 국내 IT서적 출판사가 어떤 곳이 있는지 알지도 못하던 때였다. 당연히 에이콘 출판사는 이름도 들어보지 못한 곳이었다. 어쨌든 희용이가 잘 알고 친하게 지내는 곳이라고 해서 만남을 가졌다.

처음 만났던 김희정 편집장님은 말투는 상냥하지만 좀 차갑게 느껴졌다. 인사를 하고 식당으로 가서 식사를 하면서 처음 받은 질문이 아마 "책을 쓰실 수 있겠어요?"였을 것이다. 나는 희용이 소개로 그냥 인사나 하려고 만난 것이라고 생각했는데, 당시 받은 느낌은 내가 책을 내고 싶어서 출판사에 소개시켜달라고 해서 만난 것 같은 상황이었다. 게다가 출판사 편집장님의 눈빛이나 말투는 "정기자가 소개를 해줘서 한번 만나기는 하지만, 어디서 이름도 못들어본 사람이 책을 내겠다고 하는데 과연 제대로 쓸 수나 있을까? 실력은 있는 것일까?" 하는 의심에 찬 것이었다. 물론 예상치 못한 질문에 당황한 나머지 그런 인상을 받았을 뿐 김희정 편집장님은 그런 뜻은 전혀 아니었겠지만.

아무튼 "네까짓게 책을 쓸 수 있어"라는 도전을 받은 듯한 느낌이 드니 오기가 발동했던 것 같다. 그래서 스프링이 얼마나 좋은 기술이고(당시만 해도 스프링 얘기를 꺼내면 다들 우습게 보던 시절이었다. 스트럿츠1 때문에 한국에서 스프링은 뜰 수 없다고 얘기하고 다니는 유명한 자바 개발자도 있었다. 오픈소스 기술은 절대 엔터프라이즈 개발에 쓸 수 없다고 블로그에 와서 훈계하고 가는 사람들도 있었다) 앞으로 전도 유망한지 열심히 얘기했던 것 같다. 아마 그런 열정을 보여서일까 그날 얘기는 긍정적으로 생각해보자는 선에서 마무리된 것 같다.

당시에 나는 카이스트의 모 프로젝트에서 스프링을 이용한 애플리케이션 프레임워크 개발을 책임지고 있던 시절이다. 2004년에 시작한 미국 프로젝트를 마치고 호주에 다시 돌아가려고 하던 차에 물개 승권이의 꼬임에 넘어가서 카이스트 프로젝트에 참여하게 되었다. 원래 한달만 참여해서 아키텍처만 잡아주면 된다는 것이 조건이었는데, 물개의 물귀신 신공에 넘어가서 한달이 6개월이 되고 6개월이 다시 일년이 되고, 2년도 되고 그러던 시절이었다. 사실 마소에 글을 쓰고 정기자를 알게된 것도 마소에 글쓰기가 귀찮아진 물개가 나한테 얼렁뚱땅 떠넘겼기 때문이다. 얼마나 원고 쓰기가 싫었던지 막판에는 내 블로그 글을 긁어다가 기사로 그대로 낸 적도 있는데(나한테는 일방적으로 통보만 해주고) 아마 그때 미안했는지 마소에 나를 추천해준 것이 정기자를 알게된 계기가 되었다.

그리고 그 해 겨울에 미국에서 열린 두 번째 스프링 컨퍼런스인 The Spring Experience 2006에 처음으로 참석하게 되었다. 담당 PM이 당황해서 프로젝트 중에 어디 가면 안된다고 말렸지만, 안보내주면 때려치겠다는 내 협박에 못이겨서 컨퍼런스 참여로 시간을 비우는 1주치의 급여를 받지 않는다는 조건으로 다녀올 수 있었다. 컨퍼런스 참가비와 여비, 못받은 급여 등을 합해보면 600만원 정도의 개인 비용을 투자한 셈이었다. 하지만 정말 10원도 아깝지 않은 시간이었다. Eric Evans를 만나고 새로운 기술을 배운 것도 좋았지만 그보다는 전 세계에서 몰려든 스프링 개발자들과 교제하면서 그들의 실력과 열정에 도전 받게 된 것이 더 좋았다.

컨퍼런스에 다녀오는 내내 책을 어떻게 쓸까 하는 생각을 많이 해봤다.

기존에 봤던 스프링 책들은 모두 장단점이 있었다. 로드 존슨의 without EJB는 절반은 왜 EJB의 대안이 필요한지 설명하는 내용이었고, 나머지 절반도 스프링의 기초 개념만 살짝 다룬 책이라 실무에 적용할 구체적인 지식을 얻기는 힘들었다. 그래서 without EJB는 최초의 스프링 책이라고 볼 수도 있고, 아닐 수도 있다. 제대로된 최초의 스프링 기술 서적은 Spring in Action일 것이다. 하지만 SiA는 내가 제일 궁금한게 많고 관심을 많이 가졌던 SpringMVC를 제대로 다루지 않아서 크게 실망한 책이었다. 600여페이지 밖에 안되는 얇은 책 주제에  Acegi니 Struts 같은 내용이 잔뜩 자리를 차지하고 있는 것을 보고 실망한 나머지 책을 구입한지 3일 만에 구석에 처박아 두고 다시는 보지 않았던 책이다.

당시엔 스프링 레퍼런스 문서는 100페이지도 안되는 얇은 분량이었다. 역시 SpringMVC에 관한 내용은 별로였다. 그래서 초기에 스프링에 대한 정보를 얻을 수 있는 거의 유일한 통로는 로드 존슨도 열심히 활동하던 스프링 사용자 포럼과 스프링 소스 코드였다. 어쩌면 스프링 소스를 들여다 볼 생각을 하고 거기서 많은 정보를 얻을 수 있다는 것을 알게된 것은 초기에 빈약한 스프링 관련자료와 서적 덕분이었을 것이다.

내가 가장 만족하면서 읽었던 스프링 책은 롭 해롭의 Pro Spring 1판이다. 2판은 저자가 바뀌면서 내용이 부실해져서 많은 원성을 들었지만, 1판은 정말 최고의 책이었다. 컨퍼런스에서 만났던 다른 스프링 개발자들에게 물어보면 다들 Pro Spring을 최고의 서적으로 꼽았다. 내가 Pro Spring에서 가장 좋았던 것은 단순히 스프링의 기술 사용방법 뿐 아니라, 그 원리와 기본이 되는 동작방식을 잘 설명해준 것과 POJO를 이용한 비즈니스 로직 작성의 중요성을 알려준 것이었다.

스프링 주요 개발자들이 함께 쓴 Professional Spring Framework도 물론 좋았다. 이 책에 나온 "스프링의 정수(essence)는 POJO에 엔터프라이즈 서비스를 적용시켜주는 것”이라는 설명은 지금도 내가 스프링을 설명할 때 자주 인용하는 것이다. 스프링이 POJO 프로그래밍을 위한 도구임을, 가장 중요한 것은 POJO로 만들어진 환경과 기술에 독립적인 애플리케이션 코드라는 것을 잘 알려주는 책이다. 이 책에서 가장 흥미롭게 본 것은 AOP다. AOP가 프록시 기술을 바탕으로 어떻게 만들어지고 적용되는지 매우 깊이있게 다뤄 준다. AOP가 어디선가 갑자기 떨어진 외계 기술이 아니라 자바의 고급 활용법에 불과하다는 것을 여기서 처음 알게되었다.

여러 가지 특징을 가진 스프링 책이 이미 존재하고 있고 또 계속 나오고 있는데, 과연 나는 어떤 책을 쓸 것인지, 어떤 독자를 대상으로 해야 할지 등등 여러가지 생각만 하면서 2007년을 맞았다.

내일 계속.

Related posts:

  1. 토비의 스프링 3이 나오기까지 (12)
  2. 토비의 스프링 3이 나오기까지 (5)
  3. [토스3] 스프링 JDBC DAO에 lazy-loading 적용하기 (2)
  4. [토스3] 스프링 3.0.4 <mvc:default-servlet-handler/>를 이용해서 UrlRewriteFilter없이 깔끔한 URL을 만들기
  5. 토비의 스프링 3이 나오기까지 (11)
  6. 토비의 스프링 3이 나오기까지 (9)
  7. 토비의 스프링 3이 나오기까지 (8)
  8. 토비의 스프링 3이 나오기까지 (7)
  9. 토비의 스프링 3이 나오기까지 (6)
  10. [토스3] 스프링 JDBC DAO에 lazy-loading 기능 적용하기
  11. 토비의 스프링 3이 나오기까지 (3)
  12. 토비의 스프링 3이 나오기까지 (2)
  13. 토비의 스프링 3 출간지연과 동영상 소식
  14. [토스3] 매핑 가능한 BeanPropertySqlParameterSource
  15. [토스3] 테스트를 위한 필드 주입 유틸

Facebook comments:

to “토비의 스프링 3이 나오기까지 (1)”

  1. ㅇㅎㅎㅎㅎㅎ 후속물이 기대됩니다. 코멘트는 나중에.. ㅋㅋㅋ ^^

  2. 술술 읽히는군요. 앞으로 소설책도 써주세요.

  3. 물개선생님이 허락도 없이 배껴쓰신 내용이 아마도 2005년 5월달에 without EJB에 대한 내용이였을 것 같네요. 저는 두 글을 따로 읽고서 최근에서야 그게 배껴쓴 것이라는 것을 눈치챘는데, 두분이 친하셔서 사전에 깊은 양해가 된 줄로 알았어요 ^^;

  4. 아주 실랄한데.. ㅋㅋ

  5. Without EJB 글과 Hibernate 소개 글은 토비님과 제가 만나게 된 계기를 만들어준 추억의 글이라 재밌게 본문을 읽었는데.. 괜한 오해를 살 수 있는 댓글이 좀 거슬리네요. 카이스트 플젝은 2005년 8월에 연이 닿아서 9월 쯤 착수를 했구요. Benelog님이 말씀하신 without EJB 글은 2005년 5월에 발표한 글입니다.

    당시 미국이던가? 호주던가.. 암튼 해외에 있던 Toby님께 제가 1시간 일찍 출근해 원격 연결로 Toby님의 스프링 경험을 전수 받던 때로 기억합니다. 그해 겨울 JCO에서 오픈씨드란 구상을 하고 있다고 밝히고, 개발자 분들의 참여를 끌어내기 위해 마소에 4회정도 글을 연재했는데요, 마지막 4회에서 오픈씨드 기술고문이였던 Toby님의 양해를 구하고 Without EJB 블로그 글을 가져다 썼습니다. 과거를 회상하며 기억을 더듬어 쓴 글이고, 평소에 장난스레 친한 사람들을 난처하게 하는 글을 즐기는 Toby형의 취향을 알기에 신경안쓰고 있었는데.. Benelog님. 참 기억력이 놀랍게도 좋으시네요.

    그때만 해도 만나기 전이라 온라인 상으로 양해를 구하고, 원고도 사전에 넘겨드린 상태에서 분명히 양해를 구하고 올린 글입니다. 괜한 오해 하지 않으셨음 합니다. 그리고 Benelog님. 남의 아이디를 차용한 글을 쓸 때는 조금 더 신중하게 고민하고 댓글 남겨주시길 바랍니다.

  6. 상혁님/ 물개가 허락도 없이 무단으로 배껴 낸 것은 아니에요. 사실 물개-기사-마소-정기자 까지 이어지려면 제법 긴 스토리인데 간략하게 줄여서 쓰다보니 오해의 소지가.
    물개/ 내가 친한 사람들을 난처하게 하는 글을 즐긴다니!

  7. 물개/ 아 제가 큰 실수를 했네요. 제가 본문 내용을 과도하게 상상해서 해석한 것 같습니다.
    ‘배껴 쓴’ 같은 표현도 적절하지도 못했네요. 왜곡된 내용의 댓글을 쓴 것을 사과드립니다.
    (토비님 위의 댓글은 삭제해 부탁드립니다.)

  8. benelog/오해의 여지가 있게 글을 쓴 Toby님 글이 발단이니 충분히 이해합니다. 그리고, 빠른 대응 감사하구요. 다양한 소셜 미디어들이 얼마나 파급력이 있고, 잠깐의 실수로 상대방을 난처하게 만들 수 있단 사실을 새삼 깨닫게 됩니다. 타인의 이야기를 쓸 때는 서로 한번 더 생각하고 글을 남길 수 있는 여유를 가져보도록 합시다. ^^
    Toby/내 고향인 부산에서는 얼마나 친한지를 욕의 정도로 파악하지.. 익숙하니 걱정마 ㅋㅋ 2탄도 재밌던데, 내 아디좀 자제해서 써주라.. 이건 뭐~ 누구 히스토리인지.. 쩝..

  9. iFwLrS wxpcoinhdrtl, [url=http://hgluhtqlohlu.com/]hgluhtqlohlu[/url], [link=http://slqrmskusyxs.com/]slqrmskusyxs[/link], http://xpnlhxrromtw.com/

  10. Have A Peek At This Website

  11. thank you for share!

  12. You Could Try These Out
    [url=http://www.hmlxxd.com/templets/nfl-9979.html]cheapest nfl jerseys[/url]
    cheapest nfl jerseys

  13. Hop Over To This Website
    [url=http://www.gzyobo.com/uploads/indexnz.php?/moncler-bady-its-so-neat-and-wearable-2013.html]moncler bady-It’s so neat and wearable 2013[/url]
    moncler bady-It’s so neat and wearable 2013

  14. Check this out
    [url=http://baileybuttontriplett.com]ugg bailey button sale[/url]
    ugg bailey button sale

  15. CLICK To Investigate
    [url=http://outlettonlineshop.com]ugg outlet store[/url]
    ugg outlet store

  16. I’m really loving the theme/design of your web site. Do you ever rrun into any internet browser compatibility problems?
    A handful of my blog visitors have complained about my blog not operating correctly in Explorer
    but looks great in Firefox. Do you have any recommendations
    to help fix this issue?

    Have a look at my webpage – weber genesis grill cover

  17. It’s going to be ending of mine day, except before
    end I am reading this enormous piece of writing to improve my knowledge.

  18. I every time used to read article in news papers but now
    as I am a user of internet thus from now I am using net for articles or
    reviews, thanks to web.

Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

© 2017 Toby's Epril Suffusion theme by Sayontan Sinha