12/30/2008

첫번째 MacOS용 app - RandomApp

어제 주문했던 코코아 프로그래밍 3판 번역본이 오늘 왔습니다. 요즘은 오전일찍 주문하면 오후에 도착하기도 하는 것 같던데 세상 참 좋아졌군요 -_-;;

책 받자마자 회사 개발부서 자리이동이 있어 짐 옮기고 세팅하고 이래저래 하다 보니 퇴근시간이 되서 퇴근하고 밥먹고 하다보니 이제서야 책을 펼쳐볼 수 있었습니다.

책의 첫번째 코코아 프로그래밍 예제파일 실행해봤습니다.
사용자 삽입 이미지


뭐 잘 되는군요 -_- Generate random number 를 누르면 랜덤숫자가 생성됩니다.

사용자 삽입 이미지



다만 32P 의 awakeFromNib 함수 구현중

[textField setObjectValue:now];

여야 하는데

[textField setObjectiveValue:now];

라고 오타가 있네요. 일단은 책 사서 돌려본걸로 만족하고 포스팅 -_-;; 앞으로는 좀 더 보여줄만한 코드가 작성되면 포스팅을 하도록 해야겠습니다. ㅋ

MacOS에서 화면 확대/축소하기

MacOS에서는 별다른 프로그램을 설치하지 않고도 자체적으로 화면 확대/축소 기능을 제공해줍니다.
따라서 어느 프로그램에서든 이 기능을 이용할 수가 있는데, 작은 글씨가 잘 보이지 않거나 하는 분들에게는 정말 좋은 기능일 것 같습니다.

방법은 간단한데 Control 키를 누른 상태로 마우스의 휠을 위로 굴리면 확대가 되고 휠을 아래로 굴리면 다시 축소됩니다.
단순히 화면이 픽셀이 확대되는 것이 아니라 화면이 확대된 상태에서 프로그램의 모든 기능을 정상적으로 사용할 수가 있습니다. 화면이 확대되어서 안보이는 곳은 마우스를 이동하는 것만으로 확대위치를 바꿀 수 있습니다.

아래는 제 블로그 admin 모드의 일반화면입니다.
사용자 삽입 이미지

Control + 마우스휠로 부분 확대를 한 모습
사용자 삽입 이미지


12/29/2008

MacOS에서 화면 캡춰하기

Microsoft Windows Vista를 써보신 분은 알겠지만 비스타에는 기본적으로 화면캡춰를 위한 도구가 포함되어 있습니다. 제가 XP보다 Vista를 좋아하는 이유 중의 하나이자 Vista + MS Live Writer 조합을 좋아하는 이유이지요.

윈도우류 에서는 Print Screen을 누르면 화면 전체가 클립보드에 복사되고 ALT + PrintScreen 을 누르면( Ctrl이던가? -_-;; ) 현재 활성창이 클립보드에 복사됩니다. 그리고 비스타에 들어 있는 캡춰 툴을 이용하면 영역캡춰 및 어느 정도의 편집이 가능하고 그 편집상태 자체가 그대로 클립보드에 복사되어 있기 때문에 어디서나 Ctrl+V를 눌러서 내용을 붙여넣을 수가 있습니다.
다만 비스타의 화면캡춰 툴만이 파일로 저장을 해주는 기능이 있다는 게 좀 아쉽다면 아쉬운 점입니다.

근데 제가 쓰는 MacOS 10.5.6 에서는 Command + Shift + 3 키를 눌러서 현재의 전체화면을 파일로 저장할 수 있고, Command + Shift + 4 키를 누르면 영역설정을 할 수 있어서 설정된 영역이 파일로 저장됩니다.
저장은 자동으로 데스크탑(바탕화면) 영역에 저장되며 파일명이 "그림 1", "그림 2" 와 같은 식으로 생성됩니다.

Command + Shift+ 4를 눌러서 화면 캡춰를 위해 영역을 지정하는 자체도 캡춰 할 수 있습니다.
방법은 Command + Shift + 4 를 눌러서 캡춰영역을 지정한 다음 마우스 버튼을 떼지 말고 그 상태에서 Command + Shift + 3 을 누르면 됩니다.
사용자 삽입 이미지
다만 Command + Shift + 3을 눌러서 배경화면에 캡춰파일이 생성되고 나면 Esc를 눌러서 영역지정을 취소해야 합니다. 그렇지 않고 영역지정한 마우스 버튼을 떼 버리면 영역지정된 화면이 같은 파일명으로 덮어써져 버리더군요. -_-;;

저기, iPod Touch 로는 스타벅스 내 구글 무료 Wi-Fi 를 쓸 수 없나요?

두차례 정도 포스팅을 하면서 이야기했듯이 현재 전국 스타벅스 매장 내에서 구글이 제공하는 무료 wi-fi를 사용할 수 있습니다.

오늘 회사내 Mac사용 개발자들과 이런저런 이야기를 하다가 7시쯤에 응과장님과 저녁식사를 하고 회사 앞 스타벅스에 가서 개발용 iPod Touch 를 가지고 놀면서 이런저런 이야기를 하다가 인터넷 접속을 위해서 NESPOT 핫스팟을 선택한 다음 사파리 브라우저를 켰습니다.

어? 근데 맥북에서 사파리 브라우저로 구글 무료 wi-fi 사용을 위한 네스팟 페이지로의 이동이 가능했던데 반해서 iPod Touch 의 모바일 사파리로는 해당 페이지로 접속이 되질 않더군요.

대신 1시간당 3천몇백원을 내고 결재하면 임시 id/pass 를 받을 수 있는 결제웹페이지로 이동이 됩니다.

별다방에서 이용할 수 있는 구글 무료 wi-fi 가 노트북 유저만을 대상으로 한 것인지, 아니면 iPod Touch 같은 웹 접속이 가능한 단말에 대해서는 아직 페이징 처리를 안해서 그런건지 모르겠습니다. 웹검색을 해봐도 별다방에서 iPod Touch로 무료 wi-fi 접속했다는 글은 보이질 않네요.

혹시 이 글 보시는 구글-스타벅스-KT네스팟 담당자가 계시면 확인 좀 해봐주시면 좋겠군요.

-P.S-
결국 항상 이용하는 정체불명의 museumsu 핫스팟을 또 이용했습니다. 오늘은 신호가 좀 약하던데 -_-;;
아무튼 늘 핫스팟을 제공해주셔서 감사합니다. ( 아마도 스타벅스 매장 안 PC의 무선공유기이거나 스타벅스 위쪽 트라펠리스의 어떤 입주민이 아닐까 싶습니다만... )

Mac의 키 세팅을 자유롭게 - KeyRemap4MacBook

태어나서 처음으로 MacBook을 쓰다 보니(구경은 몇 번 했지만) 이런저런 윈도우OS와의 다른 점들 때문에 아직까지 윈도우 사용하는만큼의 속도는 나지 않고 있습니다.

MacOS에서 (10.5.6) 키보드 언어 입력 변경은 Command + spacebar 의 조합으로 할 수가 있습니다. 맥에서 한/영 키가 별도로 존재하지 않기 때문에 101/103 key를 쓰시던(윈도우 버튼도 붙어 있는...) 분들은 매번 한/영 전환을 할때마다 불편함을 느낄 수도 있을텐데요(저는 이삼일 하니까 슬슬 적응되는 것 같기도 합니다만), 이런 경우 KeyRemap4MacBook 이라는 프로그램을 사용해서 키보드 매핑을 마음대로 바꿀 수가 있습니다.

화면 오른쪽 아래 있는 한/영 전환 버튼과 비슷하게 써먹을 수 있을만한 버튼은 오른쪽 Command버튼 정도일텐데요, KeyRemap4MacBook을 설치하고 아래와 같이 세팅을 하면 오른쪽 Command버튼으로 한/영 전환을 할 수가 있습니다.(좀 더 정확하게는 현재의 언어입력과 이전의 언어입력과의 토글입니다)


사용자 삽입 이미지

그러고보니 최근 포스팅을 할만한 꺼리가 뜸해져서 고민이었는데 한동안 Mac포스팅을 잔뜩 해야겠습니다. 
Mac초보이니 아무런 부담없이 포스팅할 수 있겠고, 설사 내용이 틀렸더라도 '처음이라 몰랐어요' 라고 이야기해버리면 그만이니까요. -_-;;

코코아 프로그래밍 3판 나왔네요


코코아 프로그래밍 - 8점
아론 힐리가스 지음, 박진형 옮김/인사이트


코코아 프로그래밍의 3판의 번역본이 나왔습니다. 12월 22일날 출시되었으니 따끈따끈하겠군요.

이 책의 원제는 COCOA PROGRAMMING FOR MAC OS X 3/E 입니다.

iPhone app 개발 전문서적은 아니지만 기반이 되는 Cocoa 및 xcode 에 대한 설명을 포함하고 있고, 어차피 MacBook Pro 가 생긴 마당에 iPhone App 개발만 하긴 맥북프로의 가격이성능이 울지 않을까요?

오늘 주문했으니 조만간 받아볼 수 있을 듯 합니다. 받으면 리뷰라도 한번 해볼께요 ㅋ ( 혹시라도 저 책 구입하실 분은 링크타고 들어가서 주문해주시면 ㄳㄳ )

12/24/2008

구글의 무료 Wi-Fi in 스타벅스 체험기

지금 퇴근길에 회사앞 스타벅스에서 까페라떼를 주문해서 맥북으로 웹서핑을 하면서 마시고 있습니다.

분당 수내동 스타벅스는 얼마전까지만 해도 정체모를 분의 핫스팟을 이용해야 했습니다만, 얼마전부터 제공되기 시작한 구글 무료 Wi-Fi 를 이용해서 쾌적한 서비스를 즐기고 있지요.

제가 들어왔을때 매장 안에 대략 10~12테이블 정도의 손님이 있었던 것 같은데, 그 중에서 저를 포함해서 4테이블이 노트북을 이용하고 있네요. 그 중 절반은 맥북!!
며칠전 포스팅했던 글에서 이야기했던것처럼 조만간 수많은 커피체인점(혹은 다른 곳에서도)에서 많은 사람들이 구글을 이용하는 모습을 볼 수 있을듯 하군요. ( 아예 그냥 WiBro Free존을 만들어 주셔도 좋아요 -_-;; )

입구와 매장내에 구글의 무료 Wi-Fi 안내 스티커가 붙어 있고, 매장 내에 무료 인터넷 이용을 위한 안내 팜플렛도 배치되어 있습니다. 사용법이 꽤 간단하지만 그래도 혹시나 해서 무료Wi-Fi를 사용하는 방법을 정리해 둡니다.

구글 Wi-Fi 이용방법

1. 스타벅스에서 Wi-Fi 핫스팟을 검색해보면 "NETSPOT" 이 잡힙니다. 구글에서 제공해주니까 Google 이라는 이름의 뭔가가 잡히지 않을까라고 생각했습니다만 그렇진 않더군요.

2. NETSPOT 핫스팟을 선택합니다.

3. 웹브라우저를 열고 자신이 가려고 하는 사이트를 입력하면 아래와 같이 자동으로 Google의 무료 인터넷 사용하기 화면으로 이동합니다. ( URL을 보면 알겠지만 KT넷스팟 페이지입니다 )

사용자 삽입 이미지
4. 좀 껄끄럽긴 하지만 실명인증을 한다고 하니 이름이랑 주민등록 번호를 넣고 "실명인증" 을 누릅니다. 인증칸 아래의 이메일을 입력하고 그 아래쪽에 보이는 두개 항목을 체크합니다. ( 시간 나시는 분은 개인정보 활용 어쩌구 하는 내용들을 다 읽어보시면 됩니다 )

5. 완료되면 구글 개인화페이지(www.google.co.kr/ig)로 이동됩니다.

이 다음부터는 마음대로 웹서핑과 인터넷을 즐기면 됩니다.
스타벅스 매장 내부에 아래와 같이 생긴 팜플렛이 비치되어 있으니 Wi-Fi이용시 참고하시기 바랍니다.
사용자 삽입 이미지



12/23/2008

오랫만에 다시 본 Ribbit Flex SDK 2.5.0

간만에 이런저런 리서치도 할 겸 Ribbit 의 Flex SDK 2.5.0 을 다운로드 받았습니다.

image

swc 를 교체하고 나서 초기 베타버전의 SDK로 만들었던 프로젝트를 flex builder 로 열어보니 오류가 주루룩 뜨네요.

살펴보니 그동안 내부적으로 이런저런 많은 변화가 있었던 것 같은데, 대표적으로(기본 예제 중심으로 볼 때) VoIP call 을 할 때 사용하던 RibbitRequest 가 사라지고 대신 com.ribbit.api에 있는 RibbitServices 라는게 생겼군요.

이 RibbitServices라는게 내부적으로 callManager, contactManager 등 각종 XXXManager 등을 갖게 되었고 예전보다 좀 더 그럴듯하게 포장되었습니다.

예전의 phone call 을 하는 예제를 살펴보면 대략

private var ribbitRequest:RibbitRequest;

private function doLogin():void {

    ribbitRequest = RibbitRequest.getInstance();
    ribbitRequest.addEventListener(RibbitResponseEvent.LOGGED_IN, handleLoggedIn);
    ribbitRequest.addEventListener(RibbitResponseEvent.ERROR, handleError);
    ribbitRequest.addEventListener(RibbitResponseEvent.RIBBIT_SERVER_CONNECTED, handleRibbitServerConnected);
    ribbitRequest.login('user', 'password', 'devID', 'appID');

}

private function handleRibbitServerConnected(event:RibbitResponseEvent):void {

    ribbitRequest.makeCall('555-555-5555');

}

이런 식이었습니다만, SDK 2.5.0 버전이라면

public  var rs:RibbitServices = new RibbitServices();

public function doLogin():void {

    rs.addEventListener(AuthenticationEvent.LOGGED_IN, ready);
    rs.callManager.addEventListener(CallEvent.CONNECTED, onCallStatusEvent);
    rs.callManager.addEventListener(CallEvent.CALL_STATE_CHANGE, onCallStatusEvent);
    rs.callManager.addEventListener(CallEvent.ERROR, onCallStatusEvent);

    rs.login('user email', 'password', 'devID', 'appID', null);

}

// addEventListener에서 추가한 함수들에 대한 구현

이런 식입니다.

에전처럼 RIBBIT_SERVER_CONNECTED 에 대한 이벤트 핸들링을 통해 call 을 하는 방식은 이제 쓸 수 없고 RibbitServices 안에 connected 라는 걸로 접속 여부를 체크해서 직접 전화를 걸면 됩니다.

rs.callManager.dial('555-555-5555');

실제로 저기다가 제 회사번호랑 휴대폰 번호, 그리고 동료 3명의 휴대폰 번호(SKT/KTF/LGT)를 넣어봤는데 정상적으로 통화가 잘 됩니다. dial 시 본인의 핸드폰 번호가 010-222-333 이라면 82102223333 으로, 집번호가 031-444-2222 라면 82314442222 와 같은 식으로 넣으면 됩니다.

다만 Ribbit에 개발자 등록할때 purpose number 가 발급되었음에도 불구하고 발신번호는 "002-"  로만 뜨는 부분이 있었고(따로 전화번호 기록을 해줘야 하는지 -_-;;), VoIP의 특성때문이라 그런지 아니면 미국갔다가 이래저래 라우팅 되어 와서 그런지는 몰라도 call 을 시작한 후 약 10~15초가 지나야 전화가 오더군요.

그리고 통화 연결 후 caller 와 receiver 간에 약간의 시간차가 있는듯 하고, 한쪽은 반대쪽의 말하는 게 들리는데 반대쪽에서 말한건 나중에 들린다든가 하는 현상도 좀 있었습니다.

미국서버 걸쳐서 넘어오는 것이고 국제전화니까 그렇지 않을까 싶기도 하지만 뭐 아무튼 국내 myLG070 같은걸 대용으로 쓸만큼은 절대 아니고, Ribbit 네트워크에 자신의 네트워크를 연결시켜서 좀 더 성능개선 등을 할 수 있을 것 같은데 carrier interconnection 어쩌구 하는걸 보니 개인이 서비스 만들어서 하긴 무리겠군요.

MVNO 라면 거의 기존 투자비 없이 Ribbit 에서 필요한거 죄다 구매해서 아~~주 저렴한 가격에 사업 시작할 수도 있겠습니다. ^_^;;


홈페이지를 보니 개발자 account 에 대해서는 무료로 어느정도까지는 SMS/통화를 제공한다고는 하는데 아무래도 테스트 용도로 쓰라고 준 것이니 홈페이지에 붙여놓고 쓸만큼은 아닐 것 같네요.

image

http://developer.ribbit.com/platform/pricing 를 가보면 자신의 Ribbit 어플리케이션에서 쓸 만큼의 seats(user account), voice mailbox, purpose numbers, US domain calling 등의 가격을 알 수가 있습니다. API Transactions 에 대한 항목은 설명에는 추가되어 있는데 (Ribbit API 사용횟수에 따른 과금을 할 모양인 듯) 월 이용금액 산출을 해주는 flash 어플리케이션에는 항목이 아직 없는 상태입니다.

image

기존 인프라에 대한 투자를 한푼도 하지 않고 Transcriptions 를 제외한 대략 위의 그림과 같은 정도의 서비스를 월 8만 달러에 할 수 있습니다. 이쯤되면 앞으로 Ribbit이, 그리고 Ribbit 을 1억 5백만 달러에 인수한 BT(British Telecom) 이 앞으로 뭘 어떻게 할려고 하는건지 대략 짐작이 오는데요 -_-;;

심지어 Ribbit 개발자 홈페이지에 가보면 Flash Toolkit 이라고 해서 플래시 저작툴에서도 쉽게 ribbit 을 사용할 수 있도록 하고 있습니다. 약간의 ActionScript 지식만 있으면 디자이너도 웹사이트에(또는 Air를 통해 PC 어플리케이션에) VoIP 어플리케이션을 올릴 수가 있다는 이야기지요.

스마트폰도 이제 쭉쭉 풀리고, 구글/구글 코리아는 언제 어디서나 자사의 홈페이지(플랫폼)에 고객을 접속시키기 위해서 무료 Wi-Fi 를 뿌리고 있고, 개발자들이 손쉽게 만들 수 있는 Ribbit SDK 같은것도 계속 풀리고 있고... 국내 이통사들도 국내에서만 자꾸 해먹으려 하지말고 점점 작아지는 파이 지킬려고만 하지 말고 잔뜩 긴장하셔야겠습니다. 준비하는 자만이 머지않아 다가올 대재앙을 기회로 바꿀 수 있을 듯 한데, 최소한 현재 시점에서는 그다지 준비된 이통사가 있어보이진 않는군요.( 그나마 3개 이통사 모두 초고속인터넷 제공업체를 하나씩 물고 있다는 것 정도? )

12/21/2008

NHN, me2day 22.4억에 인수

image

NHN이 me2day 를 인수했습니다.

미투의 개발/운영자인 만박님의 블로그에 관련 공지가 이미 떴고, 몇몇 미디어에도 이미 NHN의 me2day 인수 기사가 떴습니다. 이데일리의 기사에 따르면 100% 지분인수에 인수가는 22.4억원입니다.

저도 한동안 m2day 에서 즐거운 시간을 보내던 때가 있었습니다만, 개인적인 취향과는 맞지 않아서(한줄로만 개인의 시시콜콜한 것들을 휘갈겨 쓰는?) 그만둔 적이 있었습니다만, 국내 SNS서비스로서는 꽤 인기있는 서비스입니다.

다만 최초 me2day 시작부터 최근까지도 일반적인 SNS에 비해서 개발자의 빈도가 꽤 높았던 것 같고, NHN이나 DAUM 과는 달리 별다른 수익모델이 없었던지라 '서비스는 재밌는데 뭘로 수익을 내는걸까?' 라는 게 항상 궁금했었는데 결국은 NHN으로 넘어가게 되었군요.

구글 AdSense 와 sms 요금제 등을 도입해서 수익모델을 만들어 가는 중인듯 했습니다만 결국 이런 것들도 어느정도 이상의 규모가 되어야만 수익이라는 것이 충분히 발생가능한 것들인 만큼어느정도 이상 회원수가 받쳐주지 않는 이상 더 이상의 서비스 확장은 어렵지 않았나 하는 생각이고, 이는 비단 m2day 뿐만 아니라 수익모델이 없는 대부분의 국내 웹2.0을 표방하는(또는 SNS) 서비스들의 종착점이 아닐까 싶습니다.

이런 맥락에서 보면 스프링노트를 비롯한 오픈마루의 대부분의 서비스들도 마찬가지긴 합니다만, 오픈마루는 현금 두둑한 NC소프트가 모회사인만큼 이야기가 좀 다릅니다.


예전 싸이월드가 재밌는 사업아이템과 수익모델에도 불구하고 서버증설의 한계 등 자체적인 어려움이 있었을때 SK 커뮤니케이션즈에 인수되면서 폭발적으로 그 규모가 성장하여 서로 win-win 할 수 있었던 것처럼 이번 NHN-me2day 의 합병도 그러한 결과가 될 수 있었으면 하고, 개발자 개인의 입장에서 본다면 이번의 me2day 라든지 혹은 이후의 또다른 서비스들처럼 개발자 개인 또는 몇몇이 모여서 만든 재밌는 사업 아이템들을 대형포탈 또는 대기업에서 인수하는 형태의 비즈니스가 좀 더 국내에서 활발하게 이루어졌으면 좋겠습니다.


다만 걱정되는 것은 만박님이 밝힌 내용중 "왜 NHN인가" 라는 부분에서 "NHN은 전체 규모에 대한 관심보다도, 미투데이의 핵심역량과 그 안에서 돌아가는 소규모 소통 그룹의 다이나믹스에 주목하고..." 라는 부분인데, 이는 현재 m2day 가 조금씩 조금씩 확장되면서 소규모 그룹의 단단한 결속이 지속되어 왔기에 가능했던 부분이라는게 개인적인 생각인데 이러한 m2day의 장점이 엄청난 NHN 회원들의 신규유입에 노출되었을 경우에도 변질되지 않고 지속될 수 있을까라는 점입니다.

또한 최근에 NHN에서 인수했던 서비스들 중 인수 후에 더욱 빛을 발했던 서비스들이 전무하다시피 한 상황에서 미투데이도 동일한 전철을 밟게 되는건 아닐지 걱정됩니다만, 보도에 따르면 NHN은 me2day를 모바일 SNS로 특화할 계획을 가지고 있는듯 하니 사장될 가능성은 크지 않을 듯 합니다.

( 그렇게 되면 아마도 현재의 me2API를 이용하여 작성한 글들을 네이버 블로그에 원격포스팅 해주는 정도의 기능이 추가되면서 Weta Weblog 등을 이용하여 네이버 블로그쪽으로 글을 발행할 수 있는 기능이 네이버 블로그에 추가될 가능성도 있겠습니다. 럭키~ )


개인적으로는 me2day 라는 서비스의 느낌상 daum 쪽이나 구글코리아쪽으로 인수되었으면 좀 더 흐~음~~ 하는 느낌이었을 것 같은데 NHN쪽으로 인수되었다고 하니 왠지 흐~음~~? 하는 느낌입니다. 하긴 생각해보니 Daum 도 그닥 미투스러운 느낌은 없군요. -_-; 차라리 43things.com 같은 곳이 좀 더 미투스러운 것 같네요. :)


아무튼 주사위는 던져졌고, 앞으로도 me2day의 지속적인 발전을 기대해 봅니다.

-P.S-
글쓰고 문득 든 생각.. OpenID 로그인은 없어지는거겠지? -_-;

12/17/2008

유엔젤, SKT 우수사업 아이디어 제안 최우수/장려상 수상

출처 : http://www.etnews.co.kr/news/detail.html?id=200812100166


날짜가 좀 지나긴 했습니다만 SK텔레콤에서 개최했던 '오픈아이디어+페스티벌' 에서 유엔젤이 최우수상 및 장려상의 2개 부문 수상을 했습니다.

장려상은 상금이 약 100만원 정도이고, 최우수상은 상금이 천만원이나 된다고 하는데 들리는 소문으로는 지급되는 상금의 대부분을 아이디어 제안자에게 그대로 주기로 했다고 합니다.(70% 정도?)

곧 성과급도 나올 것 같은데 상금까지 받으신 분은 연말 대박이시군요. 왕 부럽습니다 -_-;;;

혹시라도 좋은 사업 아이디어가 있으면 SKT에서 운영하는 Open2U(http://www.open2u.co.kr/) 를 통해서 제안을 해보시기 바랍니다.
사업자 등록증이 없는 개인도 자유롭게 등록할 수 있고 사업화의 기회도 주어지는 듯 합니다.

image

Google 코리아, 한국 스타벅스 매장에 KT 넷스팟 무료제공

구글 코리아가 전국 260개 스타벅스 매장에서 KT 넷스팟 서비스를 무료로 제공한다고 합니다.

별도의 접속 프로그램은 필요 없고 실명인증을 하면 이용이 가능하기 때문에 일단은 내국인만 이용 가능합니다. 설치 프로그램이 필요 없기 때문에 wifi 가능장비(예를 들면 iPod Touch 등)면 어떤 것이든 인터넷 접속이 가능하며, 접속 후 첫페이지는 구글 개인화 페이지로 이동한다고 하는군요.

이렇게 되면 우선 노트북이나 wi-fi 장비 있는 사람들은, 혹은 그 외 스카이프/LG my070 전화기를 갖고 있는 사람들은 죄다 '스타벅스' 를 찾아가게 될 게 뻔하고 wi-fi 인터넷을 무려 1시간에 3천원이나 받고 제공하던 엔젤리너스 커피 같은 곳은 울며 겨자먹기로 공짜로 wi-fi 를 제공하든지 해야겠군요. 특히 스타벅스가 근처에 있는 곳이라면 ...

무선 인터넷을 즐기려고 접속하면 뜨는 첫 페이지가 구글이니만큼 구글의 page view 증가 및 사용자 증가에도 한 몫 단단히 할 것이고, 웹브라우저에  설정해 놓은 HOME URL을 가볍게 무시해주기 때문에 파급력은 대단할 것 같습니다.


우선 지금 당장은 스타벅스 매장 뿐이지만, 이걸 시점으로 해서 전국에 수많은 무료 Wi-Fi 핫스팟이 생기게 될 것입니다.(만고 제 생각입니다)

이미 구글코리아가 선수를 친 상황에서, 다른 대형 포탈/웹서비스 제공 업체들이 첫 무선랜 접속 페이지를 쟁탈하기 위해 수많은 사람들이 들락거리는 페스트푸드점, 커피숖 등의 입구에 신용카드 스티커가 붙어있는 것처럼 "이 지역은 NHN에서 Wi-Fi를 무선으로 제공하고 있습니다", "여기는 Daum 의 Free Wi-Fi 지역입니다" 등등의 안내문구를 볼 수 있을 것 같네요.

이런 경우 비용을 지불하기가 부담스러운 중소형 업체들은 점점 뒤쳐지게 될것이고 결국 대형포탈/사이트로의 쏠림현상은 지금보다 더 심화될 것이구요.


또한 상황이 이렇게 되면 Wi-Fi 가 가능한 스마트폰이 기존의 featured Phone 보다 더욱 더 잘 팔리게 될 것입니다. 내년 4월에 스마트폰 쏟아질 예정이니 그때를 대비해서 무선 Wi-Fi 존이 폭발적으로 늘어날지도?

지금까지는 대형 포털들이 고객을 자신의 웹사이트로 접속시키기 위한 접속료가 전혀 들지 않았지만( 광고 등은 제외하고 순수 물리적 접속 비용은 고객들 개개인이 모두 부담했으니 ), 이제는 고객들을 끌기 위해서는 무선인터넷 요금을 본인들이 부담해야 하는 시대가 오겠군요.


어쨌든 지금 당장 현재 시점에서 본다면 이번 무선 Wi-Fi 무료제공은 Google 코리아 / KT 메가패스 / 스타벅스 3사가 모두 win-win 하는 아주 훌륭한 굿좝~ 이랄 수 있겠습니다.

관련 기사 : http://www.mediatoday.co.kr/news/articleView.html?idxno=75562

12/15/2008

사내 SPS개발 관련 삽질 간단 정리, 그리고 SWFUpload 2.2.0 Beta3 / Xquared XHTML Editor

지난주 목요일부터 사내에서 사용하는 인트라넷에 몇몇 기능을 추가하는 일을 진행중입니다. SPS (Service Proposal System) 이라는 이름의 첨부파일이 가능한 단답형 게시판에 사원들이 평가를 매길 수 있는 정도의 기능을 가진 웹서비스를 만드는 일입니다. ( 모 과장님이 A4용지 한장에 대충 그려진 spec을 주고 가셨네요 -_-;; )

첨부터 만드는 거면 마음대로 만들겠지만 만든지 몇년이나 된 기존의 timesheet 입력 기능과 id/pass 연동을 해야 한다고 해서 DB스키마랑 작성된 PHP코드를 살펴봤는데 기존 페이지는 몇년 전까지만 해도 모두가 당연하다고 여겼던 euc-kr 인코딩으로 모든 페이지 및 데이터가 작성되어 있습니다.

'난~~~~~ 서버 ip랑 루트 id/password 만 받았을 뿐이고~~, 스키마 파일이나 개발문서도 하나 없었고~~~, PHP 는 온통 register_globals on 에 의존하고 있었을 뿐이고~~'

라는 상황이지만 사실 구조는 간단했기 때문에 타임시트쪽 DB스키마를 보면서 기존의 고질적인 페이지 로딩속도문제를 해결하고(explain 으로 쿼리실행계획을 확인한 다음 인덱스 두개 걸고 PHP 파일 몇줄 수정), 이래저래 기타등등을 해서 간단하게 만들었습니다. 디자이너 지원도 없고 혼자 만드는거라 페이지 view 는 css 로만 슥슥~

기존 웹페이지가 euc-kr 기반이라 세션에도 사용자명이 euc-kr 로 들어가 있었는데, 문제는 새로 만들어버린 페이지는 죄다 UTF-8이라는거~

최초에 시스템 만드신 분이 PHP를 설치하면서 iconv 모듈을 함께 설치해 주지 않으셨던지라 phpinfo() 의 configure 정보를 보고 재설치를 할까 하다가 개발시간도 얼마 없고 왠지 무서워서 몇몇 이름이 노출되는 부분만 exec() 로 iconv 를 실행시켜버리는 exec_iconv() 라는 함수를 작성하는 만행을 저질러 두었습니다. -_-;; 언젠가 누군가 그 부분을 발견하고 용기있는 분이시라면 PHP 재설치하시고 저 부분만 살짝 iconv() 를 이용하도록 바꾸시면 되겠네요 ㅈㅅㅈㅅ

Xquared

기본 기능을 완성하고 보니 너무 썰렁해서 편집화면에 오픈마루의 Xquared (20080428 버전) 편집기를 붙였는데, 이게 예전것은 readonly 모드가 있었던 거 같은데 이제는 그 모드가 사라져 버려서 저장한 내용을 그대로 뿌려주니 엉망진창으로 결과가 나옵니다.

이걸 어떻게 하나 고민하다가 xq_contents.css 에 보니 .xed 로 죄다 CSS 정의가 되어 있길래 xq_contents.css 를 HTML페이지에 추가하고 DB에서 읽어온 콘텐츠를 <div> </div> 사이에
뿌려주면서 div의 class를 xed로 지정해주니 끝.  테이블이나 기타 등등 편집기에서 보던대로 잘 나오는군요.

아, 그리고 예전에는 div 및 textarea 에 모두 xquared 를 붙일 수가 있었는데 이제는 textarea 에만 xquared 를 붙일 수가 있습니다. 좀 더 정확히 말하자면 특정 id 명으로 지정된 textarea 의 바로 뒤에 iframe 을 designMode on으로 붙이는 것이긴 합니다만...

SWFUpload 2.2.0 Beta 3

그 다음 문제는 파일 업로드인데 클라이언트쪽을 좀 더 '있어보이게' 할려고 SWFUpload 2.2.0 Beta3를 도입하기로 했습니다.

example 보면서 configuration 한다고 한시간 정도 삽질해서 테스트를 했는데 아무래도 플래시 기반 업로드라서 접속 사용자의 플래시 버전에 따라 동작하지 않을 가능성도 있고(얼마전까지 flash 10에 대해서는 swf upload 가 동작하지 않다가 최근 패치로 인해서 동작이 가능해진 듯), 사내 인트라넷(?)의 전담 개발부서나 운영부서가 없는 마당에 잔손이 가야 할 것 같은 부분들은 만들지 않는게 좋을 것 같아서 고전적인 방법으로 처리했습니다. ( 그냥 시간내에 하고 싶은대로 만들 수가 없을 것 같아서 포기해버렸다고 말을 할 순 없지 )

A4한장짜리 spec 으로 마음대로 만들고 나니 불현듯 아래의 그림이 떠오르더군요. -_-;; 웹서핑 해서 붙여넣었습니다.

 

사용자 삽입 이미지
 
-P.S-
PHP의 display_errors 가 Off 로 되어 있길래 On 으로 바꿨더니 기존 사이트에서 에러가 마구 난다. Error/Warning/ .. 온갖게 다 나네 -_-;;;

12/11/2008

나만의 pe.kr 도메인을 2년간 무료로 사용해보세요

image

네이버에서 선착순 50,000명에게 pe.kr 도메인을 2년간 무료로 지원해주는 이벤트를 하고 있습니다.

이벤트 페이지에서 개인 key 를 받아 whois 나 아사달 같은 도메인등록업체에서 신청을 하면 되고, 1인당 1개만 가능합니다.

저도 아침에 소식을 접하고 freesoft.pe.kr 도메인을 후딱 등록했지요. 후후후후~ -_-v


한국인터넷 진흥원에서 주관하고 1인당 1개의 도메인만 등록시키기 위해서 네이버의 회원정보를 이용하는 영리함을 보여주는군요.

등록을 위해서는 개인인증키를 받아야 하는데, 이를 위해서는 네이버 회원이어야 하기 때문에(가입시의 주민등록번호를 활용? 네이버는 1개 주민번호로 3개까지 아이디가 생성되니...) 네이버 로그인 또는 회원 가입을 해야 합니다.

또한 저처럼 서버호스팅을 해서 DNS를 자체적으로 돌리거나 또는 호스팅업체의 DNS를 이용할 수 없는 분들은 업체들의 유료 포워딩 서비스를 이용해야만 자신의 블로그로 redirect를 시킬 수 있기 때문에(라고 생각하는 모양입니다만 dnsever 같은게 있으니 뭐.. ) 도메인 관리 대행 업체에게도 득이 될 것 같습니다.

kr 하위의 pe.kr 이기 때문에 한국인터넷 진흥원에서도 도메인 등록을 위해서 특별히 돈이 들 것 같진 않고, 2년후에 이벤트 참여자의 일부가 재등록을 할 걸 생각해보면 모두가 win-win 하는 그야말로 1석 3조의 이벤트로군요.

선착순 50,000명에게만 도메인을 준다고 하고, 이미 괜찮은 pe.kr 도메인명이 꽤 많이 등록 되었으리라 생각되는데... 관심 있으신분은 후딱 신청하시기 바랍니다.


개인적으로 pe.kr 도메인이 좀 더 널리 이용되기 위해서는 현재의 10,000원/1년인 도메인 등록 수수료가 좀 더 저렴해져야 한다고 생각합니다. 1년에 한 5천원? -_-;;

그리고 한국인터넷진흥원에서 네이버/다음/기타 블로그 서비스 등과 좀 더 긴밀하게 연계를 해 pe.kr 도메인을 사용하는데 불편이 없도록 하는게 좋지 않을까 싶기도 하군요.

네이버/다음/티스토리/이글루스 등에서 pe.kr 도메인을 자사 블로그 서비스로 포워딩해주는 그런 서비스라도 제공해주면 좀 더 좋을 것 같은데 그러지 않는 것은 도메인대행업체의 압력 때문일지 아니면 수익성이 없다고 생각해서인지 모르겠지만.. 아무튼 혹시라도 관계자분들이 이 글 보시면 한번 고려해 보시길 바랍니다.


아래는 이벤트 페이지입니다.

http://section.blog.naver.com/event/DomainPromotionEventForm.nhn

12/04/2008

Eclipse 에서 소스파일에 함께 넣어둔 xml 파일들이 build 시 누락될 때

웹개발을 위해 Eclipse 에서 WTP 환경 맞추어놓고 build 하시는 분들은 아마도 output 을 WebContent/WEB-INF/classes 로 맞추어 놓으실겁니다.

이게 아니더라도 ibatis/hibernate 라든가 각종 프레임워크나 라이브러리를 사용하게 되면 설정을 xml로 하는게 대부분의 추세이지요. ( 드물게 .properties .. )

최근에 3.4 설치한 이후 처음으로 dynamic web project 를 생성하고 프로젝트 뼈대를 구성하던 중(Spring 2.5 + iBatis + ...) 이런 현상이 발생했습니다.

build path 쪽 source includes/excludes 쪽으로 아무리 고쳐봐도 안되서 어쩔 수 없이 export -> ant 로 빌드 스크립트를 만든 다음 excludes 쪽 항목에 있는 **/*.xml 을 삭제하고, 그 다음부터는 꼬박 하루를 ANT로 빌드를 했습니다.

오늘 이 부분의 번거로움에 대해서 팀 동료인 광식씨와 이야기를 하던 중 광식씨가 동일증상에 대한 글을 써놓은 블로그 포스팅을 발견해서 알려줬습니다.


Window -> Preference -> Java -> Compiler -> Building 까지 들어와 보면 아래와 같은 화면을 볼 수가 있는데요

image

저도 몇번이나 이 근처까지 들어왔다가 나갔었는데, 저기서 "Output folder" 를 열어볼 생각을 못했었네요. -_-;

열어보면 이쁘게도 *.xml 을 output folder 로 복사시에 죄다 걸러내도록 필터가 설정되어 있군요.

image

깔끔하게 삭제해주고 나면 문제 해결!


얼마전까지만 해도 이런 증상이 없었던 걸로 봐서 최근 설치한 플러그인 또는 업데이트한 플러그인 중 하나의 소행인듯 합니다만 -_-;;

제가 참고한 글의 링크를 위에 걸어 두었지만, 동일 현상으로 고생하실 분들이 꽤 있으실 것 같아서 저도 별도로 포스팅 해둡니다.

11/27/2008

Java SE 6 update 10 released!

image 어제 점심먹고 커피 한잔 하면서 제안서를 쓰고 있는데 java update 가 준비되었다고 java updator 가 뿅~ 하고 뜨길래 눌러봤더니 java se 6 update 10이 발표되었군요.

update 7 이 마지막이었던 것 같은데 8/9 생략하고 곧바로 10으로 점프했군요. 뭐가 바뀌었는지 궁금해서 update release note 를 살펴봤습니다.

간단하게 각 항목에 대해 언급해 보자면

Olson Data 2008c : Olson time zone 의 2008c 버전을 포함합니다. JavaDoc 의 java.util.TimeZone 을 읽어보시면 알겠지만 Three-letter time zone ID 는 deprecated 되었습니다. "CST" could be U.S. "Central Standard Time" and "China Standard Time" 등과 같은 이유에서라고 하네요.

Java DB : 이번 릴리즈에는 Java DB 10.4 가 포함되어 있습니다. Java DB 는 Apache 프로젝트인 Derby ( Java 로 만든 경량  DBMS ) 의 SUN 배포한 정도입니다. 사용하기 간단하고 전체 사이즈도 대략 2MB 정도로 가볍습니다.

Next Generation Java Plug-in : RIA로써의  Java Applet ( JavaFX? ) 의 기능향상을 위한 이런저런 패치가 들어간 듯 하네요.

  • ability to increase the heap size and specify command-line arguments on a per-applet basis
  • ability to select a particular version of the Java Runtime Environment for an individual applet
  • improved reliability
  • better and more portable integration between the Java and JavaScript programming languages
  • improved support for accessing the DOM of the containing web page
  • enhanced support for web services

New Direct3D Accelerated Rendering Pipeline for Microsoft Windows Platforms, Enabled by Default : 무려 "fully hardware accelerated graphics pipeline based on the Microsoft Direct3D 9 API" 라고 합니다. 당연히 비디오카드의 드라이버를 최신버전으로 업데이트시켜야겠죠. 새로 구입하신 분들이면 뭐...

Direct3D 파이프라인 기능을 끄고 싶으면 JavaVM  설정시 -Dsun.java2d.d3d=false 를 세팅해 주면 되며, Direct3D API 에서 직접 제공하지 않는 XOR paind mode 등을 사용하는 경우 예전보다 느려질 수 있다고 하니 사용하시는 분들으 주의하셔야겠습니다.

Known Auto Update Issue on Window Vista : 6u10 build 이전의 릴리즈들은 UAC가 설정된 Administrator 사용자의 Vista 에서는 auto update 가 되지 않았었다고 하는군요. ( 굳이 자동으로 안해주셔도 -_-;; )

문제가 있었던 분들은 예전버전을 삭제하고 이번 릴리즈( 6u10 GA(1.6.0_10-b33)) 을 설치하면 됩니다.


그외 awt/swing/2d 등을 포함해 무려 720개의 bug fix 를 제공하고 있으니 지금 당장 업데이트 고고싱~!

참, Sun Developer Network 에 가입된 분들이라면 얼마전 개최되었던 SUN Tech Day 의 발표자료들이 올라와 있으니 관심있는 분들은 참고하시면 되겠네요.

11/22/2008

동백지구의 명물, 르방 과자점

다른 지역에서까지 유명한지는 모르겠지만 르방 과자점은 동백지구 안에서는 꽤 알려진 과자점입니다.

동백 고등학교 길 건너의 코아루/한라비발디 맞은편에 위치한 이 가게는 규모는 작지만 우선 가게의 내/외부 인테리어가 상당히 예쁩니다.

IMG_4691

IMG_4692

IMG_4699

IMG_4700

얼마전부터는 크리스마스컨셉을 살려서 '과자로 만든 집' 을 가게 안팎으로 전시 해두고 있는데요, 이게 꽤 먹음직할 뿐만 아니라 동심을 자극하는 요소가 강하더군요.

언젠가 반드시 저 집을 먹어보고야 말겁니다. ( 벌써 누가 떼먹었는지 보수의 흔적이 조금씩 보이더군요 )

IMG_4696

IMG_4697

그리고 파리바게뜨/뚜레쥬르 같은 빵집들과는 달리 판매하는 과자나 빵을 시식해 볼 수 있도록 작은 배려를 하고 있습니다.

혹시라도 빵이 맛이 없으면 시식해보고 구입하지 않을 게 뻔한데 이렇게까지 하는건 정말 맛에도 자신이 있다는 이야기겠지요.

가격이 조금 쎈 것 같긴 하지만 과자/빵/케익 모두 맛있고 먹을만합니다.


그리고 계산하는 손님들에게 직접 뽑은 원두커피를 일일이 주는데요 여름에는 아이스커피를 겨울에는 따뜻한 블랙커피를 제공해 줍니다.

조그마한 2층에는 테이블이 두개쯤 있어서 먹고 갈 수도 있습니다.


동백지구에 살고 계시거나 근처를 지나가는 분들이라면 꼭 한번 들러보시기 바랍니다.

2008년 11월 22일, 건국대학교 앞 일본라멘집 '우마이도' 다녀옴

오리지널 일본라멘은 2004년인가? 2005년쯤에 회사에서 포상의 형태로 동경 밤도깨비 여행을 보내준 적이 있었는데, 그때 처음으로 먹어 보았습니다.

지금 기억으로는 미소, 쇼유, 돈코츠라멘을 종류별로 다 먹어보았던 것 같습니다.

아무튼 한국에 돌아온 이후로 몇번이나 일본라멘을 하는 곳을 찾아갔었는데.. 그닥 맛있는 곳을 찾기가 어려웠습니다. 그나마 있던 일본라멘 체인점도 없어져 버리고...


아무래도 우리가 아는 '라면' 과는 다르기 때문에 그대로 일본라멘집 이라고 소개를 한 이 '우마이도' 는 사실 떡이떡이님의 예전 포스팅을 보고 가야지 가야지 하면서 벼르고 있다가 오늘 드디어 실행에 옮긴 곳입니다.

저흰 차를 몰고 동백지구에서 출발했는데 -_-;;;; 정말 차 많이 막히더군요.

그렇다는건 알고 있었지만 또 간만에 차를 몰고 서울시내를 들어갔더니 그런 고생이 또 없었습니다.

차 몰고 가실분들은 가급적 대중교통 이용을 고려해 보시길 바랍니다.


그래도 혹시라도 차 몰고 가실분들을 위해서 네비게이션에 입력할 주소는

서울시 광진구 화양동 3-29
전화번호는 02)467-8788

입니다.


지하철을 타고 가거나 주차를 한 다음 길을 찾아가고자 하시는 분들께 떡이떡이님의 길 안내를 좀 더 보강해서 길을 알려 드리자면

건대 2번 출구에서 도서관 방향(또는 어린이 대공원 방향)으로 쭉 걸어가다 보면(내려오자마자 보이는 신호등 건너지 마시고), 길가에 레인보우 안경점이 있고 좀 더 가다보면 show 휴대폰 매장이 보입니다.
바로 그 show 매장 앞에 있는 골목으로 들어가면 여러 음식점이 있는데 1층(지하?)에는 '장비' 라는 설렁탕집이 있고 2층 왼쪽에는 수제우동을 파는 가게가 보이고, 그 오른쪽으로 美味堂 라고 적힌 가게가 보입니다

점심시간쪽 영업시간은 모르겠고, 오후 2시부터 5시까지는 저녁장사를 위한 준비시간인듯 하니 미리 가시면 한참을 기다려야 합니다.
대략 4시 40분~50분 정도부터 사람들이 가게 오픈을 기다리며 줄을 서시 기다리기 시작하니 적당히 시간 맞춰 가시면 되겠습니다.


가게 메뉴는 라면과 교자(군만두) 두개밖에 없습니다. 그리고 면 추가에 천원.

우마이도에서 파는 라면은 돈코츠라멘 이라고 해서 하카다(후쿠오카) 지방 특산라면이라고 하는데, 혹시라도 쇼유라멘(간장으로 맛을 낸 나름 맑은 국물의 라면)만 먹어보신 분이라면 좀 느끼할 수도 있겠습니다만... 개인적으로는 무척이나 담백하고 국물이 진국이라고 생각합니다.


오늘도 IXUS55를 들고 간지라 뭐 그다지 사진 퀄리티가 좋진 않지만, 인증샷 찍은게 몇장 있어서 공개해봅니다.

IMG_4688

정말 먹음직스럽죠? +_+

사진에 보이는 검은 물체는 삶은 달걀인데, 겉은 구운 계랸처럼 검은 색인데 안쪽은 진~짜 살짝 익은 반숙 형태입니다. 이런 형태로 삶은 달걀을 첨 봤는데 완전 반했다는~!!

IMG_4689

추운 겨울 돈코츠라멘이 그리운 분들이라면 내일이나 이 겨울이 가기전에 우마이도로 고고싱~!!

2008년 11월 20일, 부산어묵 야식!

아시다시피(모르시는 분들도 계시겠지만) 전 부산출신입니다.

서울 올라온게 조금 있으면 10년이 다되어 가지만 아무튼 부산에서 해산물을 먹고 자랐던 터라 수도권에서 왠만한 횟집의 회는 성에 차지가 않습니다.

가격도 가격이고, 신선함도 그렇고 -_-;; 물론 가게의 인테리어나 서비스 같은건 수도권쪽이 좀 더 나은 편이긴 합니다만...

어묵(오뎅이라는 단어가 더 익숙한)도 예외가 아닌데, 수도권에서 '부산오뎅' 이랍시고 파는 걸 보면 가격면에서나 뭐나 참 뭐라고 말해야 할지 -_-;;


아버지가 잘 아는 어묵공장 사장님이 계셔서 가끔 그쪽에 전화를 해서 어묵을 시켜서 먹곤 하는데, 아무래도 여름에는 변질될 가능성이 있어서 피하고 추운 겨울이 되면 주로 많이 배달을 해먹곤 합니다.

한봉지에 만원 정도이고, 택배비가 4 봉지 이하면 3천원 정도... 합쳐서 13,000원 정도에 시켜 먹을 수 있는데, 가격도 엄청 저렴하거니와 그 품질 또한 기가 막힙니다.

양이 어느 정도냐 하면, 보통 꼬치용으로 쓰는 긴 어묵형태와 동그란거, 김밥에 넣을때 쓰는 네모난 형태 등등 다 포함해서 아래 사진에 있는 어묵 분량의 4배정도? 될겁니다.


아래는 어묵을 먹기 좋은 크기로 자른 다음, 다시마와 멸치, 그리고 무로 육수를 빼고, 거기에다가 색깔을 위해서 당근과 파를 넣어서 만든 야식입니다.(제 솜씨라능~!!)

IMG_4670

푸짐~!

IMG_4672

어묵만으로는 좀 허전한 것 같아서 딸기 사온것도 꺼내고 이마트에서 마감시간에 사온 초밥도 꺼내놓았습니다. (물론 저 어묵을 다 먹은거 아닙니다 -_-;; 생각보다 많더군요)

IMG_4674


흠.. 그러고보니 부산어묵 직송해서 팔아도 꽤 괜찮을 것 같기도 하네요. 아버지 아는 분이시라고 하니 저렴한 가격에 구입도 가능할 것이고 ... 오픈마켓에서 팔아볼까요? ㅋ

2008년 11월 20일, 티스토리 출장 후 돌아오는 길에 한강 사진

20일에 홍익대학교에 있는 daum tistory 쪽 출장을 다녀오다가 구름이 멋져서 찍어본 사진입니다.

마침 갖고 있던 캐논 IXUS55로 찍어봤는데, 역시 DSLR처럼은 안나오지만 그래도 DSLR보다는 요런 스냅샷 위주의 소형 카메라를 들고 다니는게 '기록' 용도로는 더 좋은 것 같네요.


IMG_4668

IMG_4669

11/19/2008

Amazon CloudFront 퍼블릭 베타 서비스 시작

오늘 아침에 aws(amazon web services) 쪽에서 CloudFront 의 public beta 서비스를 알리는 이메일을 수신했습니다.

CloundFront 는 aws에서 제공하는 CDN(Content Delivery Network) 서비스의 이름인데, 이메일에서 이야기하고 있는 CloudFront 의 장점은 다음과 같습니다.

  • lets you get started easily there's no need to contact a sales person or negotiate a contract. Anyone can get started in just minutes with only a credit card.
  • works seamlessly with Amazon S3 - you can start delivering your files stored in Amazon S3 through CloudFront edge locations in a matter of minutes.
  • is simple and easy to use - a single API call is all that's needed to get started delivering your content.
  • lets you pay only for what you use there are no minimum fees and no long-term commitments.

한줄 요약을 하자면

  • 귀찮은 과정 없이 신용카드로 결재만 하면 금방 쓸 수 있고 저렴하다.

정도일까요?

CloudFront 사이트에서 확인한 U.S. Edge Location 의 GB당 전송 비용 및 request 당 비용은

Data Transfer

$0.170 per GB – first 10 TB / month data transfer out
$0.120 per GB – next 40 TB / month data transfer out
$0.100 per GB – next 100 TB / month data transfer out
$0.090 per GB – data transfer out / month over 150 TB

Requests

$0.010 per 10,000 GET requests

로써 아시아쪽 Edge Location 인 Japan Edge Location 이나 HongKong Edge Location 은 좀 더 비싸군요. ( Japan 이 가장 비쌈 )

Edge 서버가 있으니 당연히 Origin  서버도 필요할텐데 위에서 언급했듯이 Origin Server 는 Amazon S3 ( Simple Storage Service ) 를 통해서 이루어지기 때문에 간단히 해결됩니다.

이메일 원문 내용은 아래와 같습니다.


Dear AWS Customer,

Today, we're excited to announce the public beta of Amazon CloudFront, a new web service for content delivery. With CloudFront, you can distribute content using a worldwide network of edge locations that provide low latency and high data transfer speeds. CloudFront works seamlessly with other AWS services such as Amazon S3, and like all AWS services, is self-service with no up-front commitments, no long-term contracts and pay-as-you-go pricing. You can sign up for CloudFront - and begin using it today - at aws.amazon.com/cloudfront.

The initial release lets developers and businesses deliver popular, publicly readable content worldwide. CloudFront has a number of exciting features that differ from many traditional methods of content delivery. It:

  • lets you get started easily there's no need to contact a sales person or negotiate a contract. Anyone can get started in just minutes with only a credit card.
  • works seamlessly with Amazon S3 - you can start delivering your files stored in Amazon S3 through CloudFront edge locations in a matter of minutes.
  • is simple and easy to use - a single API call is all that's needed to get started delivering your content.
  • lets you pay only for what you use there are no minimum fees and no long-term commitments.

To Use Amazon CloudFront, all you need to do is store your objects in Amazon S3 (make sure they are publicly readable), then, make a simple API call to register your bucket with CloudFront. This API call will return a new domain name for you to include in your web pages or application. When clients request an object using this domain name, they will be automatically routed to the nearest edge location used by Amazon CloudFront for fast delivery of your content. No negotiations, no upfront fees, and no volume commitments. It's that simple.

You can learn more about Amazon CloudFront and get started using the service at aws.amazon.com/cloudfront.

Sincerely,

The Amazon CloudFront Team

11/17/2008

제리 양, 결국 야후 CEO 사의 표명

출처 : http://news.naver.com/main/read.nhn?mode=LS2D&mid=sec&sid1=105&sid2=230&oid=277&aid=0002059559

 

제리 양이 결국 야후의 CEO 에서 물러나기로 했습니다.

최초 MS가 야후를 넘기라고 할때의 인수가격으로 넘겼으면 아마도 "명장" 으로써 이름을 남길 수 있었을텐데, 오늘 야후 주가는 10~11달러를 왔다갔다 하는 정도의 수준이라 더욱 더 아쉬움이 남는군요 . ( 현재 야후 주가 보기 )

조건때문이든 어쨌든 MS와의 합병을 강력하게 반대해 오던 제리 양이 사의를 표했고, 현재 Yahoo의 주가가 워낙 저렴하기 때문에 야후가 Microsoft로 헐값에 M&A 를 할 수 있는 좋은 기회인 건 사실입니다만, 앞으로 어떻게 될지는 좀 더 두고 봐야겠습니다.

 

아무튼 제리 양, 그동안 수고했습니다.

11/13/2008

Ambient Orb 사고싶어!

Continuous Integration anti-pattern 에 대한 기사를 읽다가 Ambient Orb 라는 걸 이용해서 ant build 시 task 의 성공/실패에 따라 불이 반짝반짝 들어오게 하는 내용을 발견했습니다.

기본적으로 Ambient Orb 라는 건 Dow Jones 의 수치에 따라 색깔이 변하도록 세팅이 되어 있는 상태인데, 설정에 따라서 이걸 바꿀 수 있는 것 같네요.

매달 $6.95 달러를 내면 프리미엄 채널을 설정해서 사용할 수도 있는듯 합니다.

imageimage image 

Quality Lab의 OrbTask 를 이용해서 아래와 같이 ANT task 를 설정하면 task 가 성공시 녹색불이, 실패시에는 빨간불이 들어온다능~!!

<target name="notifyOrb" >
  <taskdef classname="org.qualitylabs.ambientorb.ant.OrbTask"
    name="orb" classpathref="orb.class.path"/>
	<orb query="http://myambient.com:8080/java/my_devices/submitdata.jsp"
	  deviceId="AAA-9A9-AA9"
	  colorPass="green"
	  colorFail="red"
	  commentFail="Code+Duplication+Threshold+Exceeded" />    
  </target>

이 장비는 PC본체에 USB IR 을  꼽아서 수신하는 방식도 아니고 인터넷을 연결하는 방식도 아닌, 특정 주파수를 이용해서 데이터를 전송하는 것 같네요.

U.S 내에서 약 95% 정도의 커버리지를 갖고 있다고 하니 한국에서는 구입을 해도 사용할 수가 없겠군요. OTL  불은 들어올 테니 조명 정도로 쓸 수 있을까요? -_-;;

현재 Stock Orb라는 이름으로 팔리는 이 제품은 무려 $99.99 ... 조명기구로 사기는 비쌉니다. ㅜ.ㅜ


LED 문자 표시기 같은것도 좋을 것 같은데... 서버실에 들어있는 서버가 window 도 아니고 회사 사무실에서 신호를 수신할 수도 없으니 이건 좀 무리인듯.


전자/조명쪽으로 실력 좀 있으신분/회사면 Ambient Orb 컨셉에 LAN + WiFi 수신안테나 붙이고 web server 랑 was 경량으로 설치해서 Ambient Orb에 원격접속해서 뭔가를 설정하고 URL로 데이터를 쓰면 색깔이 반짝반짝 바뀌도록 좀 만들어보세요 -_-;;; ( 인터넷 공유기 환경설정하듯이 )


ambient 의 다른 재밌는 제품들을 보고 싶다면 여기를 클릭!

11/11/2008

야후 블로그 랭킹, www 가 랭킹 1,000등을 좌우하다

image

이건 뭐라고 해야할까 -_-;;;

이놈이나 그놈이나 똑같은 콘텐츠를 가리키고 있건만 www 가 있다는 이유만으로 더 높게 랭킹을 하는건가?

www 가 없는 potatosoft.com 때문에 18,516위가 되신 분에게는 /죄송


그리고 야후코리아님은 이런거 가능하면 좀 하나로 합쳐서 보여주시기 바랍니다 네?

11/10/2008

2008년 11월 읽고 있는 책들 - 육일약국 갑시다


육일약국 갑시다 - 7점
김성오 지음/21세기북스(북이십일)

오랫만에 책을 선물받았습니다.

지난 6월초 쯤인가 안부장님이 부서 전체에 책을 쭉 돌리셨던 것 같은데(천 개의 찬란한 태양) 근 5개월만에 또 책을 돌리셨네요. ㄳㄳ

책 구성은 필자의 군 제대 후 약국을 창업하고 메가스터디 내에서 중등부 엠베스트 를 창업하고 그 엠베스트가 다시 메가스터디에 합병되기까지 필자가 겪었던 많은 에피소드들을 중심으로 시간과는 무관하게 주제에 따라 엮여 있는 형식입니다.

많은 사람들이 아는 이야기지만 실제로 실행하기는 어려운 이야기들, 그리고 사실상 많은 기업들이 애써 외면하고 있는 부분들, 즉 '고객에 앞서 직원들부터 감동시켜라', '이윤보다 사람을 남기는 장사를 하라', '나누고 배풀어라' 등의 주제로 쓰여져 있기 때문에 어떤 이들은 이 책을 읽고 나면 '그건 이상주의자들이 외치는 소리고 현실은 달라' 라고 말하겠지만 실제로 저자인 김성오씨는 ( 최소한 '육일약국 갑시다' 에 적힌 내용들이 사실이라면 ) 그러한 방법을 통해서 메가스터디 엠베스트를 키웠고, 육일약국을 키워서 성공한 사람으로써 결국 '하려는 의지' 의 문제라는 걸 말해주고 잇는게 아닌가 싶네요.

다만 책 내용중에 몇몇 부분, 이를테면 p174에

나는 블루오션이라는 것을 믿지 않는다. 세상에 블루오션은 없다 .많은 사람들이 '돈이 되는 일' 에 벌떼처럼 모여들어 그 일의 희소성은 사라진다.

라는 부분은 확실히 대기업에서 물량으로 밀고 들어오면 거의 다 기존의 블루오션은 사라지기 마련이지만 그렇다 하더라도 분명히 '레드 오션' 이라는 게 되기 전까지의 블루오션을 개척함으로 인한 장점이라든가, 설사 레드 오션이 된다고 하더라도 선도적 사업자로써의 장점, 또는 틈새 시장(Niche Market) 역시도 블루오션의 하나로 본다고 하면 너무 단언적으로 '블루오션은 없다' 라는 건 좀 아니지 않나 싶더군요. 결국 저자가 대표를 맡고 있는 엠베스트 역시 오프라인 시장과는 차별성을 띄고 있는 온라인 시장이라는 틈새 시장(+ 경쟁력을 갖춘)이니까요.

또한 저자의 부친이 목사라서 그런지 책 중간중간에 기독교적 가치관에 대한 언급이나 목사로서의 부친에 대한 이야기들이 나오는데(프롤로그 제목부터가 '섬김의 비즈니스') 글쎄요... 이건 육일약국이나 메가스터디를 성공시킨 것과는 작접적인 관계가 없지 않은 부분이 아닌가 싶습니다. 수많은 기독교 신자들이 기독교의 가르침에 따라 생활하고 또 사업을 하겠지만 그들이 모두 성공하는 건 아니죠.
하긴 이 책이 100% 경영서적도 아니고 자서전의 성격이 어느정도 있으니 그렇게 생각하면 무난히 넘어갈만한 정도의 수준이긴 합니다.
다만 개인적으로 정치가와 사업가는 정직하지 않다라고 생각하는 편이라 -_-;;;

아무튼 회사 경영하시는 분들은 안된다 안된다 하지만 마시고 '그렇게 해서 성공한' 대표적인 기업인(정말?) 메가스터디 엠베스트와 김성오씨가 있으니 읽어보시고 제발 좀 몇가지만이라도 실천해 보시기 바랍니다.

'찾아가는 음악회' 다녀왔습니다.(정명훈 마에스트로 + 서울시향)

concert_01

지난주 토요일 저녁에 드라마 베토벤 바이러스의 그 정명훈이 아닌 오리지널 정명훈 마에스트로가 지휘하는 음악회를 다녀왔습니다.

어린이재단에서 창립 60주년 기념으로 주관한 음악회였고 서울시립교향악단이 연주를 했습니다.

드보르작의 '신세계로부터' 와 앵콜요청으로 베토벤 교향곡쪽도 한 악장 연주를 해주셨는데 클래식에 대한 지식이 짧아서 기억이 전~혀 안납니다.


클래식에 문외한이지만 나름의 감상을 적어보자면, 지휘라는게 그렇게 멋진 줄 몰랐다는 것과 클래식도 멋지구나~ 라는 정도?

어릴때는 클래식 들으면 무조건 잠이 왔는데 이제 클래식도 받아들일 준비가 되었나봅니다 ( 연주회 도중 몇몇 어린이들은 자면서 코를 살짝 골더군요 -_-;; )


앞으로는 대중가요 콘서트 말고 클래식 음악회도 종종 다녀야겠습니다.

-P.S-

1. 11월 8일 저녁의 서울시내 교통은 정말 -_-;;;;

2. 경희대학교 캠퍼스 처음 가봤는데 정말 멋지더군요. 건물도 그렇고 단풍 든 것도 그렇고~ 굿굿

11/06/2008

재밌는 동영상 3편

졸린 오후시간에 잠시 졸음도 쫒을 겸 보시기 바랍니다.

회사동료가 보내준건데 재밌네요 ㅋ

1. 맥주상자 고양이

관람포인트 : 슬라이딩 할때의 고양이 뒷다리

[Flash] http://serviceapi.nmv.naver.com/flash/NFPlayer.swf?vid=91D0056AD8242E40028F539917A6A68D3809&outKey=V12525ae0d413d470542bfc781934eba8c43a7819cfc3d9dcdf7efc781934eba8c43a




2. 장기하밴드 / 마이클잭슨 싱크로 영상

싱크로율 100%? ㄷㄷㄷ

[Flash] http://serviceapi.nmv.naver.com/flash/NFPlayer.swf?vid=8A1FBC3633FC725BA6AB1AEC7FC67DCED3E8&outKey=V1270328b408a7b622ab0a0e0bcbc8e5cba3e3003d5e2a7860b54a0e0bcbc8e5cba3e





3. 남자들은 다 똑같아 - W&Whale 의 Whale 양

Whale양 귀엽네요 -_- 목소리 완전 김윤안데 ㅋ


 


VIPS 분당 정자점 영업 종료

자주 이용하다가 몇권의 책을 읽은 후 육고기 자제를 위해서 가~끔 셀러드바만 이용하곤 했던 VIPS 분당 정자점이 영업을 종료한다고 합니다.

사실 정자점은 위치상으로도 대로변에서 그다지 잘 보이지도 않고(처음 차를 몰고 찾아갈 때 GPS의 도움을 받고도 10분쯤 헤맸던 기억이...) 주차 공간 자체도 협소해서 불편한 점이 많았는데 ( 큰 차량들은 지하주차장 코너를 한번에 못돌고 두번 나눠서 돌더군요 ) 그래서인지 아니면 전반적인 불황 때문인지 아무튼간에 영업을 종료한다고 하는군요.


개인적으로는 아웃백이나 TGIF 와는 달리 셀러드뷔페가 있어서 그나마 자주 애용했었는데 분당 서현점이 문을 닫은 데 이어 정자점까지 문을 닫아버려서 좀 슬프군요.

아래는 제 이메일로 전송된 영업 종료에 관한 안내 내용입니다.

사용자 삽입 이미지


11/05/2008

FeedBurner 가입 및 RSS 구독 주소 안내

월 10만원씩을 내고 서버호스팅을 하고 있음에도 불구하고 10만원어치 서버 활용을 못한다는 개인적인 판단이 있어(기껏해어 SVN/Hudson/Tomcat/apache 돌아가는 정도) 향후 tistory 로 블로그를 이전하고 서버호스팅을 멈출까 고민중입니다.

옮기게 되면 1차 고려대상인 티스토리의 경우 피드 통계를 제공해 주지 않는 반면 텍스트큐브에는 제공이 되기 때문에 사실 RSS 구독자 수를 알기 위해 피드버너를 굳이 달 필요가 없지만 향후의 만약을 대비해서 주소는 만들어 두었습니다.

혹시라도 피드버너의 RSS 주소를 이용하실 분들은 http://feeds.feedburner.com/Potatosoftcom 을 쓰시면 됩니다.


피드버너로 RSS 주소를 모두 바꾸어버리게 되면 기존 데이터를 피드버너가 캐싱해서 보여주는 경우 구독자 통계상의 구독자 숫자가 줄어들 가능성이 아주 농후하기 때문에 가입자 수를 중요한 관리요소의 하나로 보는 분들이라면 가급적 피드버너를 이용하지 않는 게 좋지 않을까 싶습니다.

반대로 티스토리가 아닌 웹호스팅이나 서버호스팅을 이용하고 있는데 구독자가 너무 많아 네트워크 트래픽 추가요금을 내야 할 상황이라면 차라리 피드버너를 이용하는 것이 트래픽을 줄일 수 있는 좋은 방법이 될 것 같습니다.

image

방금 텍스트큐브의 피드 구독순위를 살펴본 것인데 10번째에 보이는 FeedBurner 피드 로봇이 보이는군요.

한RSS의 경우 http://www.potatosoft.com/tt/rss 로 구독하는 분이 6분이고 http://potatosoft.com/tt/rss 로 구독하는 분이 2분인데 -_-;; 이거 좀 합쳐서 보여줄 순 없나요 ㅋ

기존 rss 쪽으로 들어오는 분들도 슬쩍 피드버너로 넘겨비리기 위해서 아파치 .htaccess 도 조작해두고 -_-;;;

RewriteRule ^rss$ http://feeds.feedburner.com/Potatosoftcom [E=SURI:1,L]
RewriteRule ^rss/$ http://feeds.feedburner.com/Potatosoftcom

테스트 OK 한 다음 만족하고 있다가 막상 또 구독자가 수백명 수천명인 분들이 널려 있는 상황에서 구독자 수를 노출시키는 게 또 무슨 의미가 있을까 하는 생각이 듭니다. 구독자 수가 많은 경우에는 '여기 유명하니까 너도 구독해' 라는 메세지를 전달할 수 있겠습니다만... -_- 뭐 그래도 일단 가용 트래픽의 1/5 도 못쓰고 있는 상황이니만큼 일단은 피드버너는 사용하지 말자라고 글쓰는 도중 결심을 하고 이 글 포스팅을 마치는대로 ReWriteRule 도 지우고 피드버너 주소로 바꾸었던 것들도 죄다 원복시켜야겠습니다.


결론 : 피드버너 주소 아직 쓰지마세요 -_-;;;

11/04/2008

FMS 에서 비디오 콘텐츠를 streaming capture로부터 지키기

출처 : http://kb.adobe.com/selfservice/viewContent.do?externalId=kb405456&sliceId=2

적지 않은 사람들이 동영상 캡쳐 프로그램 또는 swf 역컴파일을 통해 알아낸 URL로 비디오 콘텐츠를 떠가는데, FMS3 와 Flash Player 9,0,115 이상을 이용해서 이를 막을 수가 있습니다.

(라고 일단 주장하고 있습니다.)

adobe 에서 이야기하는 방법은 3가지인데 아래와 같습니다.

  1. Enable SWF Verification.
  2. Use RTMPE and deny non-RTMPE connections.
  3. Encrypt video assets with Adobe Flash Media Rights Management Server (FMRMS) (limited to Adobe AIR solutions)

이 중 3번 항목은 별도의 솔루션을 구매해야 하기 때문에 패스하고 1번과 2번을 설정하는 법을 살펴보면


1. Enable SWF Verification

FMS3 서버가 배포되는 swf 의 해쉬값을 갖고 있다가 접속이 발생하면 이를 비교해서 이상한 값을 보내는 클라이언트가 있으면 접속을 끊어버린다고 하는군요.

앞에서 이야기한 바와 같이 Flash Player 9,0,115 이상에서만 이 기능이 가능하고 FMS3 서버 설정을 이용해서 특정 버전 이상의 클라이언트만 접속할 수 있도록 설정할 수도 있으니 이건 큰 문제가 안되겠네요.

설정하는 방법은 무척 간단한데 설치된 FMS3 의 conf 디렉토리 밑을 뒤져보면 Application.xml 이라는 파일을 열어서 <SWFVerification> 항목을 true 로 바꿔주면 됩니다.

그리고 SWF Verification 에 사용할 swf 파일이 있는 경로를 <SWFFolder>에 지정해 주면 되는데, 이걸 지정하지 않으면 해당 application 하단의 SWFs 디렉토리에서 swf 파일을 찾으니 디렉토리를 생성해서 swf를 넣어두어도 됩니다. 그리고 FinalHashTimeout 항목을 적절히 세팅해주면 끝.

말이 복잡한데

<Application>
    ..... 다른 설정들 어쩌구저쩌구...
    <SWFVerification enabled="true">
    <SWFFolder></SWFFolder>
    <FinalHashTimeout>20</FinalHashTimeout>
    </SWFVerification>
    ..... 다른 설정들 어쩌구저쩌구...
</Application>

이렇게 해면 된다는 이야깁니다.


2. Use RTMPE and deny non-RTMPE connections.

이 기능은 SSAS(Server-Side Action Script) 와 플러그인을 이용하는 관계로 FMS3 서버중 FMSS(Flash Media Streaming Server)는 사용할 수 없고 Flash Media Interactive Server 에서만 사용할 수 있습니다.

SSAS를 이용하거나 또는 플러그인을 만들어서 RTMPE만 접속이 가능하도록 할 수 있는데요, 아무래도 SSAS가 써먹기는 편리합니다.

다음의 코드를 application.onConnnect 핸들러에 추가한 다음 FMS 를 리스타트시키면 적용 끝.

application.onConnect = function(clientObj) {
    //only allow rtmpe and rtmpte connections
    if(clientObj.protocol == "rtmpe") || (clientObj.protocol == "rtmpte"){
        return true;
    }
    return false
}


플러그인 형태로 만드실 분은 포스팅 처음에 알려드린 URL로 가셔서 adaptors.zip 을 받아보면 cpp 로 된 샘플파일이 있으니 참고해서 만드시면 되겠습니다.

11/03/2008

디지털 혼(digital horn) 장착 차량에서 자동으로 소리가 나는 현상

오늘 새벽 5시쯤에 경비실 ADT 캡스 직원으로부터 인터폰 연락이 왔는데, 제 차의 크락션 소리가 계속 난다고 해서 나가봤더니 차에서 계속 빠~~~~~ㅇ 하는 크락션 소리가 나고 있더군요.

그나마 지하주차장에 주차해 놨던 터라 민폐는 덜 끼쳤습니다만, 엘리베이터 타고 1층에 내려서 밖으로 나갔더니 지하주차장에서부터 크락션 소리가 좀 들리더군요. 신경 예민한 분이라면 들었을지도 모르겠습니다. ㅈㅅㅈㅅ

차량에 기본으로 설치되어 나오는 혼과 달리 디지털 혼(크락션)의 경우에는 습기 또는 온도 등에 민감한 편이라 고장나게 되면 운행 도중 또는 주차해 놓은 상태에서도 알아서 소리가 나서 사람을 당황스럽게 할 때가 있습니다.

이런 상태가 되면 십중팔구 디지털 혼 고장인데 A/S를 받거나 새로 구입을 하셔야 하고, 드물게 배선쪽 문제 등으로 인해서도 동일한 현상이 발생할 수도 있다고 하네요.

이럴때는 급한대로 디지털 혼에 전원을 공급하는 잭을 뽑으면 되지만 만약 잭의 위치가 자동차 운전석쪽 휀다 깊숙히 고정되어 있어서 손이 닫지 않거나 하면 + 선을 탈거해도 됩니다. (혹시 배선 문제일수도 있으니 자르진 마시구요 ^_^;; ) 그런 후 가까운 차량정비소로 가셔서 점검 받으시면 되겠습니다.

제 차에도 전자혼이 중고로 구입할 때부터 설치가 되어있길래 그냥 썼었는데, 고장난김에 떼어버리고 다시 원래의 순정으로 돌아가야겠네요.

이전에 탔던 라세티나 아내가 인천 출퇴근할때 몰던 유로엑센트 1.3은 구입해서 파는 날까지 엔진오일 같은 소모품 바꾼거 말고는 빼고는 손 거의 안대고 잘 탔었는데, 이놈은 뭘 이리 많이 바꾸는지 -_-;;

10/30/2008

native2ascii가 싫다면 Eclipse 용 Properties Editor 플러그인을 사용해보세요

Java 를 기반으로 구현된 모든 코드에서 국제화 등을 이유로 리소스 파일 작성을 할때에, 문자열 등의 리소스 파일은 ascii 값의 ISO-8859-1 인코딩으로 작성해 주어야 합니다.

프로퍼티 파일들을 UTF-8 로 읽어주도록 변경되면 좋겠지만 어쨌든 현재는 그렇습니다.

이 때문에 jdk 에는 native2ascii 라는 실행파일이 들어 있는데( $JAVA_HOME/bin 에 들어있음 ) 이놈을 이용해서 프로퍼티 파일을 파라메터로 건내주거나 파일 실행 후 문자열을 입력해보면 Latin-1 인코딩의 ascii 값을 알 수 있습니다.

ANT에서도 native2ascii task 를 지원하기 때문에 일반적으로 컴파일 및 빌드 과정과는 별개로 native2ascii 를 이용해서 리소스 파일들을 바꾸어 주는 작업을 추가하게 됩니다.

Quick and Dirty Hack for UTF-8 Support in ResourceBundle 라는 포스팅을 보면 PropertyResourceBundle 의 wrapper class 구현이 있는데 이런 걸 이용하는 것이 편하긴 합니다. 다만 해당 포스팅의 아래쪽 comment 를 보면 3가지 정도의 bug case 에 대한 지적이 있는데 특히 Brian 이 지적한 내용은 반드시 적용해서 사용하셔야겠습니다.

Very cool however I found a bug in your impl. when asking for a resource bundle with a parent. This is how I fixed it. Notice the call to getString which makes sure to recursively go over the parent bundles. Also checking for null.

protected Object handleGetObject(String key) {
    String value = (String)bundle.getString(key);
    if (value==null) return null;
    try {
        return new String (value.getBytes("ISO-8859-1"),"UTF-8") ;
    } catch (UnsupportedEncodingException e) {
    // Shouldn't fail - but should we still add logging message?
    return null;
    }
}

And another small thing: not all ISO-8859-1 chars are a subset of UTF-8. The (C) sign seems to clash. If I put a \u00a9 in a UTF-8 file, it fails. But if I put the actual sign, it works. For some reason it is encoded as two bytes even though it is below 192 decimal.

Not a big deal though. Still very cool solution.

첫번째 지적한 경우에 해당하는 문자는 저작권 표시와 유로화 표시, 그리고 무한대 표시 등이 있는 것 같네요.


이런 프로그래밍적인 것 말고 이클립스 플러그인 형태의 '편집기'를 원하는 분이라면 Properties Editor 라는 것을 추천합니다.

이클립스의 Help -> software updates -> add site 를 선택하고 http://propedit.sourceforge.jp/eclipse/updates/ 를 추가해서 업데이트를 하면 됩니다.

설치를 하고 나서 파일을 생성할때 확장자를 .properties 로 설정하면 해당 파일을 편집할때 자동으로 이 Properties Editor 를 이용해서 편집이 되고 properties 파일의 아이콘도 에디터 설치 후에는 아래와 같이 녹색 P 모양으로 바뀌게 됩니다.

image

물론 파일을 선택하고 팝업메뉴를 띄워서 Open with... 로 파일을 열 수도 있습니다.

package.properties 파일을 열어보면 이렇게 이쁘게 한글로 표시가 되어 있습니다...만...

image

Open with 를 선택하고 일반 텍스트 편집기로 열어보면

image

native2ascii 를 돌린 것처럼 이쁘게 변환되어 있습니다. 전체 프로젝트의 인코딩이 UTF-8로 지정되어 있어도 해당 .properties 파일은 ISO-8859-1 로 맞춰지기 때문에 별도로 파일 인코딩을 바꾸어주지 않아도 되니 편리하군요.

10/28/2008

그녀가 돌아왔다! 박정현의 디지털 싱글 'no break'

간만에 네이버 뮤직 결재하고 이것저것 들어보던 중 박정현이 뭔가 낼 때가 되었는데 조용하네 싶어 '박정현' 이란 이름을 검색에 넣어보았더니 no break 라는 곡이 뜨네요.

그것도 무려 며칠전에 나온 따끈따끈한 디지털 싱글!!

박정현과 크라운 J 가 함께 불렀군요. ( 크라운 J 는 뒤쪽에 간간이 비치는 랩이 전부라서 함께 불렀다고 하긴 좀 -_- )

뮤직비디오는 사귀는 남녀의 훈훈한 스틸컷 사진 위주로 만들어져 있어서 뮤비 자체의 감동 같은건 크지 않고  좀 저렴하게 만들었다는 표시는 팍팍 납니다.

디지털 싱글이었던 '위태로운 이야기' 와 비교해보자면 퀄리티 뿐만 아니라 내용 자체도 참 극과 극인듯 하고, 개인적으로 좋아하는 '미아'  라든지 '달' 과 같은 수준은 아니더라도 비슷한 느낌의 사랑노래인 3집의 'You mean everything to me' 정도 수준이라도 만들어 줬으면 좋았을 걸 그랬습니다...만...

뭐 어떻습니까? 그녀의 팬인 저로서는 간만에 그녀의 새 노래를 들어볼 수 있는걸로 충분히 만족합니다. :)

디지털 싱글의 2번트랙은 'Without you' 라는 노래인데, 'no break' 의 pop 버전이라고 적혀있습니다. 기본적으로는 동일한 곡입니다.

-P.S-

원래도 그랬지만 점점 주제없는 잡동사니 블로그로 흘러가는군요.

최근에는 뮤비 퍼오기와 날로 먹기로 일관하는 듯 싶은데... 반성 좀 하고 책 읽고 리뷰도 좀 올리고 해봐야겠습니다.

10/26/2008

SK브로드밴드의 CF송, 김윤아?

아래는 요즘 한창 대대적인 광고를 하고 있는 SK브로드밴드(하나로텔레콤의 새 이름)의 CF입니다. 정말이지 TV를 보고 있으면 약간 과장해서 10분에 한번씩은 보는 것 같습니다.

혹시라도 자우림의 김윤아를 좋아하시는 분이라면 이 CF를 듣자마자 어? 김윤아네? 라고 생각하셨을지도 모르겠습니다. 그리고 엄청난 반가움을 느꼈겠지요.

제일 처음 이 CF를 보았을때는 정말이지 1초만에 어? 김윤아네? 라고 생각했고 얼마전까지도 그렇게 믿어왔습니다만... 목소리가 살~짝 탁하다는 느낌이 있었습니다.

사실 확인도 할겸 'SK브로드밴드 CF' 라고 검색을 해보니 CF삽입곡은 W&Whale 라는 그룹의 R.P.G Shine 이라는 곡이군요.

아래는 제가 가장 좋아하는 자우림의 곡 중 하나인 '팬이야' 입니다. 들어보시면 알겠지만 김윤아의 목소리가 좀 더 하이톤이고 색깔이 강하긴 하지만 '언뜻' 들어보면 비슷한거 같기도 하고 그렇습니다. ( 제 귀가 좀 저질이라 -_-;;; )


이건 SK브로드밴드 CF의 원곡인 W&Whale 의 R.P.G Shine 입니다.


보컬인 박은경양의 가창력도 무척 마음에 들고 노래도 경쾌한데다가, 김윤아와 무척이나 비슷한 목소리 색깔을 갖고 있다는 자체만으로도 저한테는 호감이 팍팍 오는군요.(같은 이유로 인해서 호감이 가지 않는 분들도 분명히 계실지도 모르겠습니다 )

좀 더 검색을 해보니 W&Whale은 이미 영화 '뜨거운 것이 좋아' 의 OST 와 드라마 '크크섬의 비밀' OST에 참여한 적도 있었군요. (http://search.daum.net/search?w=tot&norealcnt=1&q=웨일)

'뜨거운 것이 좋아' 의 예고편을 보면 (http://mv.daum.net/player/mv_player.asp?no=4090&k=h&index=n) 배경음악으로 R.P.G(Rocket Punch Generation)가 흘러나오고, '크크섬의 비밀' OST 중 '달빛처럼' 이라는 곡 역시 이들의 작품인듯 합니다.

W&Whale 이라는 그룹명은 기존의 그룹 W에 Whale (  박은경 ) 이 참여해서 W&Whale 이라고 부르는 것 같고 현재 "W & Whale HARDBOILED" 라는 앨범을 발매한 상태입니다. ( 오늘 박기영의 새 앨범과 함께 주문 고고싱~!! )

-P.S-
하지만 아무리 들어봐도 R.P.G Shine M/V 의 그것과 SK브로드밴드의 목소리는 살짝 다른게 느껴지는데... 혹시라도 김윤아의 목소리와 비슷하게 약간 샘플링하거나 그런 비슷한 효과를 노렸던 건 아닐까 하는 혼자만의 상상을 해 봅니다. ㅋㅋ
아무리 다시 들어봐도 SK브로드밴드 CF 송은 김윤아 목소리 같다는 -_-;;

10/23/2008

대기업에서 중국산 다대기(다진 양념)을 고추장에 사용

출처는 http://news.naver.com/main/read.nhn?mode=LS2D&mid=sec&sid1=102&sid2=255&oid=001&aid=0002331212 입니다.


아래는 기사 내용 중 일부

중국에서 수입한 다진 양념(속칭 다대기)이 국내 식품 대기업의 고추장 제품 원료로 사용되고 있다고 국회 보건복지가족위원회 소속 전혜숙(민주당) 의원이 24일 밝혔다.

전 의원이 식품의약품안전청으로부터 제출받은 국정감사 자료에 따르면 중국에서 수입한 다진 양념 대부분이 메이저 고추장 제조업체인 대상㈜과 CJ제일제당 등이 제조하는 고추장 원료로 사용됐다.

그러나 이들 기업은 고추장 제품 포장에 고춧가루 비율이 40% 미만인 `중국산 다진 양념'을 `중국산 고춧가루'로 속여 표기한 것으로 나타났다.

전 의원은 "고춧가루 배합 비율이 40% 미만이면 관세가 45%만 적용되지만 순수한 고춧가루는 270%의 관세가 적용되는 만큼 대기업들이 높은 관세를 피하려고 편법으로 중국산 다진 양념을 수입해 고추장 원료로 사용하고 있다"라고 말했다.

대상 또는 CJ제일제당이라고 하니 잘 모르실 수도 있는데, 그럼 청정원과 해찬들이라는 브랜드는 익숙하신가요?

청정원은 대상의 브랜드이고, 해찬들은 CJ제일제당의 브랜드입니다.

얼마전까지 장동건씨가 '정원아~' 하면서 수많은 여성들을 설레게 했던, 최근에는 정우성씨가 CF 모델로 발탁된 그 청정원인데요.

절묘하게 장동건씨가 CF를 잘 하차했다는 생각과 더불어 -_- 정우성씨는 이미지에 좀 타격이 있겠네요.

다대기 기사를 보고 나서 이 CF를 보니 왜 '괜찮아요?' 라고 하는지 이해할 수 있을 것 같기도 합니다.


"괜찮아요? 괜찮아요? (중국산 다대기 넣었는데) 괜찮아요?" ...


아래는 해찬들의 태양초 고추장 CF인데요(저희집 태양초 고추장 많이 먹었는데...), 아무래도 "태양을 가득히" 가 아니라 "다대기를 가득히" 로 바꿔야 할 것 같습니다.


이제 믿을건 바른 먹거리 풀무원 뿐인가 -_-;;

10/20/2008

QR Code(2차원 바코드) 생성하고 읽어보기

회사일로 2차원 바코드에 대해서 이것저것 점검해 보다가 마침 블로그 포스팅도 뜸하고 해서 정리도 할 겸 글을 써봅니다.

QR Code 에 대한 자세한 내용은 http://en.wikipedia.org/wiki/QR_Code 를 참고하시고, QR Code 란 흔히 말하는 2차원 바코드입니다.

일본에서는 여기저기 잘 활용되고 있고, 구글에서도 AdSense 에 적용해서 신문광고에 써먹는 모양입니다만 우리나라에서는 아직까지는 '말아먹은' 상태입니다.

JISC- Japanese Industrial Standards Committee 에 가셔서 JIS-X-0510 의 spec을 찾아볼 수도 있습니다.


아무튼 이 QR Code 는

Numeric Only : Max 7,089 characters
Alphanumeric : Max 4,296 characters
Binary(8bit) : Max 2,953 characters

만큼의 데이터를 담을 수 있어 일반적인 바코드보다 데이터 저장 용량이 크고 왜곡에 대해서도 강한 특징이 있습니다.


우선 서버에서 1) QR Code를 생성할 수 있어야 하고,  2) 사용자가 업로드한 QR Code 이미지로부터 데이터를 추출할 수 있어야 합니다.

About 2D Code QR Code.com 이 링크를 통해 들어가면 QR 저작툴 두개를 다운로드 받을 수 있는데 Trial 이니 Pro 니 하는걸로 봐서 돈주고 사야하는듯 하고 라이브러리가 아닌 사용자용 제품인 관계로 패스~

뒤지다 보니 http://qrcode.kaywa.com/ 라는 사이트에서 입력값으로 QR Code 이미지를 출력해줍니다. 가입절치 등도 없고 단순히  QR Code 의 이미지 사이즈를 선택하고(S/M/L/XL) URL/Text/Phone Number/SMS 중 하나를 선택한 다음 Generate! 를 누르면 QR Code 이미지가 생성됩니다.

아래의 QR Code 는

RSS URL : http://www.potatosoft.com/tt/rss

라는 문구를 입력하여 만든 QR Code입니다.

qrcode

permlink 를 제공해 주길래 봤더니

http://qrcode.kaywa.com/img.php?s=8&d=Hello%20World

이런 식이네요. 앞으로 QR code 만들때 유용하게 써먹을 수 있을 것 같습니다. ( 그나저나 iPhone 은 언제나와 ㅜ.ㅜ )

몇몇 국내 보급된 휴대폰이 이 QR Code 를 읽을 수 있는 듯 하지만 국내 보급률이 그렇게 높지 않아서 아마 갖고 계신 분이 거의 없을테고, 혹시라도 iPhone 을 쓰시는 분이라면 iMatrix 같은 것들이 나와있기 때문에 곧바로 메세지를 읽어보실 수 있겠군요. ( iPod Touch 는 카메라가 없어서 /애도 )


어쨌든 이미지를 만들었기 때문에 이걸 읽어봐야 할텐데... -_-;; NTT Docomo 에서 QR Factory (http://www.nttdocomo.co.jp/english/service/imode/make/content/barcode/tool/) 라는 QR Code 저작툴을 제공합니다만, 영어/일본어 윈도우만 지원을 하기 때문에 한국어 윈도우를 쓰신다면 설치가 불가능합니다. 그리고 역시 클라이언트 용도이기 때문에 패스~

image

.NET 용의 라이브러리를 찾을 수 있었지만 회사에서는 주로 C/Java 를 쓰는 관계로 계속 검색을 하다 보니 http://qrcode.sourceforge.jp/ 이런게 있군요.

"Hello World" 라는 내용으로 QR Code 를 만들어 이미지를 저장하고

qrcode

다운로드받은 java 용 qrcode 예제 중 CUIExample 을 돌려서 읽어봤습니다.

[freesoft@localhost qrcode]$ java -classpath classes example.QRCodeDecoderCUIExample ./qrcode.png
Hello World
[Success] ./qrcode.png
Processed 1 images in 283ms (283 images/sec)
OK: 1 NG: 0

뭐 나름대로 괜찮군요. 하지만 이 오픈소스 라이브러리는 좀 길거나 복잡한 내용이 들어가거나, "안녕하세요? 제 RSS 주소는 http://www.potatosoft.com/tt/rss 입니다" 와 같은 식으로 입력해서 만든 QR Code 는 읽어들이지 못하는데.. 일단 생성시에 오류는 발생하지 않으니 Reader쪽에 문제가 있다고 보는게 맞을 것 같네요.

구글에서 AdSense 에 QR Code 를 적용하니 어쩌니 하는 기사를 봤던 것 같아서 뒤져보니 Google에서 Chart API 의 한 형태로 QR Code를 만들 수 있는 기능을 제공해줍니다.  럭키~

기존의 바코드와 QRCode  를 모두 읽을 수 있는 java 오픈소스 ZXing 도 제공해주는군요. (http://code.google.com/p/zxing/)

... 모든 걸 원점에서 다시 시작해봅니다.


Google Chart API 로 "My RSS URL is http://www.potatosoft.com/tt/rss" 를 QR Code 로 만들어 봤습니다.

입력은

http://chart.apis.google.com/chart?cht=qr&chl=My%20RSS%20URL%20is%20http://www.potatosoft.com/tt/rss&chld=H|2&chs=144

이런식으로 하면 되구요 EC Level 을 H 로, 차트 사이즈는 144pixel 로 설정했습니다.

보이기는 이런 식으로 보이게 되지요.

ZXing 은 android / j2se / j2me 등 다양한 환경의 코드를 제공해주는데 우선 core 라는 공통 라이브러리를 컴파일해야 하고, 이를 위해서는 WTK를 설치해야 합니다. ( 공통이면 모바일이든 웹이든 상관없이 돌아가 줘야 하는거 같은데 WTK에 의존한다는게 좀 -_-;; )

qrcode.sourceforge.jp 는 간단한 QR Code 만 가능했지만, 구글이 제공하는 chart api 로 QR Code 를 만들었으니 당연히 구글에서 제공하는 것으로 디코딩도 되리라는 믿음으로 WTK 를 설치하고 Eclipse 에서 core 를 컴파일 한 다음(build.xml 에 WTK-home 경로 지정), j2se 쪽 gui runner 를 실행시키기 위해 core.jar 를 library build 에 추가하고 실행해봅니다.

Google Chart API로 만든 QRCode 이미지를 파일로 저장한 다음 ZXing 에서 해당 파일을 읽어보니

image

깔끔하게 디코딩이 자~ㄹ 됩니다. QR Code 만들기 위해 상용 패키지 사서 쓰지 않아도 되겠군요. 우왕국~

깔끔한 이미지는 잘 읽는데, 그럼 실제 사용자들이 찍어 올리는 QR Code는 어느정도 인식을 할지 궁금해져서 테스트를 해봤습니다.

QR Code가 가장 널리 쓰이는 곳이 아무래도 일본이다 보니 이미지 대부분이 일본쪽 것들이군요.

image

실패 -_-;; 이런 건 인식 못하는군요. 옆에 이미지를 잘라내고 깔끔하게 만들어서 먹여줘봤습니다.

image

역시 실패 -_-;


웹검색을 하다 보니 이런 이미지도 있더군요. 그냥 해보면 당연히 에러가 나겠지 라는 새각으로 가운데 부분만 잘라서 인식시켜 보았습니다.

image

우왕 성공~!!  어떻게든 QR Code 의 흰색과 검은색만이 보이도록 사진을 찍어야 하는군요.

... 라고 생각하다가 이미지 패턴인식 형태이기 때문에 색깔이 문제가 아닐수도 있겠다 싶어 원본 이미지를 그대로 인식시켜 보았습니다.

image

우왕 -_-;; 이런것도 인식되는군요.


간단한 테스트였지만 이걸 만약에 사진을 찍어서 MMS로 전송한 다음 뭔가의 내용을 서버에서 처리하여 다시 사용자에게 SMS로 보내준다든지 하면 인식률 때문에 사용자들이 서비스를 쓰지 않을 것 같고, 사용자의 단말기에 QR Code 리더가 붙어있어야만 서비스가 활성화 될 가능성이 높아 보입니다. 그것도 별도의 리더를 붙인다든가 하는 게 아니라 휴대폰 카메라로 찍으면 바로 인식되는 형태의 built-in 으로 제공되어야 할 것 같군요.

Android 를 적용한 구글폰이나 iPhone 을 언제까지나 기다릴 순 없고.. -_-;;

QR Code 의 주요 활용 방안 중 하나라고 한다면 리더기로 해당 QR Code를 읽으면 곧바로 단말기가 무선인터넷 접속을 해서 관련 정보를 읽는 등의 용도로 쓰일 수 있는데(쿠폰을 바로 받는다든지), 국내의 이통사 3사에서는 아직까지 무선인터넷 요금을 내리실 생각이 별로 없기 때문에 향후로도 QR Code 가 활성화될 가능성은 거~의 없다고 봐도 되겠습니다.

국내 이통사에서도 KTF의 핫코드, SKT의 네이트코드, LGT의 이지코드 ( 그나마 KTF가 이름 짓는데 좀 창의적이고, SKT는 주로 NATE OOO, LGT는 이지OOO 이런 식 ) 를 이미 시범서비스중인 것으로 알고 있습니다만 이런저런 문제로 상용화는 이루어지지 않고 있다고 합니다. ( http://www.dt.co.kr/contents.html?article_no=2008081402012060745001 )

뭐 그 이유는 위에서 이야기한대로 QR Code를 읽을 수 있는 단말기의 부재와 더불어 요금문제가 가장 크게 다가올 것 같군요.


그나마 현재로써 가장 가능성이 있는건 LGT의 OZ 서비스일텐데... QR Code 무제한 요금제 같은거 도입하고 단말기에 리더 집어넣어서 활성화 시켜 볼 생각은 없으신가요?

특히 최근의 한우/멜라민 득 각종 식품파동과 관련해서 대형마트와 공조해서 차별화된 서비스를 내어놓아도 좋을 듯 합니다만...

이건 뭐 관련 서비스를 만들어봐야 리더기 보급이 되어있지 않으니 말짱 헛일이군요 쯥~

요즘 포스팅을 모두 medium쪽으로 하고 있습니다

안녕하세요? 어쩌다보니 그냥 한번 써보기로 한 medium.com 에다가 죄다 최근 포스팅을 하고 있습니다. 현재 도메인인 potatosoft.com 은 제가 대학때인가 사회 취업한지 얼마 안됐을때부터 유지해 온 도메인이고, 블로그 시스템은 그...