달력

4

« 2024/4 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • Project에서 JSPWiki를 쓰고 있다. 템플릿으로 Brushed Template라는 놈을 썼다가, Firefox, IE7 지원이 시원찮아서 Default Template로 원복했다. T.T (wikiwiki jspwiki brushedtemplate) 2007-12-19 14:43:36

이 글은 ryudaewan님의 2007년 12월 19일의 미투데이 내용입니다.

:
Posted by 하얀 말
AppleAT&T가 6월 말 미국에서 출시한 iPhone은 개발자들에게도 뜨거운 관심을 받고 있으며, 벌써 iPhoneDevCamp라는 행사도 열렸다. 아직 AnycallDevCamp나 CyonDevCamp, NokiaDevCamp라는 것은 없는데 말이지.

아래는 해당 행사 사진 중 하나인데, Web Application 개발해 보신 분은 아시겠지만 바로 CSS(Cascading Style Sheet) code이다.

사용자 삽입 이미지

기존의 Embeded System용 S/W 개발과 달리 iPhone용 application은 거창하게 cross compiler 라든지, tool chain 같은 알아먹기도 힘든, 복잡한 embedded 개발 환경에 대한 이해를 요하는 것이 아니라, HTML, CSS, Javascript 같은 Web 개발만 가능해도 된다는 뜻이다. 아마 iPhone용 application은 MacOS X의 Dashboard Widget일 것이다(iPhone의 OS로 MacOS X을 채택했다는 것은 올해 1월 McWorld Expo에서 Steve Jobs가 iPhone을 발표하면서 벌써 말한 내용이다). Apple은 기존 hand held 장비에서 돌아가는 application 개발에 비하면 그야말로 "겁나 쉬운" 개발 방법을 제시하여 자신의 세를 급속하게 불릴 수 있는 토대를 마련한 것이다.
 
iPhoneDevCamp 같은 행사의 개최가 가능한 또 하나의 이유는 AT&T나 Apple이, '냐, 인증 받고, 돈 내고 관련 기술 함부로 내돌리지 마라?"라는 제약을 안 걸어서기도 하다. 한국의 휴대전화용 S/W를 개발하려면, 당장에 개발 도구 확보 자체가 어렵고, 같은 S/W도 각 이통사별로 따로 개발하는 것도 그렇지만, 피터지게 개발하면 여러가지 명목으로 이통사에 돈을 주어야 하고, 여러가지 저작권법 등으로 개발 기술에 대해서도 이통사가 저작권법 등을 들어 자사에 종속시키려 든다. 그래서 정통부 주도로 WIPI라는 것이 만들어졌지만 여전히 중소 개발업체들은 각 이통사별로 program을 만드느라 여념이 없고, 국경선만 넘으면 아무 짝에 소용이 없다(즉 WIPI는 무엇하러 있는지 모르겠다. 괜시리 의무 탑재 어쩌고 해서 휴대전화 제작 단가나 올리게 하고 말이야). 즉, 기술적, 법적으로 iPhone용 S/W 개발자들을 옭아매는 짓을 하지 않아서 이런 행사도 가능한 것이다.

사용자 삽입 이미지
그에 비하여 대한민국 이통 산업의 폐쇄성은 상당히 우려된다. 우리나라를 먹여살린다고 (언론들이) 일컽는 품목 중 하나가 휴대전화 시장인데 말이다. computer의 역사를 되돌이켜 보자. 그야말로 IBM이 독점적 지위를 누리던 Mainframe과, IBM이 스스로 창시했으면서도 한낱 Mainframe의 terminal로만 자리매김하려 했던 IBM-PC 호환 기종이, 오늘날 우리의 삶에 미치는 영향이 어떤지를 비교해 보자. Mainframe과 PC를 가른 큰 요인은 바로 폐쇄성/개방성이었다. 이런 일이 휴대전화 판에서도 벌어지지 말라는 법이 없다. 이통사는 자신의 독점적 생태계를 고수하려다, 그 생태계의 크기가 확 짜부라들 수도 있다. 그리고 하얀 말의 생각으로는, 그리고 iPhoneDevCamp라는 행사를 알게 된 후로는 더더욱, 휴대전화 바닥에서도 개방성이라는 물꼬를 든, 기존 업계 입장에서는 일종의 사고를 Apple의 iPhone이 친 것 같다.

Platform 사업은 크게 놀아야 한다. 크게 놀아야 한다는 것은 Platform 사업자들의 덩치만을 말하는 것이 아니다. 사고 방식도 통이 커야 한다. Platform 사업에서는 그 Platform을 채택한 재화를 소비하는 소비자도 중요하지만 더 중요한 것은 그 Platform을 기반으로 하는 개발을 수행하는 개발자들의 숫자와 질이다. 그러다 보니 그들의 인심을 얻어야 하고(동네 장사만 인심이 후해야 하는 게 아니다), 그들에게 흥미로운 것을 계속 던져주어야 하고, 그들이 쉽게 그 platform
을 접하고 무언가를 할 수 있는 법적, 기술적 걸림돌을 제거해야 한다. 아니면 미국에 의해 그들의 표준이 우리나라 표준이 되는 것처럼(동기식 IMT-2000 사업자 선정 시도나 미국식 Digital TV 표준 고수 등) 영향력을 동원해서 강제로 채택하게 하던지. 단순히 royalty 먹을라고 쪼잔하게 굴면, 하나도 채택 안한다. 정리하면 platform 사업은 크게 놓고 크게 먹는 사업이라는 뜻이다.

휴대전화는 단순 appliance에서 자꾸 computer를 닮아가고 있다. 예전부터 smart phone이라 나오긴 했었지만 이번 iPhone은 기존의 smart phone이라고 하는 것들을 만드는 회사들에게 그간 그들이 얼마나 닭질을 한 것인지를 여실히 깨닫게 함과 아울러(기존 PDA 업체/ 휴대 전화 업체들이 smart phone이라는 것으로 그렇게 열고자 한 고객의 지갑을, iPhone은 손쉽게 열고 있지 않은가), 일반 대중에게는 smart phone이란 이런 것이라는 학습을 단단히 시킨 셈이다. 이미 휴대전화에는 다양한 기능을 추가시키고 있으며, 점차 표준화에 대한 압박이 심해질 것이고, 따라서 platform이라는 것이 대두될 것이고, 그 platform에서 돌아가는 S/W나 contents들이 얼마나 많은지가 중요해질 것이다. 즉 앞으로의 휴대전화 산업은 platform 사업이 될 것이며, 이에 따라 개발자들을 자신의 platform으로 포섭시켜야 휴대전화 업계의 1등 기업이 될 것이다. iPhone을 단순히 전화기로 보고, "더 좋은 전화기를 만들면 되지, 뭐"라는 식으로 접근하다가는, 먼 훗날,  이통사는 작은 경제 규모를 가진 대한민국의 내수 기업이라 Global Top 10은 택도 없지만, 휴대전화 Global Top 10에서 삼성전자와 LG전자가 없을 수도 있다.
 
그런데 먼저 이야기한 바와 같이, 국내 휴대전화의 질서는, 잘나가는 Global 기업 삼성전자가 국경 넘어가면 잘 알지도 못하는 SK Telecom이 제시하는 사양 대로 휴대 전화 만들 정도로 , 이통사들이 아주 폐쇄적으로 장악하고 있다. "우리가 피 같은 돈 들여 깔아놓은 망에 검증되지 않은 것은 유통 못 시킨다(정확히는 우리 돈 들여 깐 망에서 장사하려면 돈 내!지만)", "한국의 첨단 이통 service를 받쳐주는 platform이 없기 때문에 우리가 직접 platform을 장악한다"는 논리를 내세우지만, 음성 통화라는 appliance에서 점차 범용화되어 가는 시장에서 저렇게 전 세계 개발자들에게 다 열린 platform이 탄력 받으면, 대한민국에서나 대기업 대접 받는 회사와 협력 회사 정도의 역량으로는 그 혁신의 속도 쫒아가기 힘들 것이다.
 
그러다 보면 network 효과까지 작동할 것이고, 80년대 정말 많았던 computer 기종 및 computer 제작사들이 다 정리되듯 몇 개 platform만 남을 것이고, 그러면 그 platform 호환 기종이나 만들고 그 platform에서 돌아가는 S/W나 만들 것이다. PC 시장에서 대한민국이 아주 Winodows에 종속되어버렸듯이 말이다.

진정한 이동통신의 강자가 되려면 platform을 장악해야 한다. 다시 말하거니와 iPhone은 새로운 질서의 신호탄이고, 이 질서는 거부할 수 없다. 따라서 휴대전화 제작사 및 특히 이동통신사는 자신들의 기술 전략을 재고하고 재편해야 할 것이다. 개발자들은 물론 사용자 마저도 다른 곳에서 산 음원은 자사용 휴대전화에서는 못 듣게하는 식의 사고 방식으로는 미래가 없다.

(주 1) 2007.7.11에 예전 Blog에 썼던 글

(주 2) Google이 Android를 발표하여 이런 개방화는 더욱 탄력을 받았다. 다행히 삼성전자, LG전자가 한 자리 걸치고 있는 듯 하다.
:
Posted by 하얀 말
  • Firefox 이외의 다른 Browser에서도 쓸 수 있는 Firebug Lite 등장! IE를 기반으로 하는 우리나라 개발 환경에서는 환영할 일임! 오후 12시 53분

이 글은 ryudaewan님의 미투데이 2007년 10월 17일 내용입니다.

:
Posted by 하얀 말
2007. 10. 10. 20:13

[UNIX] iptrace 명령어 쓰기 Computing에 관한 독백2007. 10. 10. 20:13

UNIX에서 packet sniffing을 하기 위해서는 iptrace라는 명령을 쓰면 된다. 그런데 iptrace는 binary를 dump하므로 이를 알아먹을 수 있는 text file 형태로 변환하는 것이 있으니 이는 ipreport라는 도구이다. 이 전부를 shell script로 묶어 쓰면 매우 유용하다. 이번에 업무를 수행하며 쓴 이 강력한 packet sniffing 도구를 사용하는 shell script를 기록하여 훗날을 대비한다.

startsrc -s iptrace
\ -a "-a -d ${IP} -b -P tcp -p ${PORTNUM} /home/anytemp/${IP}_${PORTNUM}.tcp"

sleep ${SEC}
stopsrc -s iptrace
ipreport -s /home/anytemp/${IP}_${PORTNUM}.tcp > \
/home/anytemp/${IP}_${PORTNUM}.out

:
Posted by 하얀 말
  • 무언가를 배울 때에는 종파리(從破離)의 법칙을 기억하라. 오전 9시 27분
  • ls -l |grep ^d| awk '{print "du -sk "$9}' |sh |sort -n -r |head -n 10 오후 8시 23분

이 글은 ryudaewan님의 미투데이 2007년 10월 2일 내용입니다.

:
Posted by 하얀 말
우리는 UNIX를 쓸 때 find command을 꽤 많이 사용합니다. 예를 들어 현재 directory 및 하위 directory에서 a*.jar라 하는 file을 찾고, 그 file의 permission 및 생성 일자, 크기 등을 알기 위해서 다음과 같이 칩니다.

find . -name a*.jar -exec ls -l {} \;

-exec option 이후 find command으로 찾은 결과로 검색한 file들에 대해 수행하고 싶은 command을 입력하는 것은 알지만, 도데체 {} \;는 뭐하는 개뼉다귀일까요?

1. {}

아주 간단합니다. find command으로 찾은 file 집합을 표현한 것입니다. {와 } 사이에는 공백이 있으면 안됩니다.

2. \;

위에서 언급한 -exec option 뒤의 command은 ;(semicolon)으로 마치게 되어있습니다. 즉 find command은 -exec option을 만나면 그 option부터 ; 사이를 수행할 command으로 인식합니다. 그런데 문제는 ;가 UNIX에서 특수한 의미를 가지는 문자라는 것입니다. UNIX에서는 두 command 이상을 한 줄에 쓸 때, 각 command 사이를 ;로 구분합니다. 즉 UNIX Shell Prompt에서는 아무 생각 없이 ;만 쓰면 exec command 뒤에 다른 command이 나올 것으로 생각을 하지, exec option의 끝으로는 생각을 하지 않는다는 뜻이죠. 이럴 경우 등장하는 것이 바로 \(backslash)로, \ 뒤에 특수문자가 나오면 그 특수문자의 의미를 무시하고 글자 그대로 인식하게 되죠. 그러다 보니 \;라고 쳐야 하는 것입니다.

아, 하나 더! {}와 \; 사이에는 최소한 공백 문자 하나는 들어가 있어야 한답니다. 이 둘 사이를 딱 붙여서 쓰면 안된다는 뜻이죠.

find command에서 -exec option을 쓰면 끄트머리에 꼭 나오는 {} \;의 의미, 이제는 아시겠지요?
:
Posted by 하얀 말
  • 결국 개인용 Mobile 장비는 휴대전화, 차량용 Mobile 장비는 Navigation으로 수렴할 거다. 다른 시도는 아마 뻘짓이 될 듯. 오전 10시 41분
  • Naver Blog 때려치고 Tistory로 옮기면서 다짐했던 잦은 업뎃의 결심은 바쁜 생업과 게으름에 매몰되어 가는구나... 내 게으름을 탓하라...! 오후 1시 15분

이 글은 ryudaewan님의 미투데이 2007년 9월 28일 내용입니다.

:
Posted by 하얀 말

이 글은 ryudaewan님의 미투데이 2007년 9월 17일 내용입니다.

:
Posted by 하얀 말

이 글은 ryudaewan님의 미투데이 2007년 9월 10일 내용입니다.

:
Posted by 하얀 말
  • Microsoft Office 대신 OpenOffice를 써야 하는 상황에 내몰렸다. 이 참에 OpenOffice로 완전히 전향해 봐? 오전 9시 13분
  • OpenOffice 한국어 Community 오전 9시 15분
  • 내 주 blog가 있는 tistory가 막히니 me2day를 통해 우회 등록 하는 글이 느는군. ㅋㄷㅋㄷ 오전 9시 16분
  • 허긴 여기다 등록하면 Lifepod나 Springnote에도 자동 등록이니, 좋군! 오전 9시 17분
  • 그런데 me2DAY의 tag 입력은 공백으로 구분해서 좀 어색해. 다른 곳처럼 쉼표(,)로 구분하면 좋겠어. 자꾸 쉼표를 습관적으로 치거든. 오전 9시 18분

이 글은 ryudaewan님의 미투데이 2007년 9월 7일 내용입니다.

:
Posted by 하얀 말