하나는 자바 소스 코드 작성상의 향상, (Coding) 또하나는 자바 바이트 코드 운영상의 최적화 (Running)전자는 "이렇게 저렇게 짜면 더 빨라지고 메모리도 적게 쓴다"는 개발자 실천적 과제라면, 후자는 "이렇게 저렇게 구동 조건을 조정하면 더 빨라지고 메모리도 적게 쓰며 안정적이 되고 따라서 서비스 품질이 높아진다"는 운영자-대소비자적 과제라고 여겨지는군요. 여기서 중요한 점은 "기존에는 자바의 후자적 상황이 무척 열악했다"는 것입니다. 즉 JVM자체의 성능도 극악하고, 그 JVM을 쓰는 사람의 마인드도 부족했었다는 뜻이죠. 따라서 결국 공은 코드를 짜는 개발자에게 넘어왔고, 기상천외한 코딩 기법으로 성능 최적화의 과제를 수행해왔던 것입니다. 그런데, 이런 상황은 "비즈니스"라는 특수한 환경에서 또한번 비틀립니다. 일명 "공기 납품 최우선"을 지향하다보니 "품질 개판 인정"이 공공연하게 인정되어 "시간 맞출래, 품질 맞출래"하면 당연히 "품질은 무슨 개 풀뜯어먹는 소리... 기간 맞춰야 돈을 받지"하는 사업지향적 사고가 어느덧 개발자에게 까지 몸에 베인 셈입니다. (비단 한국만의 이야기는 아니겠지요. 미국이나 일본이나 다들 마찬가지인가봅니다. 개발자 하소연란이 그런 얘기 없는 곳이 없으니까요.) 결국 개발자에게 넘어온 공마저 어디로 차버렸는지 행방불명되버리고, 최종 평가는 "자바(프로그램)는 느리고 메모리를 많이 잡아먹고 심지어 불안(!)하기까지 하다."는 오명을 뒤집어쓰게 되는 것입니다. 그래서 가장 끝에 돌아는 욕은 썬이 먹고 말지요. 공동책임은 무책임이라고 하지만, 분명 이러한 악순환은 모두에게 책임이 있습니다. 가장 근본적으로 자바 기술을 만들고 관리하는 썬의 지나친 낙관주의도 이제는 지양되어야겠지요. 그리고 그런 변화는 사실로 나타나고 있고, 많은 시간과 돈(결국 인력)을 투입하여 무료 제품이나 다름없는 J2SE+JHVM의 개발에 매달리고 있습니다. 또한 단순히 개발에만 그치는 것이 아니라 결과물의 존재와 이점을 알리는 홍보-마케팅 작업도 최근 눈에 띄게 늘어가고 있는 추세입니다. 썬이 일찍부터(?) 정신을 차렸다면, 가장 경직된 축은 기술 사용자, 즉 사업가-경영진입니다. 인터넷 사업은 곧 시간 싸움이라는 인식이 팽배해져있는 가운데, 누구도 그분들의 행동양식에 손가락질하기는 쉽지 않을지도 모르겠습니다만, 결과적으로 인터넷 사업은 언제나 100% "선착순"은 아니라는 것도 드러난 사실입니다. 먼저 시작하고도, 빨리 해내고도 쓰러지고 자빠지는 경우는 널렸습니다. 후발주자로서의 이점은 역시 "반면교사", 즉 선발주자의 단점, 결점을 보고 보완, 향상시킨다는 것이겠죠. 이렇다보니 오히려 "죽쒀서 개주는" 꼴이 벌어지기도 합니다. 가장 힘 없다고 하는 개발자의 사정은 제 자신의 그것이기도 하기 때문에 혹독하게 나무랄 수 없을 것 같지만, 자신에게 엄해야하기에 인정사정 볼 것 없이 말한다면, "가장 결정적인 불안요소"입니다. 자바가 엉망진창이든, 사장이 무식하든, 꿋꿋히 자신의 만드는 무언가에 모든 걸 쏟고는 싶지만... 시간이 흐를수록 불안해지는 자신의 자리-경제적 불안감, 사회적 정체감-는 물론이고, 직장, 가정에서의 인간 관계등... 그 무언가에 집중하기에는 참으로 강력한 방해물(?)들이 폭주합니다. (이럴 때 에바를 탄다고 해서 싱크로율이 높을 리가 없죠.) 혹시 이 글을 읽고 계실 지 모르는 썬 관계자나 사용자(사장-이사급)분들께 귀뜸해드리고 싶은 개발자의 심정은, "일은 자기들이 저질러놓고 뒷감당은 다 나한테 떠넘긴다"입니다. 마치 동전의 양면과 같은 이 어려운 문제-개발자의 사업 참여, 어디까지 이루어져야하는가-는 앞으로도 두고두고 모든 업계에서 논의되어야 마땅하지만, 당장 시급한 것은 "다 같이 근본에 합의하고 있는가", 즉 최고의 품질을 고객에게 선사할 것인지, 아니면 빨랑 내놓고 나중에 더덕더덕 기울지, 아니면 아주 싼 값에 팔 것인지와 같은 아주 기본적인 회사의 방침과 전략전술에 동의하고 있는가입니다. 동의해나가기위해 설득-이해-양보의 과정이 필요한 것은 사실이지만, 어떤가요? 아예 그럴 마음이 없다면? 마음이 떠났다면? 도저히 안되겠다면? 왜 그런 지경까지 이르렀는지 모두 머리를 맞대고 고민조차 안하고 "바이바이"를 외치는 것이 작금의 현실이라 더욱 안타깝습니다. (그리고도 그런 상황은 잘도 악순환이 되구요. 종국에는 엉뚱한 고객이 돈쓰고 상처받는 상황 연출? 역시 이것도 나몰라라일까...) 정리하면 사이트 구축-서비스 제공-애플리케이션 개발은 누가 먼저라고 할 것도 없이 서로 대화를 피하지 않는 성실과 적극의 과정이 절실하며, 늘 변화와 요구에 부응할 수 있는 탄탄한 기초와 유연한 구조위에 서서, "시작이 반 운영도 반"이라는 자세로 부단히 임하는 일이 아닐까요? 결국 선택받는 이는 "빨리 나오고 허벌레 해지는" 것이 아니라 "빨리 나왔으면서도 꾸준히 나아지는" 제품이라는 것을 깨닫는 데 그리 오랜 시간은 걸리지 않겠지요. 최근 전세계 자바인들의 최고 화제로 이미 완전히 떠오른 디자인 패턴이 설계적인 측면의 향상안이라면, 자바 퍼포먼스 튜닝-성능 조율은 운영상의 방안이라는 점도 주목해야할 것입니다. ***** 다음 사이트는 자바 인 더 박스(Java in the box)라는 무척 센스있는 이름을 가진 곳입니다. 자바 스터디 네트웍의 소식란에서 J2SE 1.4 멀린에 대한 좋은 내용을 많이 담고 있는 사이트라고 해서 가보았더니, 바로 자바 인 더 박스의 부속 페이지였습니다. 아무래도 저도 멀린 기준 자바 입문서를 쓰고 있다보니 무척 관심이 갔는데, 일분이 운영하시는 곳인지라 일본어가 곤혹스러우신 분은 번역기로 보시면 되겠고, 지니 클럽이라는 스터디 사이트에서 매끄럽게 다듬어 제공하고 있습니다.(J2SE1.4쪽 링크로 가시길) 사이트 운영자이신 사쿠라바 유이치님의 최근 관심사는 역시 멀린이지만, 사이트에 가보시면 아주 흥미로운 진행방법이 돋보이는 "The Second Step of Java"(UML로 설계도를 그리면서 실생활적인 설명 듬뿍에 예제 게임 개발), 온도 감시 시스템 개발에 자바를 도입하는 과정이 나오는 "FA를 위한 자바 프로그래밍 강좌"도 무척 신선합니다. 일본에 자바 고수가 많다라...는 말에는 사실 동의하지 않을 수가 없군요. 자바 월드라는 월간지, 자바 익스프레스라는 비정기 간행물, 그리고 C매거진, DB월드를 비롯한 타분야 잡지에서의 자바 기고문을 보노라면 이 글들을 다 누가 쓰나 싶을 정도이고, 그 내용들도 도표나 이해의 수준, 팁등이 정말 "제대로 알고 자세히 알지 않으면" 나올 수 없는 것들이 대부분입니다. 흥미로운 것은 일본 자바 인력 자체는 부족하다는 것입니다. 그리고도 J2EE쪽은 훨씬 극심한 중-고급 인력 가뭄에 시달리고 있습니다. 아니, 고수들이 많다며, 다 먹물들인가... 싶겠지만, 묘하게도 일본에는 J2ME, J2SE쪽은 고수가 우리나라나 미국에 비해 고수가 많은 반면, J2EE는 그에 비해 많다고 할 수 없습니다. 오히려 일본 현지 수요에도 못쫓아가는 실정이기까지 하니까요. 왜 이런 현상이 벌어졌을까... 자바 인 더 박스 사이트만 보아도 감을 잡을 수 있는 것이, 자바에 관심 있고 열심히 하는 사람들이 아이러니하게도 비전산 전공자인 경우, 그리고 순수 자바만 처음부터 했다기 보다는 C나 C++, 스몰토크등에 능수능란한 사람들이 자바로 이전(migration)해온 경우가 많습니다. 엔지니어를 위한 리쿠르팅 전문 잡지등을 보아도 일본에 상당히 두터운 베테랑 개발자군이 포진하고 있음을 느낄 수 있구요. 문제는 타분야의 젊은 피건 자분야의 노련미이건 자바 자체를 보는 관점이 "자바 중심적-자바 지향적"이라기 보다는 "자기 중심적-이용 지향적"이라는 것입니다. 자바에 대한 사랑은 누구못지 않으면서도, 철저하게 자바를 자기화시키는 힘, 즉 외국의 문화를 받아들임에 있어도 결국 본질은 자신을 것을 지키는 일본 특유의 소화문화가 자바에게도 적용되는 셈이지요. 사랑은 상대와 하나가 된다는 점에서 상대를 자신과 혼동하는 것이 아니라, 상대의 존재를 알고 자신에게 맞춘다는(혹은 자신이 맞춰나간다는) 자세는 최근 일본 젊은이 세대들에게서 점점 사라져가는 일본적 미덕이 아닌가 생각합니다. 지독한 봉사정신에는 진저리가 났는지, 이제는 세대 가릴 것 없이 막나가는 상황이 비일비재함을 이웃 중국요리집 아주머니도 한탄하시던데, 그래서 일본의 젊은, 그리고 순수 자바 개발자는 참으로 진귀한 존재들중 하나입니다. 혹시 일본에 와서 자바 개발자로 성공하고 싶으시다는 분(이미 시작하신 분도 계시겠지만)은 어떤 면에서는 한국보다, 혹은 본고장 미국보다도 좋은 환경일지 모릅니다. 아직도 기성세대는 장인 정신을 숭상하고, 한분야에서 최고인 이를 존경하고 제대로 대접합니다. 앞서도 지적했듯이 나이가 들어 코딩의 순발력은 떨어질 지 몰라도, 경험과 세월이 아니면 볼 수 없는 것을 볼 수 있는 눈을 가졌다는 것만으로도 결코 헛산 인생은 아닐 것입니다. 중요한 것은 노련한 자바 개발자-설계자-운영자가 절대절명으로 필요하며, 앞으로는 더 필요합니다. 지금 만들고 있는 수많은 사이트들과 애플리케이션들, 철인 28호가 아닌 이상에야 언제고 고치고 바꾸고 이끌어야할 판입니다. 코볼이 객체지향의 은혜를 입고 부활하고 있는 여기 일본에서, 가장 필요한 마음은 느긋하되 은근한 평안입니다. 그나저나, 운영자는 할 일도 많을 텐데 어째서 저런(?) 사이트를 운영하고 있을까... 제가 감히 미루어 짐작해본 것이라면(광고 배너도 없는데)... 기본적으로 "자신이 사회로부터 배운 만큼 사회에 환원한다"는 바탕위에, "다음에 자신과 같은 일을 하는 사람이 애먹지 않게 하기 위해"라는 배려, 그리고 "자신이 발견한 것을 함께 하려는" 기쁨이 한 데 어우러진 것이 아닐까... 물론 자기 PR도 있겠지만요.(그러기엔 자신의 프로필 페이지조차 없다는 것이 오히려 숙연해질 정도.) ***** 마지막 소식은 지난 자바원 컨퍼런스에서 어떤 분이 소개해주신 "운영중인 JVM을 교체하는 솔루션"에 대한 소문(?)입니다. 정확히 컨퍼런스 이틀째의 BOF-45에서 등장한 이야기로, 코그니티브 연구소(Cognitive Research Labs, Inc.)에서
"예를 들어 현재 서비스 운영준인 JVM이 1.3.1인데 이걸 1.4로 업그레이드 하면서 동시에 서비스는 안죽이는"작업이 가능하다고 했답니다. (수시로 장시간 점검과 업그레이드를 일삼는 일부 사이트를 보면) 얼핏 상상이 잘 안가는데 아무튼 더 구체적으로 예를 들어 JVM이 1.3.1인데 이걸 기반으로 웹 애플리케이션 서버를 돌리고 있다가 아주 자연스럽게 JVM을 1.4로 업그레이드하면서 서버-서비스 자체에는 전혀 지장이 없게 할 수 있다... 이론적으로만 본다면 아주 불가능한 것은 아니겠지만, 다소 시스템적인 요소가 들어가고, 실제로 얼마나 솔루션적인 해결이 가능한지는 미지수가 되겠습니다. 더불어 "그냥 좀 죽였다 살리면 되지. 미리 공지 좀 때리고" 하시는 분들에게는 전혀 필요없는 "헛짓"으로 보일 수도 있겠네요. 하지만 365일 24시간 뺑뺑 돌며 절대 죽어서는 안되는 사이트(아마존을 예로 들었다는데, 아마존은 정기 정검일이 없나...)정도면 상당히 어필하는 솔루션이 아닐까... 아마 컨설팅비가 더 비쌀지도... 아무튼 이런 것이 있기는 있답니다. 혹 필요하신 분은 위의 사이트로 가셔서 상당을 받아보세요.
오늘은 여러분의 마지막 불어 수업입니다. -알퐁스 도테(1840-1897), "마지막 수업"
이전 글 : 2001년 추계 자바원 컨퍼런스 특집(3)
다음 글 : 이더리얼 사용하기
최신 콘텐츠