자바원 2008 참가하기 위해서 오늘 출발합니다. 2004년에 찍어놓은 사진 보시죠.
http://www.okjsp.pe.kr/javaone2004/javaone2004.html

 

5월 4일까지 3일동안 여행다니고, 5월5일은 CommunityOne 2008 행사에 참가합니다.
샌프란시스코 풍경은 구글어스로 확인하실 수 있습니다. 검색어로 moscone, sf 제가 머물게 되는 곳 풍경을 보실 수 있습니다.

 
2004년에 저자 사인회에서 만난 두분입니다. 헤드 퍼스트 시리즈를 시작하신 분이죠. 케이시 시에라님과 버트 베이츠님이죠. 이번에도 만날 수 있을 지는 모르겠습니다.

개인적으로는 JUGS leaders(http://community.java.net/jugs/) 사람들을 만나서 얘기할 것 같습니다. 메일링리스트에서 얘기했던 몇 분들이죠. Aaron Houston 같은 분들이요.

회사 한 분 동행합니다. 사진 등을 올려서 그쪽 상황 전해보려 합니다.
잘 다녀오겠습니다.
이상합니다. 이 말이 우리나라에서는 맞는 말인 것 같으니 말입니다.
컴퓨터는 많이 사 봤는데, 윈도우를 산 기억은 거의 없습니다. 노트북 살 때 CD-KEY 딸려온 것 빼고는 말이죠.
다음의 IT,과학이 서브카테고리입니다.
사용자 삽입 이미지
이건 네이버의 IT/과학 카테고리이죠.
사용자 삽입 이미지

정말로 소프트웨어는 뉴스꺼리도 없나봅니다. 덴장.
그러면 매크로소프트웨어도 아닌 마이크로소프트웨어는 어떻하라고요~~~(배용만버전)
보이지도 않게 마이크로하게 작다는 네이밍 센스 때문이죠. 그렇다고 이름 바꿀 수도 없는 것이구요.
사용자 삽입 이미지


넓직한 판을 생각하지 않는 마초(macho)적인 소프트웨어는 될 리가 없습니다.

그리고 하나 중요한 거.
컴퓨터 살 때 "서비스로 뭐 없나요" 라고 물어보는 것은 "공짜나 덤으로 뭐 없나요"하고 같은 뜻입니다. 즉 그 때 덤으로 받은 것은 공짜다. 무가치 하다 라는 뜻이죠.

서비스는 공짜다 라는 인식이 있는 한 우리나라 인터넷을 위시한 서비스 업종은 제대로 돈 벌고 살기는 힘듭니다.
어제 영민군이 5시간동안 운전하고 함께 강의를 할 ncrash님 마산 집에서 잘 자고 일어났습니다.
아침 식사하고 곧 부산으로 갈 예정입니다. 부산은 한 시간 거리라고 하는데, 교통 체증이 있을 수 있다고 하네요. 부산 세미나 장소 섭외해주신 Blueray님 만나서 함께 점심을 먹고 세미나 장소인 부산 중앙ITEA 서면 센터로 이동하겠죠.

오늘도 동영상을 찍을 예정입니다. 지난 번 세미나보다 더 잘 나오면 좋겠습니다.
신청하신 분들이 20명이 안되는데, 많이 오셨으면 좋겠습니다. ^^; 기름값이랑 약간의 강사비는 건지고 싶은데 말이죠. ^^
아, 에이콘 출판사에서 5권 후원해주셨습니다. 서브버전, 보안 해킹에 관련된 서적 2, 조엘온소프트웨어, 플렉스 개정판 이렇게 뽑았습니다.
도움을 받은 분이 이번 세미나에는 많군요. 모두 감사드립니다.
사실 MB시대를 살아간다는 것이 신뢰나 희망이 없이 사는 것이지만, 그래도, 그래도 얘기를 하자면 같은 건물에서 살아가는 다른 직업의 사람들은 무슨 낙으로 살까.
사업주는 자신이 책임지고 있는 인터넷 서비스와 그 기업의 이익이 나는 것, 매출이 증가하는 것에 대한 낙을 갖고 있고, 그에 대한 보상으로 실제적인 수입과, 주가 등의 기업가치 증가라는 낙이 있다.
인터넷 서비스를 사용하는 사람들이 사용할 웹 애플리케이션은 마지막으로 웹개발자의 손으로 만들어진다. 서비스의 최접점에서 일하는 사람의 마감처리에 따라서 쓸만한 서비스일 수도 있고, 다시는 가고 싶지 않은 서비스가 될 수도 있다.

그 다음 레이어에서 웹디자인하시는 분들은 배너만드느라, 플래시 만드느라, 사이트 컬러 테마 잡느라고, 문구 바꿔달라고 하는 기획자 내지는 부장님, 이사님 째려보면서 어도비 제품군에서 벗어나지 못하고 있다. 기껏 애써서 만든 디자인 개발자에게 넘기면, 지멋대로 재해석된 최종페이지에 경악을 금치못하고 속상해 하지만, 말을 한다고 들어줄 개발자가 몇이나 될까라고 지레 말하기를 포기해 버리기도 한다.

그럼, 서비스를 기획하는 사람은 어떤 생각을 하고 살까? 사업의 혜택을 받는 것도 아니고, 그 서비스에 책임을 지는 것도 아니고, 디자인을 하는 것도 아니고, 개발을 하는 것도 아니다. 아이디어만 있는 것이고, 다른 사람들을 통해서 서비스를 만들어 가는 사람이다.
흠 좋게 말하면 감독(Director)이고, 나쁘게 말하면 사기꾼(말에 책임질 수 없는)인 것처럼 생각된다.

달리 말해서 남의 돈으로 서비스 만드는데 자기가 직접 손을 대는 것이 아니라 감 놔라, 배 놔라, 컷, 다시, 등등등 남들의 액션을 통해서 서비스를 만들어가는 사람. 그렇다면 커뮤니케이션이 이 사람의 정말 중요한 항목이 아닌가 생각된다.

좀 일할 때 매너있게 잘 하는 기획자를 만나면 좋을 것 같다.
사용자 삽입 이미지
image from: http://i-guacu.com/539

레거시 코드는 2시간동안 제가 강의했는데, A/S 하기로 했습니다. ㅡㅡ;
라이브코딩을 2001년에 만든 제 kboard소스를 가져와 했는데,
JDK 버전 문제; 1.3 -> 1.5,
JDBC Driver 버전 문제 1.1 -> 1.?,
기타 등등 어제 리허설을 충분히 못한 죄로 진땀뺐습니다.

대신 ncrash님은 준비한 대사 쪽지 뭉치를 땅에 내던지면서까지 자신감있게 자연스럽게 trac과 개발환경 개선에 대한 경험을 나눴습니다.

곧 동영상 및 자료 정리되는대로 공개하도록 하겠습니다.
1차적으로 세미나 오셨던 분들에게 메일로 공개하고, 부산 세미나 다녀와서 더 잘 녹화된 버전으로 공개할 계획입니다. 이게 공갈이 되면 안될 것 같습니다.

3시간 동안 들으시고, 브로이 하우스 200에서 맥주까지 함께 마시느라 모두 수고하셨습니다.
26일 부산 세미나 기대하셔도 좋을 듯 합니다. ncrash님이 멋진 강의를 하실테니까요.
(흐흐흐 부담드려야지 --+)

사용자 삽입 이미지

사실 서태지와 아이들의 단말마 "창작하는 고통"에 매일 시달리지만 3년동안 매일 블로깅하셨다는 "xenix":http://xenix.egloos.com/ 님 따라하기로 작년 7월10일부터 하루 빼먹고 매일 블로깅했습니다. 매일 방문하신 분들이 30만을 넘었습니다.
내용이 신사적이기 보다는 ㅡㅡ; (시사적의 의도적 오타) 왠개발(웹개발의 의도적, 쿨럭 -,.-;) 얘기가 잔뜩 쌓이다 보니 (표현이 죄송합니다만) 인간세상에 눈이 어둡거나 생각이 마이크로칩만큼 집요한 케로로 중사 같은 분들이 방문을 많이 하시는 듯 합니다.
사용자 삽입 이미지

 image from: http://2306zone.com/redirect.php?fid=128&tid=6056&goto=nextnewset

2008년은 색깔이 많이 달라진 http://www.okjsp.pe.kr 사이트에서 벗어나 여기에 속얘기를 많이 털어놓고 있지만, 저와 이 블로그와 okjsp 그리고 회사 팀블로그인 EC스토리(http://ecs.gseshop.co.kr)를 떼어놓을 수는 없겠죠.
하나하나 그때그때 댓글을 달지 못하지만 댓글 달아주시는 분들 아이디는 뇌가 허락하는 한 기억하고 있습니다. 링크까지 다신 분들은 완소입니다.

어쨌거나 신통신용어 하나 공유하고 포스팅 마칩니다. 궁금해 죽는 줄 알았던 포스팅인데 한 미친(미투친구)덕분에 알게 되어 참으로 속 시원 합니다. ㅎㄷㄷ 친구인 줄 알았는데.
ㅎㅅㄷ : who sad... strong is nothing 이라는 다분히 코리안 잉글리쉬 표현입니다.
http://me2day.net/okjsp/2008/04/21#17:16:41 3depth 하이퍼 링크입니다.

맥북을 사용하는 저에게는 맥과 윈도우를 넘나드는 문서작업이 필요합니다. 이번에도 마소 5월호에 기고하는 글을 쓰느라 움직이면서 글을 쓰게 되었는데, 씽크프리 오피스가 꽤 도움이 되었습니다. http://www.thinkfree.com/

Thinkfree Manager를 통해서 문서파일들을 인터넷을 통해서 저장소에 동기화시킵니다.
사용자 삽입 이미지


매니저에 삭제 기능은 없지만 매니저 상단메뉴 중간에 있는 Go to My Office로 접속한 웹 페이지에서 가능합니다.
사용자 삽입 이미지

1기가까지 무료로 공간을 제공합니다. 씽크프리 오피스와 MS Office 2007과의 갭은 상당히 있지만 텍스트 파일 편집은 왠만큼 지원하는 듯 합니다. 씽크프리에서 작업한 파일을 MS 워드에서 작업해서 다시 저장하니 용량이 70K에서 560K로 바뀌더군요. 뭔가 디테일하게 더 붙여놓은 듯 합니다.

브라우저 기반의 구글 Docs도 괜찮지만 설치해서 오프라인 상에서도 워드로 잘 사용하고, 온라인 되었을 때 동기화해서 다른 컴퓨터에서 작업할 수 있는 씽크프리의 매력은 아직 구글 Docs보다 사용성 면에서 더 좋은 점수를 주고 싶습니다.
군중심리의 최극한은 2002년 월드컵 때가 아니었나 생각됩니다. 그때는 전 국민이 "미쳤다"고 해도 과언이 아니었죠. 다들 빨간옷 빨간 액세서리하고 다니는데 굉장히 자연스러워 보였던 때였고, 응원석에 빨간옷 입고 있지 않으면 괜스레 튀는 느낌이 들었었죠.

군복까지는 안되더라도 "Be the Reds!"라는 흰글씨가 새겨진 유니폼을 입고 다니는 것은 무언가의 동질감을 형성하고 있었습니다.

회사가 있습니다. 팀이 있습니다. 회사의 사람들과 지내는 시간은 가족과 지내는 시간보다 더 많다고 해도 과언이 아닙니다. 업무적인 관계로 같은 공간에서 같이 점심이나 야근을 위한 저녁식사를 하지만 가족과는 달리 이성적이고 객관적인 입장에서 같이 살아가는 사람들입니다.

조직의 구성원들이 한 마음 한 뜻으로 일한다면 뭔가 잘 조직된 팀같아보이고, 웬지 모를 신뢰감도 형성됩니다. 그래서 복장이나 행사 이벤트 등으로 마음을 모으려는 사내 활동을 하게 됩니다. 하지만 많은 한계를 갖고 있기도 합니다.
어떤 이들은 이런 활동을 즐기는 반면 어떤 이들은 학교에서 선생님 눈을 피해서 다니듯 애써 소외된 자리만 찾아다니는 부류도 있고, 어떤 이들은 애시당초 친목도모라는 것을 귀찮아 하기도 합니다.

모두 나와 같은 생각을 가질 필요는 없다고 생각합니다. 각자 자라 온 배경이 다르고, 가치관도 다르고, 지향하는 바도 개개인의 차이가 있기 때문입니다. 단 하나, 같은 회사 조직에 있다는 것은 그 조직이 잘 되기 위한 비즈니스 목표를 갖고 그에 동조해서 같이 일을 하는 것이지 자신의 전인격을 다 바쳐서 충성을 다 해야 할 당위성은 갖고 있지 않다고 생각합니다. 때문에 어떤 사람이 팀에 맞춰달라고 요구하는 것이 무리일 수 있다고 생각되는 것이죠.

팀 내에서 편한 사람들끼리 모여 다닐 수도 있고, 상대하기 부담되는 사람과는 어울리지 않으려고 할 수도 있습니다. 하지만 자기하고 싶은대로 하고들 산다고 팀 내에 외롭게 회사를 다니는 수위아저씨 같은 존재의 팀원이 있다면 그것도 좋은 현상은 아닙니다.
누군가 팀 내에서 존재감을 잃어버리게 되면 머지 않아 그 팀을 떠나게 될 확률이 높아집니다. 팀에 있을 이유가 없기 때문이죠. "애혀~ 이 돈 받고 여기서 일하느니, 그냥 다른 데 가는 게 낫지"라는 생각이 매 시간 가슴을 때리기 때문이죠.

자유로울 수 있는 배려와 적절한 관심, 팀이 잘 운영되기 위한 기본이 아닐까 생각해봅니다.
레거시 코드, 족쇄인가 기회인가

허광남(kenu@okjsp.pe.kr) GS이숍 EC정보팀, OKJSP운영자



소프트웨어 프로그램, 그 참을 수 없는 가벼움

소프트웨어 프로그램은 끊임없이 변화하는 특성을 가졌다. 건축물이야 한 번 완공되면 그 수명을 다할 때까지 보존되는 것이 대부분이지만 건축에서 많은 아이디어를 가져다 쓰는 소프트웨어는 소스코드만 있다면 변경하고 다시 빌드할 수 있는 노력과 비용이 건축과는 비교도 할 수 없이 작기 때문에 기능 추가 또는 변경에 대한 유혹이 굉장히 강하고, 또 많이 수정되고 있다.



문제 발생의 시점은 변경에서 시작된다. 수정에 따른 함수들의 변화를 감지하기 어렵기 때문에 나비효과라고 할 수 있는 결과들, 다른 말로 하면 사이드 이펙트(부작용)가 프로그램의 여기저기서 발견된다. 이것을 많이 경험하면 경험할수록 프로그램 수정에 대한 요구에 대해 소극적이고 방어적으로 요구사항에 응하게 된다. 변경 후 잘못된 결과에 대해 법적 책임은 지지 않아도-합법적으로 일했기 때문에- 자신이 작업했다는 도의적인 책임과 자신의 실력에 대한 자책감이 수반되기 때문이다.



소프트웨어 프로젝트에서 웃지 못할 얘기가 있었다. 납기일 빡빡하게 진행하던 SI 프로젝트에서 있었던 일이라고 들었다. 기간에 비해 많은 요구사항을 처리하느라 소프트웨어의 품질은 안봐도 비디오였다. 시간 때문에 일단 하드코딩으로 화면만 나오게 만든 곳도 있고, 이리저리 바뀌는 갑 회사의 요구사항 때문에 설계는 틀어지고 꼬인 부분도 다수였으며, 오픈 일정이 픽스(고정)되었기 때문에 대략 30%의 요구사항이 오픈 후에 개발하는 등 참으로 다사다난한 프로젝트였다. 일단 프로젝트 오픈일이 가까워지자 프로젝트 팀에서 유지보수로 누가 남을 것인지 이슈가 되었다고 한다. 지원자를 받는다고 했지만 누가 자청해서 남아 X을 치우겠는가. 결국 PM과 임원들 사이에서 누군가 내정을 했다. 그런데 자기가 유지보수로 남게 되었다는 소식을 알게 된 개발자는 ... 다음 날부터 연락이 되지 않았다. 잠적한 것이다.



레거시 코드가 발목을 잡는다. 왜?

개발을 바닥부터 시작하면 편하다. SI가 SM보다 환영을 받는 이유 중의 하나이다. 말 그대로 프로그램 단에서 걸리적거리는 것이 거의 없기 때문에 프로그램 설계의 자유도가 굉장히 높다. 하지만 SM의 경우 이것 저것 살펴봐야 할 것이 많다. 친절하게 써 놓은 주석도 순진하게 믿어서는 안된다. 절대 현재 운영 상에서 나오는 데이터가 어떠한지 찍어서 남겨야 되고, 그것을 바꾼 후에 변경된 값이 무엇인지 로그로 남겨놓아야 뒷탈이 없다.

프로그램 변경에 대한 요구는 외부로부터 ...

to be continued in http://www.imaso.co.kr

소프트웨어 프로젝트는 임신기간과 같은 것 같습니다. 다음과 같은 비유와 은유가 가능할 것 같습니다.

  • 오픈일 - 출산예정일
  • 정상오픈 - 순산
  • 오픈 딜레이 - 난산
  • SI - 애 낳고 떠나는 씨받이, 또는 대리모
  • SM - 남이 낳은 애 키우는 유모 또는 보모
  • 아웃소싱 - 탁아소
  • 인하우스 - 능력있는 가정
  • 성능진단팀 - 산부인과 의사
  • 성장 과정 - 비즈 변경에 따른 소프트웨어 변경

프로젝트를 오픈하기 위해서 쏟는 기획, 디자인, 개발, 영업의 노력은 산고와도 같이 예측하기 힘든 어려움들을 각오하고 진행하는 듯 합니다. 뱃 속에서 커가는 아기를 위해 여러가지 진단을 하듯이 프로젝트 기간 동안 주기적으로 진행상황을 진단할 필요도 있겠지요.

개인적으로 중요한 것은 볼드체로 처리한 항목입니다. 웹 애플리케이션은 오피스 프로그램이나 OS 같은 박스 포장 제품 프로젝트와 다릅니다. 서비스를 위한 프로그램이 웹 애플리케이션입니다. 아기를 순산하는 것을 궁극의 목표로 잡는 것이 아니라 그 아이가 잘 클 수 있도록 옆에서 잘 키워주는 것이 궁극의 목표이지요. 그것은 바로 서비스가 잘 커갈 수 있도록 얼마나 많은 관심과 사랑을 쏟느냐가 관건입니다.

국내의 많은 소프트웨어 프로젝트는 거의 미숙한 서비스를 낳는 것 같습니다. 인큐베이터가 필요한 아기 말이죠. 오픈일에 맞춰서 최초 과도하게 잡은 목표 스펙의 상당부분을 빼버립니다. 우리 애는 대통령 > 장관 > 판검사 > 의사 > 돈 잘 버는 사업가 > 공무원 > 평범하게 사는 1인이 될 거라고 목표 스펙을 줄여갑니다.

일단 오픈은 하고 줄였던 스펙을 다시 요구해서 뚝딱거리기 시작하죠. 소프트웨어에 스트럭처는 이미 많이 희생당한 상태입니다.

오랜만에 구글 어스를 설치해봤습니다. 오~ 많이 컸군요. 한글 지원도 잘 되고, 지원되는 기능도 유기적으로 잘 돌아갑니다. 남들이 하니까 우리 애도 이렇게 키워야 된다고 많은 부모들이 생각합니다. 너무 튀거나 다르면 잘 못 된 줄 알고 걱정부터합니다. 하지만 돈을 만들면 다릅니다. 스타크래프트 황제 임요환의 경우 남들 하는 대로 큰 것 같지는 않습니다.

있을 때 잘 하라는 말이 있습니다. 괜히 힘들게 아이 하나 낳아서 애처롭게 죽이지 말고, 사회에 좋은 공헌하는 서비스가 되도록 잘 키울 필요가 있을 것 같습니다. 그 아이와 마주한 사람들이 즐거움을 느낄 수 있도록 말이죠.

사용자 삽입 이미지

image from: http://www.saione.com/services_overview.htm

ps. Mythical Man Month에 나오는 얘기를 약간 변경해 봤습니다.
여자 9명 데려다가 너는 머리 낳고, 너는 오른팔, 너는 왼팔, 너는 오른다리, 너는 왼다리, 너는 몸통 .... 이렇게 한 달 만에 애 부속 만들어서 합쳐봐. 그럼 되지? 라는 식으로 진행하는 프로젝트들에 애도를...

+ Recent posts