본문 바로가기

개발자

어느 아기 아빠를 힘들게 하는것 (모바일 하이브리드 프레임워크) 1. 아기가 고사리손으로 박수를 친다. 박수를 치는 모습이 신기했다. 귀엽다. 형수님은 분홍빛 화려한 한복을 입고 윤기나는 화장을 하셨다. 예쁜아기의 엄마 다웠다. 과장님은 피부가 다소 푸석한 느낌은 들었지만 멋진 수트를 입어 세련된 느낌이 들었다. 돌잔치 음식은 맛있다. 돌잔치 이벤트가 시작된다. 돌잡이 이벤트 순서가 왔다. 아기가 무엇을 집을까 참석객들의 이목이 집중된다. 사회자의 진행으로 돌잡이 그릇에는 참석객들로부터 모은 돈이 가득찼다. 사회자가 엄마 아빠에게 무엇을 뽑을것이냐고 물어봤다. 아빠는 돈, 엄마도 돈이라고 말했다. 아빠 엄마는 웃으면서 말했지만 뭔가 간절함도 느껴지는것 같다. 드디어 돌잡이가 시작됐다. 아기가 다른걸 집으려고 하자 엄마가 못집게 유도한다. 그 모습에 참석객들이 웃는다... 더보기
모바일 하이브리드 프레임워크를 경계하며 (총정리) (모바일 하이브리드 프레임워크 관련 글에 관하여, 프로젝트에 캐나다 사는 동생 결혼식에 개인적인 몇가지 큰일들이 겹쳐서 이제야 글을 덧붙입니다. 두어달동안 글을 못썼습니다. 포스팅 하려는 내용을 요약하여 올리겠습니다. ^.ㅠ) - 이전 줄거리작년 초 모바일 하이브리드 프레임워크 엔진을 직접 개발해 보면서 하이브리드 프레임워크가 생각만큼 효과 있지는 않을것이다~ 라는 회의가 들었다. 그뒤 이게 무슨 숙명인지 국산 모바일 하이브리드 프레임워크를 쓰는 프로젝트에 참여했다. 이때 엉터리 국산 솔루션을 쓰면서 지독하게 베타테스트 한 나는 모바일 하이브리드 프레임워크의 열혈 안티팬이 되었다. 벼르다가 모바일 하이브리드 프레임워크의 단점을 전파하는 연재글을 기획했다. 모바일 하이브리드 프레임워크가 탄생하게된 시대적인.. 더보기
모바일 하이브리드 프레임워크는 제2의 액티브엑스다.(2.국산의 문제) 모바일 하이브리드 프레임워크는 제2의 액티브엑스라는 제목은 두가지 뜻을 담고 있다. 하나는 모바일 하이브리드 프레임워크가 문장 그대로 웹에서 액티브엑스가 하는 역할을 고스란히 대신한다는 뜻이다. 하나는 액티브엑스가 우리나라 IT의 발전을 막았듯이 모바일 하이브리드 프레임워크도 우리나라 모바일 IT의 발전도 막을 수 있다는 뜻이다. 2006년도 모 프로젝트에는 BPMS란 신개념의 국산 프레임워크가 쓰였다. 이 프레임워크는 비즈니스 컴포넌트를 만들고 이 컴포넌트들의 프로세스를 연결하는데, 한번 만들어지는 비즈니스 컴포넌트는 재사용할 수 있는 신개념의 프레임워크 였다. 그러나 적어도 내가 사용한 BPMS는 현장 경험이 풍부한 설계자가 아닌, 책상머리에만 앉아 본 그 누군가가 만들지 않았나 싶을정도로 개발 생산.. 더보기
엔드 투 엔드 개발자가 된 비밀 작년에 정착한 회사는 내 경험상 내가 갈수 있는 가장 좋은 회사중에 하나라고 확신한다. 이 경험은 내가 좌충우돌 부딪혀서 얻은것이기 때문에 꽤 정확하다. 그런데 만약 내가 자기소개서를 다시 쓰거나 면접을 다시 본다면 이렇게 말할거리가 생겼음을 우연히 깨닫게 되었다. "애플의 강점은 엔드투엔드 서비스 회사라는 것입니다. 하드웨어부터 소프트웨어, 유통플랫폼까지 모두 애플이 다 하는거죠. 이 경우 장점은 애플이 추구하는 이상적인 대 고객 서비스를 실행할수 있고 잘 통제할수 있다는 것입니다. 저는 마치 애플과 같은 개발자입니다. 저는 애플과 같은 엔드투엔드 개발자입니다. 저는 서버끝부터 클라이언트끝까지 모든 IT기술을 다룰줄 압니다. 서버 설치부터 운영, 통신 프로그램을 제작하고 WAS위에 서버 프레임워크 올리.. 더보기
Agile 적용의 어려움 (XP, Scrum) 살다보면 나도 모르게 좋은 기회가 찾아온다고 하는데요. 이 기회를 놓치지 않고 잡아야 인생이 풀릴것입니다. 최근 저는 다행히 이 기회를 한번 잡았던 것 같습니다. 팀내 Agile을 적용해보라는 지시를 받았습니다. Agile은 제가 개발자 경력을 쌓으면서 이분야에 전문가가 되겠다고 다짐하고 공부했던 기법입니다. 그러나 팀 적용을 위한 여건이 안되서 혼자만 두문불출하다가 일단 접어서 좀 아쉬워 했죠. Agile을 좀 잊어갈때쯤 팀장님이 한번 적용해 보라고 하니 저는 제 개발자 인생의 하나의 숙제였던 Agile을 풀어볼 기회를 얻은 것입니다. Agile의 개요를 정리해서 발표도 하고, 사용자 스토리의 주요 기법을 실습도 했습니다. 팀원들의 반응도 좋았습니다. 일단 Agile 도입 실습을 마무리할때쯤 저는 혼자.. 더보기
xcode4 느린 속도 회복하기 제가 아이폰 개발을 하게 된 동기는 여러가지가 있습니다. 그 중 한 가지는 '애플이 하는건 뭐든 다르다~' 라는 기대 때문이었죠. 너도 애플빠구나~ 라는 말을 듣기엔 애플이 만든건, 애플이 하는건 정말이지 뭐든 달랐습니다. 맥북은 외형적인 디자인도 틀렸지만 맥OS의 뛰어난 성능에 놀랐고요. 안드로이드 최신버전도 아직 아이폰의 부드러움과 소프트웨어를 쫓아가지 못합니다. 어느날 한창 자바 개발할때 문득 이런 생각이 들었습니다. 여지껏 애플이 하는거 만져보니 다 감탄했는데, 애플이 만든 개발자 환경도 뭔가 획기적으로 다르지 않을까? 그래서 아이폰 개발자로 전향한 이유중에 하나가 되었습니다. 전향해서 다뤄봤더니 역시 기대에 만족하는 부분도 있고 거기서 거기인 경우도 있더라고요. 그중에 제가 정말 감탄한 아이폰 .. 더보기
상식이 약간만 통하는 불편함 '상식이 통하는 사회' 정치인들이나 방송 캠패인에서 많이 들었던 고리타분한 문장이다. 사회와 사회인들이 법을 지키고 질서를 지키고 예의를 지키고 남에게 피해를 주지 않는 상식이 통하는 사회는 고리타분하지만 바람직한 이상향일것이다. 문득 나는 우리나라 몇십년 살면서 상식이 얼마나 통하는 사회를 살았는지 한번 생각해보았다. 생각해보니 상식이 안 통하는 사회에 살지는 않았다. 나는 생활에 크게 위협받지 않는 선에서 적당한 불편함을 감수할정도로, 상식이 어느때는 통하고 어느때는 안통하는 적당한듯 하면서 약간은 불편한 곳에서 생활을 하는 것 같다. 이번에는 프로젝트 일정 측정에서 상식이 들 통하는 경험을 했다. 보통 프로젝트 일정 측정은 이렇게 해야하지 않을까. 기획자와 현업이 만들고자 하는 프로젝트의 베스트 기.. 더보기
기획자를 알다. 두달여 동안 짧은 프로젝트를 했습니다. 짧지만 두툼한 느티나무처럼 굵은 프로젝트를 한것 같습니다. 밀도높고 빡씨게 일을 했습니다. 그래서 그런지 여러가지 느낀점도 많이 생겼습니다. 이번에 좀 쉴때 몇가지 생각을 정리하려고 합니다. 오늘은 기획자에 대한 얘기 입니다. 저는 기획자란 직군을 오랫동안 알지 못했습니다. 개발자가 있고 디자이너가 있고 PL이 있고 대장인 PM이 있었죠. 제 기억에 PPT로 스토리보드 짜는 기획은 개발자 선배가 했던것 같습니다. 기획자를 제대로 만난적은 작년 가을 웹프로젝트 였습니다. 기획자 두분이 현업과 계속 회의를 반복 하면서 PPT를 작성하고 결국 해당 화면과 기능을 어떻게 구현할지 확정짓더군요. 저는 그때 어렴풋이 느꼈습니다. 기획자가 중간에서 현업의 요구사항을 잘 정리하여.. 더보기
한국의 아이폰 어플 개발도 한국의 웹처럼 되나. 우리나라 웹을 보면 우리나라 민족의 성향을 알 수 있습니다. 외향적이고 화려하고 역동적이고 기능이 다양할수록 더 좋은 거죠. 이런 우리들의 성향 때문인지 우리나라 웹은 다른나라의 웹에 비해 엄청나게 화려하고 기능이 복잡다단 합니다. 그러나 이런 우리나라의 화려한 웹은 우리나라 IT발전에 도움이 되지만은 않았습니다. 왜냐면 웹은 '표준화'의 덕목이 크기 때문입니다. 심플한 화면이더라도 표준적으로 잘 구현된 웹이 다양한 컴퓨터 환경에서 다양한 사용자들에게 빠르고 정확하게 정보를 전달할수 있기 때문입니다. 그리고 표준화를 해치면서 화려하게만 개발하느라, 개발자들도 무지 고생했고요. 요즘 무릎을 딱 치며 느낀것이, 우리나라 어플 개발도 우리나라 웹처럼 화려하고 역동적이고 예쁜 기능을 추구한다는 것입니다. 예를들.. 더보기
스마트폰 개발환경의 미래 아이폰이 나온뒤 1년은 영화 같은 동영상을 2~4배속으로 빠르게 본것처럼 극심한 변화가 이루어졌습니다. 다행히 그 변화는 소비자나 개발자들에게 유익한 변화였습니다. 소비자는 제대로 된 휴대폰/스마트폰을 적당한 값으로 구입하게 되었습니다. 개발자는 수직적인 갑을 관계가 아닌 수평적인 관계를 애플 덕분에 경험하는 계기가 되었습니다. 스마트폰이 나오자 대기업들은 당황했습니다. 금융권도 스마트폰 때문에 당황했습니다. 시대를 앞서가는 모습을 보여주는것처럼 홍보하려면 아이폰 뱅킹도 개발하고 안드로이드 뱅킹도 개발해야했습니다. 그래서 아이폰/안드로이드 개발자를 비싸게 고용하였고 개발을 앞다투어 진행하게 되었습니다. 갑자기 많은 비용이 부담되었고, 대기업들은 우리가 왜 이런 스마트폰에 갑자기 많은 비용을 투자해야 하는.. 더보기
생선 썩은내 패턴 리뷰 (프로젝트가 서쪽으로 간 까닭은) 우리 개발자들은 프로젝트란 말을 자주 쓰잖아요. 그럼 프로젝트의 뜻과 목적은 무엇일까~ 한번 생각해봤습니다. 프로젝트는 이러한 새로운 기능들을 이때까지 끝내겠다는 계획 이며 실행 과정 일것입니다. 프로젝트를 하다보면 이런 경우도 있습니다. 위에서 이런 프로젝트를 계획했고 나는 이곳에 투입되서 맡은일을 하지만 이 프로젝트가 성공적으로 끝날것이라고는 아무도 생각하지 않는거에요. 그러나 공식적으로 이 프로젝트는 위의 지시에 따라 돌아가기 때문에 아랫사람으로서 그런 얘기를 함부로 할수 없습니다. 그래도 혹시 누군가 프로젝트가 쉽게 잘 끝내기 어려울것 같다고 위에다가 직언을 한다면, 위에서는 프로젝트가 잘안되는 근거를 대보라며 뭐라 그럴것이며, 그 직원이 불평불만을 가지고 있구나~ 하며 안좋게 볼것입니다. 이런 .. 더보기
회의에 관한 패턴 (프로젝트가 서쪽으로 간 까닭) 최근 프로젝트가 서쪽으로 간 까닭이란 책 리뷰를 간단하게 남겼습니다. 요즘에도 하루에 한 패턴씩 다시 읽고 있습니다. 아드레날린 패턴은 전 리뷰에서 잠깐 언급했는데요. 한마디로 실제 알찬 성과보다 바쁘게 움직이고 야근하는 모습을 보고 프로젝트가 더 잘 돌아간다고 판단해버리는 프로젝트 팀을 얘기하고 있습니다. 다음은 회의에 관한 패턴을 얘기하고 있네요. 질질끄는 회의는.. 처음에 주변 잡담으로 시작해 많은 시간을 얘기합니다. 서서히 주변 팀원들이 손으로 입을 가리며 하품을 합니다. 일의 문제를 정확히 짚지 않고 그 언저리를 맴돕니다. 일의 문제를 짚어도 해결책을 제시하지 못하고 언저리를 맴돕니다. 해결책이 나왔을때 이 문제를 누가 해결할지 명확하게 의논하지 못합니다. 회의 중간에 주제를 벗어나 자꾸 다른 .. 더보기
프로젝트가 서쪽으로 간 까닭은을 읽고 프로젝트가 서쪽으로 간 까닭은~이란 책을 읽었습니다. 제목만 봐도 알것 같더라고요. 프로젝트때 발생하는 모든 안좋게 끝나는 경험들을 정리해서 그것들을 일종의 패턴으로 만든 책이지 않을까~라고 생각했습니다. 역시나 프로젝트가 잘되는 또는 잘되지 않는 경우들을 86가지 패턴으로 정리한 책이군요. 제가 책을 말할때 자주 하는 비유가 있습니다. 어떤 책은 몇장만 읽어봐도 저자의 가벼운 지식과 편협한 지식들을 절대적인 지식인것처럼 잘 포장한, 마치 화려한 포장속의 싸구려 중국 짝퉁 제품같은 책들이 있습니다. 또는 저자만이 알고 있는 소중하고 희소성있는 지식을 책한권에 가득 담은 책도 있죠. 마치 시골 골동품상에서 우연히 발견한 몇억짜리 유물과 같은 책도 있습니다. 이 책은 후자에 속합니다. 프로젝트때 일어날 경험.. 더보기
프레임워크는 리더다. 1월은 계획하는 달, 멋지게 이런저런 계획을 세웠다. 계획을 실천하려고 보니 어느날 나는 1월말 5연속 11시에 퇴근한다. 9시에만 퇴근해도 생활리듬이 유지될것인데, 11시퇴근하니 머릿속에서 작동하는 톱니바퀴가 어긋난것 같고 일 빼고는 아무것도 생각하기 싫은 달이었다. 한창 생활리듬이 어긋나 있는 회사 오후, 나는 직속 상사 차장님과 밖에 나가 차한잔 했다. 마음씨 좋은 차장님에게 괜히 투덜거렸다. 근데 차장님이 갑자기 이 얘기를 하신다. 마음씨 좋은 차장님 : "요즘 톰피터스의 뭐뭐 라는 경영서적을 읽고 있는데 회사가 성공하려면 크게 4가지가 있어야 한다네.. 인재, 디자인, 트랜드, 리더십 이지~ 우리회사도 인재 많이 구하고...리더십도...블라블라..." 산골 과장 : 하나가 더 있어야 할것 같아요.. 더보기
xcode 환경특성 일부 해결 방법 예전에 아이폰 Objective-C 프로젝트 후기 남기면서 xcode 환경 특성 타는 문제 때문에 고생했다고 했는데요. 그 일부 경험을 적어봅니다. 그러니깐 딱부러지게 로직 버그면 어떻게 찾아내겠는데 아무리 별짓 해도 안되는 경우가 있습니다. 그런데 알고보니 정말 어이없게 해결이 되는 경우가 있죠. 전에 예를들면 XML 파일에 어느태그 안에는 '스페이스'가 들어가면 안되는데 그걸 몰라서 별짓 다했다가 어떻게 겨우 스페이스 문제임을 알고 눈물 쏟을 뻔한적이 있었습니다. 초보 아이폰 개발자 하면서 저는 이런 경험들을 했습니다. - Debug와 Release 빌드시 저장 라이브러리가 틀리다. 초보 아이폰 개발자라도 빌드시 디버그와 릴리즈 저장폴더가 틀리다는걸 아실텐대요. 전 처음에는 몰랐습니다. ㅠ.ㅠ 그때 .. 더보기
아이폰 딴짓하지마! (시간관리 + 딴짓 방지 기능 어플) 오픈 아이폰 딴짓하지마! 어플은 목표를 위해 노력하는 고시생, 일반인을 위해 집중력 시간체크 + 딴짓 방지 기능 + 통계등의 부가 기능을 통합하여 개발한, 아이디어 시간 관리 어플입니다. ● 아이디어1, 내가 공부를 하고 있는데 얼마나 집중했고, 얼마나 딴짓했는지 궁금할때가 있습니다. 우리 어플은 다른 시간관리 도구가 체크할 수 없었던 집중하는 시간을 체크합니다. 전체 공부한 시간 중에 집중한 시간과 딴짓한 시간을 체크하여 내가 이 공부에 얼마나 집중했는지 집중력을 산출합니다. ● 아이디어2, 학생때 집중을 못하고 뒤척이는 내가 답답해서, 심지어 나와 의자를 묶어버리고 싶었던적도 있었을 것 입니다. 우리 어플은 하늘과 땅이 당신의 딴짓을 감시하고, 알람으로 딴짓을 방지합니다. 아이폰 G센서로 당신이 자리이탈을.. 더보기
Android와 iPhone의 브라우저 전쟁, Part 1: 새로운 돌파구, WebKit 웹에대한 나의 감정은 오묘합니다. 마치 성격 드러워서 나랑 티격태격 하지만 미운정 만큼은 잔뜩 들은 내 고등학교 친구에게 느끼는 감정과 비슷합니다. 웹이야 말로 아이티 산업을 확~폭발시켰고, 인류의 평등한 지식 공유에 앞장섰습니다. 누구 제안따라 노벨 평화상 받아 마땅한 기술입니다. 그러나 개발자 입장에서 웹은 노가다성에 재미없어 고생만하는 기술일수도 있습니다. 특히 우리나라에서는 액티브엑스에 난리법석 요구사항이 워낙 많아 더 심각하죠. 그래도 이런 웹의 단점은 웹 자체가 이것저것 안좋다기 보다는 웹을 쓰는 어느 환경(우리나라)이 좀 잘못되었기 때문에 부각되었다는 것을 새삼 느꼈습니다. 스마트폰 환경도 지금 아이폰, 안드로이드 네이티브 플랫폼으로 개발되고 있지만, HTML5 등의 좀더 발전되고 세련된 .. 더보기
Apache Shiro 소개하기 아파치 프로젝트에 보안 관련 프레임워크를 소개합니다. 최근 보안 솔루션이 주 업종인 회사에 파견을 나갔습니다. 보안일에 잔뼈가 굵은 차장님과 이런 대화를 나눴습니다. 나: "저도 나름 뱅킹 프로젝트 하면서 보안 솔루션을 많이 적용 했는데 정작 내부가 어떻게 돌아가는지 잘 모르겠더라고요" 차장님: "모르는게 당연해요. 보안관련 원리는 보안일을 하는 사람이 아니면 알기가 힘들죠. 그리고 보안일이 좀 돈벌기가 힘들고..일종의 사명감을 가지고....생략....뭐.그렇습니다..허허" 사실 내가 말한것처럼 나름 보안 솔루션 적용은 했지만 내부가 어떻게 돌아가는지 잘 모르겠더군요. 그래서 PKI니 몇권의 보안 책을 사봤지만, 두루뭉실하게만 이해가 되었습니다 그런데 혹시 이 아파치 보안 프레임워크를 쓰고 그 내부 소스.. 더보기
첫번째 아이폰 프로젝트를 끝냈다. (웹노가다 안녕) 아이폰, 사실 프로젝트라고 하기에는 일한 단위가 한달로 적지만, 아이폰 개발자가 되기로 마음먹고 무려 3개월 백수생활 독학하고, 아이폰 개발자를 내걸고 시작한 첫번째 일이 끝났습니다. 첫번째 일이 아예 아이패드 일이었습니다. 기존 아이폰 어플을 아이패드 어플로 포팅하는데 특정 모듈을 담당했습니다. 이게 처음 설계부터 개발이 들어간게 아니고 일이 빵구가 나서 땜방으로 찾은 개발자가 저 였습니다. 그래서 번갯불에 콩구워먹듯 일하면서 많이 고생했습니다. 제가 아이폰 개발자로 전향한 몇가지 이유가 있습니다. 그래서 예를들면 '내가 아이폰 개발자로 전향한 이유'의 제목으로 제대로 포스팅하려고 했지만, 바쁘고 귀찮아서 미뤘습니다. 제가 아이폰 개발자로 전향한 가장 큰 이유는 이겁니다. '웹노가다 탈출~!' 정말이지.. 더보기
vi 팁 및 트릭: 친구에게 강렬한 인상을 남길 수 있는 10개의 유용한 명령 [IBMDW 201011] 저는 vi 에디터를 무척 좋아해서, vi에 대한 글도 종종 쓰곤 했습니다. 고수를 위한 고전 에디터 vim 초보자를 위한 정규 표현식 마침 IBM DW 기사에 vi에 대한 좋은 기사가 또 올라왔군요. vi 팁 및 트릭: 친구에게 강렬한 인상을 남길 수 있는 10개의 유용한 명령 사실 저도 vi를 공부하기 시작한것이 vi를 쓰면 뭔가 더 잘하는것 처럼 보여서 시작했습니다. 저는 이기사를 통해 '필터링' 이란 기법을 새로 알았습니다. 내일 옆에 직원이 내 모니터를 볼때 필터링 기법을 써서 그 직원을 놀래켜 줘야 겠습니다. ^ ^ 더보기
JVM의 명령행 플래그에 대해 모르고 있던 5가지 사항 [IBM DW 201011] 예전에도 몇번 똑같이 말하곤 했지만 진짜 자바의 높은 경지에 올랐다고 한다면, 스레드를 자유자재로 다루고 JVM 로그를 분석 할수 있어서 어떠한 에러나 병목현상도 쉽게 잡아내고 개선하는 개발자일 것입니다. 보통은 이런 고급수준의 일을 필요로 하진 않지만 대용량 세션을 견뎌야하는 서버라면 세밀한 자원관리가 필요할수도 있을것입니다. 이런 개발자가 될수 있다면 연봉이 그냥~ 억소리 비슷하게 높을수도 있겠죠~! 오늘 소개해드리는 기사는 어쩌면 억소리~나는 고급 개발자로 올라서는데 작은 보탬이 되는 기사입니다. JVM의 명령행 플래그에 대해 모르고 있던 5가지 사항 저는 예전 WAS 유지보수할때 '아웃오브메모리' 에러 가 종종 발생된적이 있습니다. 그러나 도저히 그 원인을 찾지 못해서, WAS를 리스타트 하는 땜.. 더보기
자바 애플리케이션에서 동적으로 PDF 파일 생성하기 [IBM DW 201011] 자바 관련 SI 프로젝트할때 숨겨진 것처럼 보이는 일들이 있습니다. 그중 하나가 웹페이지를 엑셀이나 PDF, 프린터 리포트로 생성하는 일 입니다. 이 숨겨진 일들은 꽤 번거롭고 짜증나는 일들입니다. 예전에 JSP만 하면 되는 줄 알았다가 업체가 엑셀작업과 프린터 리포트 작업도 해달라고 해서 급하게 밤샘작업한적도 생각나는군요. 이렇게 다른 방식으로 UI나 데이터를 뽑아내는 일은, 일반적인 JSP가 아니고 특정 솔루션을 쓰는 경우가 많아, 그 솔루션의 개발 생산성과 성능을 중요하게 따져봐야 합니다. 오늘 소개할 기사는 특정 UI를 PDF로 추출하는 오픈소스 자바라이브러리 iText 관련 기사입니다. 사실 iText는 PDF 뿐만 아니라, HTML, RTF, XML 형식으로도 문서를 생성한다고 합니다. 다양한.. 더보기
Java 성능 모니터링에 대해 모르고 있던 5가지 사항 [IBM DW 201010] 자바 경력이 쌓일수록 단순반복 웹노가다 작업보다는 서버쪽이나 프레임워크나 성능튜닝쪽을 공부해야 고급개발자가 되겠다는 생각으로, 관련 공부를 했지만 역시 어렵더군요. 특히 자바 가장 밑단 가비지 컬렉터나 스레드 현황을 분석하는 자바 성능 모니터링은 높은 장벽이었습니다. 저같이 고급 자바 개발자가 되고 싶지만 어려워 하시는 개발자 분들이 많으리라 생각합니다. 이 기사가 자바의 가장 밑단에 있는 신비로우면서 어려운 성능 모니터링을 이해하는데 도움이 될것 같아 소개합니다. Java 성능 모니터링에 대해 모르고 있던 5가지 사항, Part 2 더보기
아이폰 Objective-C 메모리 관리 (수동변속기와 자동변속기) 친구로부터 중고차를 샀다. 차 사기전에 친구가 말했다. 수동인데 괜찮겠어? 나야 일종인데 상관없지~ 그래서 친구차를 저렴한 가격에 샀다. 그러나 수동 초보운전이 얼마나 힘들지 절감했다. 수동 초보 운전은 무서웠고 어려웠다. 사람들이 괜히 오토를 좋아하는게 아니구나라는 것을 알았다. 근데 운전이 조금 익숙해지니 수동의 장점이 보였다. 일단 재밌다. 마치 레이싱 게임하는것 같다. 연비도 더 좋고 수리비도 적게 든다고 한다. 그래도 막힌길이나 언덕길은 힘든것도 사실이다. 무엇보다 수동의 장점은 내가 내 차를 내 맘대로 컨트롤 한다는 자부심을 얻는 것이다. 이건 조금 실용성 없는 장점이긴 하지만 많은 수동 운전자들이 이 뿌듯함 때문에 수동운전을 좋아하는것 같다. 요즘 아이폰 개발에 Objective-C를 쓰면서.. 더보기
iBATIS 3의 새로운 기능 [IBM DW 201010] 자바에서 DB를 다루는 방법을 제 자바 경력 동안 생각나는데로 써보면은요. - 처음 신입 사원때 일반적인 JDBC 로 try catch문으로 감싸고 꼭 close하는 식으로 짰었고, 좀더 발전한게 DB접근로직을 DAO로 분리했었죠. - 좀더 머리를 굴려서 SQL코드를 설정파일로 빼는것도 해봤습니다. - 그런데 JDBC문은 워낙 복잡스럽고 close문을 안쓰면 메모리가 '풀'차서 서버가 다운되는 현상이 종종 있었죠. 아무리 신경써서 close한다고 해도 사람이 하는일이라 실수가 있었습니다. 마치 지뢰를 매설하는 기분이었습니다. - 한 2년전부터 쓴 스프링 프레임워크의 jdbcTemplate는 close문등의 지저분한 DB코드 작업을 많이 줄여주었습니다. - 이때 하이버네이트, iBatis가 나왔었고요. -.. 더보기
DB2 기초: 재미있는 날짜와 시간 [IBMDW 201010] 우리 자바 개발자들은 여러가지 SI프로젝트 경험을 합니다. 보통 자바 웹 개발 환경구성은 각양각색이지만 서버나 데이터베이스 구성은 대개 비슷합니다. 서버는 대부분 리눅스나 Unix일것이고 데이터베이스는 오라클 이겠죠. 그런데 종종 어느 대형 프로젝트 가면 IBM 기반으로 전산환경이 구축된 곳을 보게 됩니다. IBM으로 구축된 곳의 WAS는 틀림없이 웹스피어 이고, 서버 머신은 AIX(Unix 기반)이고 데이버베이스는 DB2 입니다. 우리 자바 개발자는 WAR 배포하고 리스타트 하는 방법만 알면 크게 신경쓸 필요 없기 때문에 WAS가 웹스피어인것은 크게 불편한일 없을 것이고요. AIX는 Unix이기 때문에 익숙한 서버 환경입니다. 문제는 DB2입니다. 지금 옛날 모 은행에 이어서 오랜만에 IBM 환경으로 .. 더보기
Android 애플리케이션에서 인터넷 데이터 사용하기 [IBM DW 201009] 누군가 말씀하시기를, B투C시장은 아이폰이 장악했지만 B투B시장은 대기업과 우리나라가 워낙 안드로이드를 밀어주는 분위기라 안드로이드가 좀더 발전할것 같다라고 말씀하시더군요. 스마트폰 비투비 프로젝트라면 아마도 이렇게 구성될 것 같습니다. 스마트폰이 클라이언트고, 이 클라이언트 폰에서 약속한 규약(XML이던 스트링이던 HTTP던 TCP던)으로 서버에 던지면 서버에서는 이 요청 데이터를 분석하고 요청 데이터에서 원하는 내용을 처리하여 다시 스마트폰 클라이언트로 던져주겠죠~! 비투비 프로젝트의 대부분이 이런 모습일것 같네요. 스마트폰 서버 프레임웍 디비 또는 호스트 이 기사는 전형적인 스마트폰 비투비 프로젝트에 참여하신다면 참고로 읽어보고 활용할만한 기사입니다. XML, JSON, 구글 제공 프로토콜 버퍼등 .. 더보기
아파치 Commons Lang 유익한 기능 활용법 [IBM DW 201009] 무슨 프로그램이든 글이든 보고 듣기엔 참 좋은 프로그램 또는 글인것 같은데 막상 활용해보자니 뭔가 두루뭉실하고 현실에 맞지 않는 것들이 있습니다. 저는 물론 간결하면서 바로 써먹을수 있는 프로그램이나 글이 좋습니다. 그런 의미에서 제가 좋아하는 바로 써먹을수 있는 실용적인 기사를 발견했습니다. 잠깐의 활용법만 알면 아파치 Commons Lang에서 제공하는 유틸리티 기능을 바로 써먹을 수 있습니다. * equals * hashCode * toString 이 3개의 메소드는 자바의 Object 클래스에서 제공하는 자주쓰는 메소드입니다. 특히 equals와 toString은 많이 쓰는 메소드죠~! 근데 보통 이 메소드들 그냥 쓰지만 가끔은 예를 들어 이런 상황이 생깁니다. Account acct1 = new.. 더보기
Eclipse Helios 둘러보기 [IBM DW 201009] 몇개월전 집 컴퓨터에 자바 개발환경을 새로 셋팅하면서 이클립스 3.4로 셋팅하고 잠시 묵혀두고 있었습니다. 그러다가 최근에 다시 자바 환경 실습하려고 했더니 아 이런 이클립스 3.5 헬리우스가 새로 나왔답니다. 그냥 3.4쓸까 3.5 쓸까~ 고민하다가 이왕 하는거 최신버전 깔아야지~ 라는 생각으로 3.5를 새로 받았습니다. 그런데 제가 이클립스를 새버전이 나올때마다 되도록 바로 업데이트 하려는 이유는 이번에 업데이트하면 이클립스가 좀 가벼워지지 않을까라는 기대 때문이었습니다만.. 기존 버전에 비교해 덩치나 속도는 큰차이가 없는것 같습니다. 대신, 마켓플레이스라고 앱스토어처럼 플러그인 마켓이 있고, 개발자는 이 마켓에서 원하는 플러그인을 받을수 있군요. 예전 방식보다는 좀더 사용자 친화적으로 바뀐것 같습니.. 더보기
손에 잡히는 정규 표현식을 읽고 가끔 전철안의 수많은 사람, 수많은 여성중에 그렇게 예쁘지도 않은데 이상하게 호감이 가서 계속 그녀를 쳐다본 기억이 있다. 딱히 이유를 찾기는 어려운데 유독 호감이 가고 알고 싶은 것들이 있다. 내가 프로그램 개발을 시작하면서도 이상하게 관심이 가는 기술들이 있었다. 예를들어 나는 윈도우 계열 기술은 안좋아하고 리눅스 계열 기술에 호감과 사랑을 보냈다. 옛날에 정보처리기사 실기시험을 대부분 비주얼 베이직으로 보는데 나는 C언어로 봤다. 전자상거래관리사 시험도 대부분 윈도우-ASP로 보는데 나만 리눅스-PHP로 시험을 치뤘다. 당시 수 많은 수험생 중에 리눅스-PHP로 시험보는 수험생은 나 혼자여서 감독관이 좀 낯설어하고 신기하게 봤던 기억이 있다. 남들은 기본 에디터로 다 울트라 에디트, 에디트 플러스를.. 더보기