Activity라고 하니 안드로이드가 생각나네요.
인스턴스의 성능에 따라서 가격이 다르게 매겨집니다. Amazon EC2 서버 241시간에 $20.49인데 반해서 SUSE Linux는 9시간 $3.96, 8시간 2.16으로 정산되는군요.
ROOT권한을 갖고 서버를 다룰 수 있기 때문에 테스트용으로는 괜찮은 선택이라 생각됩니다.

$27는 학습을 위한 비용입니다.


Amazon과 비슷한 서비스로 제한적으로 무료인 구글 앱 엔진도 있습니다.

구글이 맘만 먹으면 세계정복은 시간문제겠지만, 그 전에 제가 세상을 뜨겠죠.

이곳 저곳에 연락처가 널린 채로 있으면 괜히 복잡해질까봐 기존 것 csv로 일단 백업하고 모든 주소록 싹 지웠습니다.

그리고 구글 저장소를 이용하기 시작하려고 합니다.
아이폰, 안드로이드폰, 맥, 아이팟터치, 아이패드 등에서 고루 사용할 수 있겠죠.

아웃룩보다 Gmail이 편하게 느껴지는 것은 디바이스를 오가면서 동일한 정보를 볼 수 있기 때문이죠. 애증의 구글이지만 가장 범용성이 뛰어난 것은 인정합니다.

 
맥의 주소록 메뉴에서 주소록 > 환경설정... > 계정 탭에 구글과 동기화 항목이 있습니다.

구글의 주소록 관리페이지는 gmail에 있는데 꼭꼭 숨어있습니다.
아이폰이 국내에 들어온 이후로 흥미진진한 기싸움이 피부에 와닿습니다. 만약 아이폰이 들어오지 않았다면 국내에서 큰 이슈가 되지 않았겠죠. 아이팟터치는 국내 40만대 넘게 팔렸지만 인터넷 서핑하는 아이팟터치는 만여대 정도 밖에 되지 않았으니까 말이죠.

아래는 아이폰 출시 전후의 애드몹 통계입니다.
from: http://metrics.admob.com/2009/12/november-2009-mobile-metrics-report/

여튼 아이폰을 통해서 웹서핑을 해보신 분들의 공통적인 소감이 플래시-free한 인터넷 세상이 "뭔가 좀 아쉽다"일 것입니다.

iPad 나오면서 또 한 번 크게 이슈가 됩니다.

어도비의 영업력이 아닌가 생각됩니다. 어도비의 기술이사님께서 또 성명을 발표했군요.
http://blogs.adobe.com/conversations/2010/02/open_access_to_content_and_app.html

개인적으로는 이 구절 보면서 기자님들이 얘기하는 "국민의 알 권리"가 스쳐지나갑니다.
html5는 천천히 생각하고 싶습니다.

여튼, 화이팅입니다. "아.무.나. 이겨라! 아.무.나. 이.겨.라!"


sponsored post : [Adobe RIA 공식 사이트(www.adoberia.co.kr)] 
HTC dev phone G1 인증하기
SIM카드가 없는 경우 안드로이드폰을 사용할 수 있도록 하는 명령입니다. adb명령은 안드로이드 SDK를 설치하면 사용할 수 있습니다. usb 케이블을 연결한 뒤에 다음과 같이 adb shell을 통해서 구글 인증을 통과합니다. adb devices 명령을 통해서 디바이스 목록을 확인할 수 있습니다.


$ adb shell
$ su
$ cd /data/data/com.android.providers.settings/databases
$ sqlite3 settings.db
 INSERT INTO system (name, value) VALUES ('device_provisioned', 1);
 .exit
$ reboot


$ adb shell
$ am start -a android.intent.action.MAIN -n com.android.settings/.Settings

from: http://android-tricks.blogspot.com/2009/01/using-adp1-without-sim-card.html


- 잘 나가는 IT기업들의 공통점은 개발자 천국입니다.

국내 IT기업 중에서 개발자들의 복지가 제일 잘 되는 업종은 포털일 것입니다. 씨받이 개발자가 주류인 SI(라고 쓰고 sibal이라고 읽는다) 업종에서는 개발자란 그래픽카드나 램 처럼 부품 취급을 받기 일수입니다. 물론 일반화하기에는 오류가 있지만 대략 직업적인 만족도를 보면 월급이 그리 많지는 않아도 포털에서 일하는 개발자들의 만족도가 SI나 솔루션 개발자에 비해서 상대적으로 높고, 여유도 있어 보입니다.

국내 개발자들과 외국 개발자들의 직업적인 자부심과 만족도를 비교한다면 더 커질 수 밖에 없지요. 많은 블로그나 홍보물을 통해서 접해보았겠지만 구글, Microsoft 등의 개발자 복지는 거의 극한입니다. 마치 심하게 보면 매트릭스의 캡슐 안에 개발자를 집어넣어두고 창의력을 뽑아먹는다고 비약할 수도 있겠죠. 네오 같은 버그야 자기 팔자를 깨닫겠지만, 99.9999% 이상의 캡슐안 사람들은 인지하지 못하고 사이버세상에서 행복하게 살면서 자신의 전기에너지를 컴퓨터에게 공급하겠지요.

- 구글의 독보적인 정보 수집과 검색능력을 이용하면 개발이 외롭지 않습니다.
논문에서 훌륭한 것일 수록 많이 인용된다는 점에 착안해 많이 링크로 걸리는 페이지의 가치는 높다고 평가한 구글의 PageRank는 지극히 상식적인 이론이지만 그것으로 검색시장의 판을 바꾸리라고는 아무도 예상하지 못했을 것입니다. 상식을 깬 도전을 많이 하는 기업도 구글입니다. 웹이라는 열악한 환경에서 엑셀을 만들고 있고, 워드도 만들고 있습니다. 그 도전과 진화는 현재진행형입니다. 처음 나온 베타 제품을 보고 "이건 뭐 재미도 없고, 감동도 없다"고 평가절하하지만 3개월 6개월마다 아니 알게 모르게 추가되는 기능들을 보면 석박사들이 자바스크립트를 만지면 다른 것인가라고 반문하게 됩니다. 물론 그 덕분에 웹 애플리케이션의 복잡도가 많이 증가했지만, 구글이 가속하지 않았더라도 웹 기술은 계속 진화했었겠지요. 여튼 그들이 일정부분 공개한 기술로 인해 그리고 가히 빅브라더라고 할 수 있는 검색 서비스 덕분에 개발자들은 10년전보다 삽질을 덜 할 수 밖에 없습니다.
요즘은 이기적인 마음에서인지 점점 블로그나 사이트를 통해서 정리해 놓는 문서의 양과 빈도수가 줄고 있습니다. 나이먹은 탓일까요. 제가 아무리 아껴봤자, 메일링리스트, 포럼, 게시판을 통해서 오간 질문과 답변들은 구글의 웹크로울러와 인덱스서버가 잘 갈무리하고 캐싱하고 있습니다.

- 블로그를 꾸준히 쓰면 구글이 알아서 영업해줍니다.
아래는 OKJSP 사이트의 방문트래픽 정보입니다.
http://www.google.com/analytics 에서 가져온 http://www.okjsp.pe.kr 사이트의 통계정보입니다. 절반 정도의 방문이 검색엔진을 타고 들어온 것입니다. 물론 커뮤니티성이 강해진다면 검색엔진의 비율이 줄어드는 것은 당연하겠죠.
http://inside.daum.net 에 포착된 OKJSP의 일주일간 통계를 봐도 검색엔진의 비율이 상당히 높게 나타납니다.

OKJSP는 구글 유입이 대단합니다. 국내 네이버의 트래픽과 구글의 트래픽을 비교해 본다면 구글의 54.6%라는 수치는 굉장히 OKJSP 친화적인 수치입니다.

- 간단한 구글 검색의 팁
"구글 해킹"이라는 책을 통해서 좋은 검색 방법을 알게 되었는데 가장 많이 쓰는 것은 사이트 한정 검색입니다. 예를 들어 tomcat 정보를 다음과 같이 검색할 수 있습니다.
tomcat site:okjsp.pe.kr
tomcat 검색 결과 중 *.okjsp.pe.kr 사이트만 표시한다.
tomcat site:apache.org
tomcat 검색 결과 중 *.apache.org 사이트로 한정한다.
tomcat -site:apache.org
tomcat 검색 결과 중 apache.org 사이트는 제외한다.

tomcat filetype:ppt
tomcat 검색 결과 중 파일 형식이 ppt 인 것만 나타낸다.

tomcat -airforce
tomcat 검색 결과 중 airforce검색어 제외

"apache tomcat"
두 단어 연속으로 이어진 절에 대한 검색만 허용

보통 개발자는 개발하면서 만나게 되는 수많은 메시지들이 있습니다. 이것들만 잘 선별해서 구글링해도 많은 문제들을 해결할 수 있습니다. 우선 순위 높은 것부터 추천을 해주니까요.

뭐 다 좋은 것은 아니지만 구글 존재는 고맙습니다.
일반서적 디자인에 내용은 기술서적입니다. 기술을 일반인도 읽기 쉽도록 쉽게 쓴 기술입니다. 검색엔진마스터이신 전병국님의 추천의 글은 참 정확하다는 생각도 듭니다. 그 순서대로 읽는 것도 방법입니다.


0,1로 된 전자회로 > 16진수 코드 > 기계어 > 어셈블리어 > C > High Level Language 의 발전과 더불어 Procedural Programming > Structural Programming > Object-Oriented Programming > Aspect Oriented Programming 과 같이 프로그래밍 언어의 진화를 생각했는데, Map & Reduce 라는 어찌 보면 아주 심플한 프로그래밍 방식이 세상에 영향을 주고 있습니다. 대용량 처리는 DB밖에 해결방법이 없다고 생각한 제 좁은 머리를 제대로 깨주고 있습니다만 몇 번 더 보고 체득해야 할 듯 합니다.

사실 대용량을 경험하는 것은 쉽지 않습니다. 십만 건만 넘어가도 ㅎㄷㄷ(gee)한다고 할까요. 하지만 발상의 전환이 가능하다면 도전해 볼 만 하다고 생각합니다.
100% 이해하기보다는 10%라도 실천해보려고 노력하는 분들은 책이 재밌을 듯 합니다.

제일 처음 자바를 시작했을 때, 에러(Error와 Exception 나뉘지만 에러로 표기합니다)화면을 보고 깜짝 놀랬습니다.

2008-10-06 13:27:06 ApplicationDispatcher[/] Servlet.service() for servlet download threw exception
java.lang.IllegalStateException: getWriter() has already been called for this response
        at org.apache.coyote.tomcat5.CoyoteResponse.getOutputStream(CoyoteResponse.java:568)
        at org.apache.coyote.tomcat5.CoyoteResponseFacade.getOutputStream(CoyoteResponseFacade.java:148)
        at kr.pe.okjsp.DownloadServlet.doGet(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
        at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:704)
        at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:474)
        at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:409)
        at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:312)
        at kr.pe.okjsp.ControllerServlet.doGet(Unknown Source)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
... 중략 ...
        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
        at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
        at java.lang.Thread.run(Thread.java:619)

저런 식으로 우수수 떨어지는 에러메시지는 초보에게는 공포감을 일으키기 충분합니다. "내가 그 정도로 잘못했는지 정말 몰랐어요"라는 감정이 생기죠. 사실 에러메시지의 상단 2~3줄만 봐도 문제의 원인을 파악할 수 있는데, 스택트레이스(Stack Trace)라 불리는 사정없는 에러메시지는 정말 "안 좋아"였습니다.

try{...} catch(Exception e) { System.out.println(e.getMessage()); }

저런 메시지 폭탄을 피하기 위해서 위 코드를 통해 핵심 메시지만 봅니다. 이 포스팅의 핵심은 저기서 나온 메시지들과 친해지라는 것입니다. 아마 자주 보일 것입니다.

가까이 하기 어려운 사실 하나는 "영어"로 된 메시지라는 것이겠죠. 영어는 못해도 자바는 좀 하신다면 공개된 소스나 디컴파일을 통해서 저 메시지 생성부분을 찾아볼 수 있습니다. 더구나 자바의 기본 라이브러리는 공개되어 있습니다. src.zip 파일이 그것이죠.

이클립스 툴이나 텍스트 에디터 등을 통해서 에러 메시지를 검색해보면 해당 부분의 소스를 볼 수 있을 것입니다.

또 다른 방법은 구글링을 통해서 소스를 검색해 볼 수도 있습니다. 위 메시지의 경우 검색어를 다음과 같이 넣습니다.


따옴표("")로 감싼 이유는 단어 구분해서 찾지 말고 문구 그대로 검색하라는 의미이고 filetype:java 는 확장자가 java인 파일만 검색하라는 뜻입니다.

이런 식으로 소스를 찾아서 에러원인을 볼 수 있다면, 아마 문제해결(Troubleshooting) 능력이 많이 좋아질 것입니다.

버그와 에러는 다르죠. 에러 메시지! 사라지지 말고 함께 해요.

ps. 공통 프레임워크 만드시는 분들 에러 씹지 말고 보내주세요. ^^;

ie7 의 우측상단에 보면 검색창이 있습니다. MS의 브라우저이기 때문에 Live Search가 기본검색으로 되어있습니다. 검색결과가 제 취향이 아니라서 구글로 바꾸려고 합니다. eclipse4j라는 동료의 도움으로 알게 된 팁입니다.

사용자 삽입 이미지


일단 등록할 검색주소가 필요하기 때문에 구글(http://www.google.co.kr)로 가서 대문자 TEST 키워드로 검색합니다.

사용자 삽입 이미지

결과 페이지의 주소를 복사합니다. 다음과 같을 것입니다.
http://www.google.co.kr/search?complete=1&hl=ko&q=TEST&btnG=Google+%EA%B2%80%EC%83%89&lr=&aq=f
사용자 삽입 이미지

ie7의 우측상단 돋보기 옆 작은 역삼각형을 클릭해서 "추가 검색 공급자 찾기..." 메뉴를 선택합니다.
사용자 삽입 이미지


다음이나 파란닷컴 또는 쇼핑을 애용하신다면 효리몰, 설탕몰, 공원몰 등을 추가할 수 있습니다. ㅡㅡ; 기름몰은 어디간 걸까요. 쩌비.
사용자 삽입 이미지


일단 우측에 보면 "직접 만들기" 섹션이 보입니다.
사용자 삽입 이미지


여기에 복사했던 주소를 적어넣습니다. 그리고 4번항목의 Name에 google이라고 넣습니다. 여기는 맘대로 적으셔도 됩니다. ^^; "검색 구걸" 같이 말이죠.
사용자 삽입 이미지

확인 창이 하나 뜹니다. 기본 검색 공급자로 지정을 체크하시고 공급자 추가(A) 버튼을 클릭하면 끝.
사용자 삽입 이미지


바뀐 것을 보실 수 있을 것입니다.
사용자 삽입 이미지


좋은 여름 되십시오.
사용자 삽입 이미지

지난 달 샌프란시스코에서 Google I/O라는 이름으로 개발자 컨퍼런스가 열렸습니다.
http://code.google.com/ google code에서 그때의 동영상과 자료들을 볼 수 있도록 되어있습니다.

일본과 중국에서도 개발자 컨퍼런스가 열렸는데, 한국이 빠져있네요. 개발자 사각지대라 생각이 드는 순간입니다. ^^;

아래는 오픈 소셜에 대한 한시간짜리 동영상 강의입니다.

아직 구글 덕을 보시는 듯 합니다. 제가 원하는 건 구글이 얘기해주고 있네요.

사용자 삽입 이미지

1. 시류가 거시기 해서 http://www.daum.net에서 ie7 download로 검색해도 신통치 않고 ie7 다운로드로 검색해보니
2. 원하는 답변이 나왔는데, 어허~ 스크롤바가 ㄷㄷㄷ일쎄
3. 본인이 원하는 게 무엇인고 허니, xp의 ie6가 쩔어서 hungapp(헝~)하면서 "응답없음"으로 죽길래 경험상 "아, ie7으로 갈아타면 좀 덜 하더라 싶어서" ie7 다운로드로 검색혔겄다. 떡 하니 마이크로소프트 주소가 나오는디, 이거 다 싶지 아니한가~.
4. 근디... 우측 상단을 보니 아따, 이놈 내가 알지요. 구걸(google) 아닌가~ ^^; 제가 발음이 쪼까 거시기 허요.

아직까지 다음 구걸 좀 하는군요. 화이팅 하시지라~


덧. 썰렁하신 분들을 위하야 스타 판소리 링크 하나 올립니다요.
http://www.okjsp.pe.kr/upload/pansori_zerg.mp3

+ Recent posts