사고 조사는 두 단계로 이루어집니다

종종 공강 시간에 낮잠을 잘 때 켜 두는 내셔널지오그래픽채널의 《항공사고수사대》를 보다가, 뭔가 느낌이 오는 부분을 발견해서 기록으로 옮겨 봅니다. 흐흐. 요새는 TV에 재미있는게 참 많아요~ -O-

그 에피소드는 1990년의 British Airways 5390편 사고를 다루고 있는 시즌 2 에피소드 2 였습니다. 이 사고는 기장 앞의 창문이 뜯겨나가서 기장이 밖으로 튕겨나가고 부기장이 극적으로 비상착륙을 시켜서 결국엔 사망자 없이 무난히 마무리한 사건입니다. 그런데, 창문이 갑자기 뜯겨나간 이유가 조사가 진행되면서, 정비기사가 창을 고정하는 볼트 크기를 설계상의 크기가 아니라 다른 것을 끼운 것이 발단이 되어서, 상공에서 풀려서 사고가 생기게 되었다는 것이 밝혀졌습니다.

정비기사는 원래 끼워져 있던 볼트와 같은 크기의 볼트로 갈았을 뿐이라고 주장하며 전혀 문제가 없을 것이라고 했는데, 결국 그 비행기에는 원래부터 잘못된 볼트가 끼워져 있었고, 잘못된 볼트 크기에 맞게 정비기사가 역시나 또 작은 볼트를 끼운 것이었습니다. 다른 일반적인 사고에서는 정비기사 위로 직계 상사 몇명이 짤리면 그만이겠지만, 역시 우리의 항공사고수사대! 돈이 많이 드는 사업이니 만큼 철저한 조사를 합니다.

Accident investigation certain aircraft comprises two parts. First part is what's happened and that's usually well to the easy bit. And second part is why did it happen. -- Stuart Culling (Accident Investigator, AAIB)
항공기 사고 조사는 두 단계로 이루어집니다. 첫 번째는 어떻게 일이 일어났는가를 조사하는 것인데, 보통은 쉬운 부분입니다. 두 번째 부분은 바로 왜 그런 일이 일어났는가를 조사하는 것입니다. - 스튜어트 컬링 (사고조사자, AAIB)

음.. 그러니까, 사고의 원인을 "정비기사가 볼트를 잘못 끼운 것"이나 "4년 전에 조립한 곳에서 잘못 끼운 것"이 아니라, 더 깊숙한 심리적인 원인을 분석했습니다. 조사자는 정비기사의 숙련도를 고려하여 자기의 책임으로 몰아가는 것처럼 느끼지 않게 최대한 배려하면서 어떤 경위로 정비기사가 그런 선택을 하게 되었는지 조사를 해서 결국은 더 깊은 원초적인 원인을 분석했습니다.

원래 항공기를 제작한 회사에서는 정비 매뉴얼에 모든 부품의 규격을 적어 두고 그에 따라 항상 확인하여 쓰도록 되어 있었지만, 실제로 정비창에서는 매뉴얼을 일일이 확인하여 작업하면 시간이 3배가 넘게 걸려서, 항공기의 스케줄에는 절대로 맞출 수가 없다는 것이었습니다. 또한, 인력 부족과 과도하게 빡빡한 항공 스케줄을 이유로 여러 사람이 반복적으로 안전을 확인해야 할 정비 공정 중에서 많은 부분을 정비기사 개인의 육감적인 판단에 맡기고 있었다고 합니다. 정비기사도 그런 부분에 대해서 상부에 얘기하고 싶었지만, 따로 따로 바쁘게 다른 시간에 떨어져서 일하다 보니 그런 기회가 적었다고 합니다.

결국 조사팀에서는 항공사에 품질관리 시스템을 점검하고, 기사들이 피드백을 주는 것을 장려하도록 했으며, 항공 당국에는 안전에 결정적인 영향을 주는 요소에 대해서 재직 중에도 계속 테스트를 하도록 권고했다고 합니다.

소프트웨어 프로젝트에서도, 많은 팀에서 프로젝트 일정에 쫓기다 보면, 우선 버그를 해결하고 나서는 그 버그가 뭔지 버그 트래커에 기록이 남으면 무척 다행이지만, 사실 상 많은 곳에서 그냥 "아차!"하고 남들 보기 전에 얼른 고치거나, 다른 사람이 만든 버그를 고친 경우에는 괜히 원망 한 번하고 끝납니다. 단순히 "잘못해서" "실수로" 라던지, "포인터를 잘못 접근해서" 같은 직접적인 이유 말고도, 근본적이고 기초적인 "모니터가 작아서 앞뒷 부분이 잘 안 보여서" 라던지 "의자가 불편해서 결국 치질에 걸리고, 자세를 자주 바꾸다보니 결국에 코드 집중도가 떨어진다" 같은 좀 더 사람에 초점을 맞춘 원인을 가끔씩은 분석하면 앞으로 발생할 여러 문제를 한꺼번에 잡아버릴 수도 있지 않을까 생각을 해 봤습니다.

원래 잘 돌아가던 코드를 그냥 다른 데 썼을 뿐인데, 그게 나중에 대형사고를 일으킨 경험을 해 본 적이 있는 게.. 엉뚱한데에 참 와닿네요 ^.^;;

댓글 5 개 | 트랙백 0 개 (보낼곳) | 태그 life thoughts


인터넷 금융 공개 표준 프로토콜의 여러가지 구조

앞에서 살짜쿵 얘기해 보았던 〈인터넷 금융 서비스 플랫폼 문제의 현실적 대안〉에서 공개 표준 프로토콜을 도입하는 방법에 대해서 조금 더 자세하게 살펴 보겠습니다. 물론, photon님께서 말씀하신 대로 단기적인 해결책은 우선 현재 돌아가는 형태 안에서 플러그인을 많이 쓰이는 대안 플랫폼들에 포팅하는 것이 되겠습니다. 장기적인 안을 고려하자면 여러 다른 형태도 고려해 봄 직 합니다.

자바스크립트 API로 표준화하기

이 방법은 자바스크립트 API를 "인증서를 확인하라", "개인 인식 번호를 전송하라", "송금 확인을 해서 싸인하라" 등의 기초적인 기능을 수행하도록 표준안을 만드는 것입니다. 그러니까, 세션 암호화 등의 밑에 깔리는 것들은 HTTPS를 이용하고, 인증서 확인과 관련된 것을 웹브라우저 플러그인으로 들어가거나 다른 방법으로 자바스크립트의 함수를 호출하는 것으로 해결을 하는 방법입니다. 도식화 하자면, (이 그림은 일반인의 이해를 돕기 위해 과하게 단순화를 한 것이며, 실제 구조를 정확하게 표시한 구조도가 아닙니다.)

자바스크립트 API로 표준화 구조

대충 모양은 이렇게 나오는데, 예를 들자면 W3C XMLHttpRequest 같이 자바스크립트 오브젝트를 정의하는 형태이면 적당할 듯 합니다.

자바스크립트 API를 그냥 중간전달자로만 활용하기

이 구조는 지금 이니텍과 소프트포럼에서 채택하고 있는 방식과 비슷한 것입니다. 정확히는 이니텍과 소프트포럼은 Active X 오브젝트나 플래시 오브젝트를 대신 경유하고 있지만, 경유하는 과정을 굉장히 단순하게 전달자로만 쓴다는 점에서는 비슷합니다. 원래는 128비트 암호화를 웹브라우저에서 HTTPS로 지원하지 않아서, 암호화를 하려다 보니 이런 형태를 띠게 되었습니다. 이 구조에서는, 자바스크립트 API를 제공하기는 하는데, 거의 의미없이 그냥 전달만 합니다. 안에 전달 받은 곳에 구체적인 프로그램 동작이나 사용자의 행위를 요구하는 것에 대한 정보가 암호화되어 저장됩니다.

이 경우에는 호출하는 방법도 물론 표준화를 해야겠지만, 매우 간단하기 때문에 별로 흉내내는 것도 어렵지는 않아지고 플랫폼에 따라서 선택적으로 취할 수도 있습니다. 자세한 내부 정보의 바이너리 포맷을 정하는 것이 표준화에서 중요한데, RFC3261 SIP 같이 텍스트 기반의 프로토콜을 채택할 수도 있고, RFC2138 RADIUS같이 바이너리 프로토콜을 채택할 수도 있습니다.

바닥부터 TCP또는 SSL기반의 프로토콜을 만들기

독일에서 쓰는 HBCI (Home Banking Computer Interface)에서 쓰는 방식입니다. 이 방식에서는 HTTPSMTP같이 아예 바닥부터 프로토콜을 새로 만들어 버립니다. 이렇게 되면, 꼭 웹브라우저에 의존할 필요가 없기 때문에, 플랫폼이 GUI 프로그램이 될 수도 있고, 텍스트 콘솔이 될 수도 있고, 웹 브라우저에 들어갈 수도 있고, 심지어 집 현관문에 붙은 인터폰에 들어갈 수도 있습니다. 구조를 보면 대략,

바닥부터 만든 프로토콜 구조

이렇게 볼 수 있습니다. 바닥부터 만드니 만큼 호환성에 대한 테스트가 많이 이뤄져야 하고, 구현 작업에서 전반적인 작업량도 많습니다.

RPC 기반의 프로토콜

네트워크 부분을 신경쓰지 않고 그냥 서버를 호출할 수 있게 RPC 프로토콜을 활용하는 방법입니다. 인터넷을 경유하는 RPC 프로토콜로는 SOAP이나 XMLRPC 같은 것이 많이 쓰입니다.

RPC 기반의 프로토콜 구조

전체적인 구조는 이렇게, 클라이언트가 호출하는 RPC API를 정하고, 네트워크에서 돌아가는 RPC 클라이언트 - 서버 구간은 기존 표준을 활용하게 됩니다. Blogger API 같은 것이 대표적인 RPC 기반 표준 API입니다. SOAP와 XMLRPC 둘 다 밑에 HTTPS를 깔고 들어갈 수 있기 때문에, 암호화 채널에 대해서도 크게 복잡하지 않습니다.

표준 API만 정하고 SDK 제공

이 방법은 아예 프로토콜을 정하지 않고, 금융회사나 보안솔루션회사에서 제공해 주는 SDK(Software Development Kit)를 이용해서 최종 프로그램을 컴파일하는 방식입니다. 여기서 각 SDK의 API를 통일해서 표준 API만 지키면 아무 회사의 SDK라도 사용할 수 있게 하는 것입니다.

API만 표준화 한 구조

실제 예를 찾아보면, IETF Draft 상태인 Diameter API가 그런 비슷한 방법입니다. 이 표준안에서 정의된 API로 Sun과 Toshiba등의 회사에서 SDK를 만들었기 때문에 어느 회사의 라이브러리를 쓰느냐와 상관 없이 그냥 링크를 할 수 있습니다. (Diameter는 범용 표준 인증/과금 프로토콜인데, TCP와 SCTP위에서 작동하는 바이너리 프로토콜입니다.) 물론, OpenGroup의 SUS (Single UNIX Specifications)도 그런 비슷한 것이긴 하지만, 용도가 좀 다르군요. ^^;

물론, 이렇게 되면, 제공되는 SDK가 네이티브 바이너리인 경우에는 플랫폼의 제약이 매우 심해지겠지만, 자바 클래스 라이브러리이거나 파이썬 모듈 같이 크로스플랫폼 포맷이라면 별 제약이 없을 수도 있습니다.


객관적이지 않은 편견을 드리지 않기 위해서, 각 방식의 장단점에 대해 제 주관적인 의견을 최대한 빼고 쓰려고 노력해서 설명을 해 봤습니다. ^^; 장기적인 대안은 아직 멀리 있는 뜬구름 잡는 얘기이기는 하지만 그래도 독일에서도 어떻게든 공개 표준이 있는 만큼, 우리도 영원히 못할 일은 아닌 듯 싶습니다.

댓글 7 개 | 트랙백 0 개 (보낼곳) | 태그 computer thoughts


인터넷 금융 서비스 플랫폼 문제의 현실적 대안

요즘 웹 표준에 옹호적인 커뮤니티들에서는 한 법대 교수님의 웹 페이지 국제 표준화를 위한 민원/소송 준비를 무척 반기며 들떠 있습니다. 그 동안에도 웹 표준과 관련된 운동은 몇 번 있기는 했지만, 엉뚱한 사람들 불러다가 토론 한 번하고 끝난다거나, 기업 사이트들의 느리디 느려서 언제 끝날지 모르는 프로젝트의 시작을 떠들썩하게 광고한 것으로 그쳐왔습니다.

이번 소송 준비에서는 그야말로 "끝장을 보겠다"고 선언을 하시고 진행을 하고 있기 때문에, 정말로 뭔가 뚜렷한 변화가 있지 않을까 하고 생각하고 있던 것들 중, 인터넷 금융 서비스에 대한 부분을 글로 옮겨 봅니다.

지금까지의 상황

그 동안에는 마이너 브라우저와 플랫폼에 대한 운동으로 어정쩡한 태도로 시작해서, 어정쩡하게 끝난 프리뱅크 같은 커뮤니티 기반의 움직임도 있었고, 공개소프트웨어 포탈에서 정부 지원으로 진행된 이니텍/경원대학교의 프로젝트 같은 것도 있었습니다. 현재 소비자 인터넷 금융 기술 시장의 거의 대부분을 차지하고 있는 소프트포럼이니텍은 해외수출이나 다양한 서버 플랫폼의 지원 등을 위해서 이미 오래 전에 기술적으로는 이미 거의 완성단계인 듯 합니다.

"플러그인 만들어 주세요"의 문제

현재 "웹 페이지 국제 표준화를 위한 민원/소송 준비" 모임에서도 지금까지 다른 운동이나 프로젝트에서 진행해 왔던 것처럼, 플러그인을 다른 플랫폼으로 포팅하는 것을 유도를 하려는 듯 보입니다. 그렇지만, "플러그인을 리눅스로 포팅해 주세요." 류의 의견으로는 지금 당장의 승리라고 볼 수 있을 지는 몰라도, 또 다시 다른 어쩔 수 없는 마이너 사용자들을 낳을 수 밖에 없습니다.

플래시 기반 플러그인

우선, 플래시로 플러그인을 포팅하는 것에 대해서 논하자면, 플래시는 생각보다 그렇게 공식 지원 플랫폼이 많지 않기 때문에, 또다른 소외를 낳을 수 밖에 없습니다. 즉, 윈도우, 리눅스, 맥 사용자는 전혀 불편함을 느끼지 않을 지 몰라도, FreeBSD, NetBSD 또는 리눅스라도 CPU가 MIPSUltraSPARC 같은 것인 경우에는 공식적으로 플래시가 지원되지 않습니다. 또한, 플래시의 가장 큰 문제점은 하드웨어 접근이 어렵다는 점입니다. 인증서 관련 작업은 특성상 비정규 USB 장치까지 접근을 해야하기 때문에, 순수 플래시로는 구현이 어려우며, 특히 전송 채널 암호화 같은 것은 플래시로 반응성이 제대로 나올 수 있을지도 의문입니다.

XPCOM 기반 플러그인과 ABI 문제

그 다음으로, 모질라 계열의 클라이언트 측 API인 XPCOM을 쓰는 플러그인은 우선, 모질라 계열의 브라우저들을 지원할 수는 있겠지만, 결국에는 여러 이유로 네이티브 라이브러리가 들어갈 수 밖에 없습니다. 즉, 플러그인 제작사의 네이티브 라이브러리가 지원되는 플랫폼에 한해서 지원이 가능하기 때문에, 사실상 플랫폼이 굉장히 제한될 수 밖에 없습니다. 오픈소스 플랫폼의 ABI(Application Binary Interface)가 상당히 다양하다는 것이 바로 그 이유입니다. 즉, 주요 오픈소스 운영체제인 Linux, FreeBSD, OpenBSD, NetBSD, OpenDarwin 만 따져도 벌써 5개인데, 여기에 각각 아키텍처가 6개씩이라고 치면 5*6=30, 그리고 각 플랫폼 별로 호환되지 않는 널리 쓰이는 libc 버전이 3개씩이라고 치면 30*3=90, 게다가 gtk, libX11, libcrypto등의 기타 라이브러리들 중에 5가지 정도의 버전 조합이 널리 쓰인다고 치면 90*5=450. 즉, 플러그인을 배포할 때 무려 450가지 아키텍처와 플랫폼 조합을 배포하고 테스트하고 관리해야 한다는 말이 됩니다. 게다가, 플랫폼 별로 브라우저도 또 3~4가지씩은 있고.. 450가지 중 많이 쓰이는 3가지 정도의 환경만 지원한다고 선언을 하면, 물론 구글 서비스 같은 곳에서는 통하겠지만, 마이너를 왜 차별하냐고 선언한 서비스가 별로 차이나지도 않는 마이너들을 또 다른 조건으로 차별하는 일은 설득력이 별로 없을 것입니다. 수치 산정에 좀 무리를 하긴 했지만, 앞으로 더 희한한 상황이 올 지도 모릅니다.

"플러그인"의 역할

그럼, 플러그인은 과연 무슨 역할을 하는 것일까요. 우선, 가장 기본적으로 오프라인의 사람이 온라인의 이 사람이란 것을 증명하는 "신원 증명" 역할이 가장 주된 것입니다. 또한, SSL/TLS과 비슷한 역할을 수행해서, 다른 사람들이 통신 내용을 중간에서 보지 못하고, 변조하지 못하도록 하는 "채널 암호화" 기능도 지원합니다. 그리고, 송금이나 가입, 대출신청 등의 중요한 작업에서 사용자에게 내용을 확인하게 한 뒤에, 그에 대해서 싸인을 하게 하는 "부인 방지" 기능도 중요합니다. 사실 "신원 증명"이나 "채널 암호화"는 HTTPS 같은 것으로도 충분히 가능하지만, 바로 이 "부인 방지" 때문에 아직도 별도의 플러그인이 필요한 것입니다.

공개 표준 프로토콜

그래서 대안으로 생각할 만한 것은, 공개 표준 프로토콜을 수립하는 것입니다. 즉, 현재와 같은 웹브라우저에서 HTML을 통한 통신이든, SOAP 같은 표준 RPC 프로토콜이나 별도의 프로토콜을 마련하든간에 플러그인 구현과 전혀 상관 없이, 서버는 서버대로 표준을 지키고, 클라이언트는 클라이언트 대로 표준을 지키면 제대로 서비스를 쓸 수 있도록 하는 것입니다. 우선 이렇게 되면, 굳이 은행이나 보안관련 회사들이 플러그인을 구현해 줄 필요 없이, 표준에만 맞으면 누구든 플러그인을 만들어서 팔아도 되고, 공짜로 줘도 되고, 혼자 써도 되고 여러가지 스스로의 환경에 맞는 선택을 할 수 있게 됩니다. 특히, 오픈소스 클라이언트가 나오면, 사용자가 자기 플랫폼에 맞게 컴파일을 할 수 있기 때문에, 아무리 특이한 플랫폼이 나오더라도 어떻게든 해 볼 수는 있는 여지가 있습니다. 또한, 이로써 얻을 수 있는 다른 이익으로는 똑같은 서버로 같은 기능을 PC외에도 손전화, PDA, 타블렛PC 또는 심지어 인터넷 뱅킹만 되는 전용 단말기까지도 쓸 수 있게 됩니다. 따라서, 인터넷 금융이 좀 더 자유롭고 잠재적인 발전 가능성을 얻게 됩니다.

보안 관점에서의 공개 표준 프로토콜

프로토콜이 공개되는 것에 대해, 일반적인 금융회사의 반응은 아마도 "보안에 취약하지 않겠느냐."일 것입니다. 그렇지만, 사소한 하나의 보안 사건도 치명적인 금융의 특성상, 오히려 더 프로토콜을 공개해야 할 필요가 있습니다. 즉, 아무리 암호화를 하고 이런 저런 장치를 해 봐야, 결국에는 리버스 엔지니어링이나 스니핑을 통한 추측과 분석을 통해서, 디지털 컴퓨터 상의 구현인 한은 보안 결함은 뭐든 공격을 받을 가능성이 있기 마련입니다. 게다가, 금융 서비스에 대한 공격이라면, 그냥 돈 받고 해외로 도망가는 사람은 법적인 처벌도 신경을 안 쓸 것이기 때문에, 아무리 리버스 엔지니어링으로 불법으로 규정하려고 해도 법적으로 제재할 방법이 없습니다. 그렇지만, 간단하게 정의된 공개 표준 프로토콜은 결국 넓은 전문가 집단에서의 평가를 받을 수가 있으며, 보안적 위험성에 대해서도 어느 정도 위험성을 미리 느끼고 방어를 위한 수단을 공개적으로 여러 겹 마련할 수가 있습니다.

금융 회사로서의 입장

아무리 좋아도, 금융 회사로서는 새로운 시스템의 도입이 쉽지는 않은데, 금융 회사의 입장에서 얻을 수 있는 이득을 예상해 보겠습니다. 우선, 금융 회사는 클라이언트 측 보안 솔루션을 공급하는 회사와 서버측 솔루션을 공급하는 회사를 분리할 수 있는 자유가 생깁니다. 또한, 리눅스 사용자들이 매일같이 지원해달라고 아우성을 쳐도, 표준을 지키니까 표준 프로토콜을 지원하는 클라이언트를 쓰라고 대답하면 되기 때문에, 공짜로 새로운 플랫폼 지원을 얻을 수가 있습니다. 아무래도 더 중요한 것은 보안상 한 회사에 지나치게 의존할 수 밖에 없었던 것을, 공개 프로토콜로 하게 되면 양쪽을 분리해서 생각할 수 있고, 외부에 위탁할 수 있는 방법도 생기므로 보안 감사가 훨씬 더 쉬워집니다.

보안기술회사로서의 입장

보안기술회사도 중요한 당사자로서 손해만 있다면, 이런 움직임에 참여할 수가 없겠지요. 그러나, 보안기술회사라도 공개 표준이 도입되는 것이 나쁘지만은 않습니다. 공개 표준이 도입되면, 포팅이 훨씬 자유로워지기 때문에, 잠재적인 새로운 플랫폼이 늘어납니다. 따라서, 굳이 금융회사의 적극적인 리드가 없더라도 다른 플랫폼으로 포팅해서 그 쪽에서 벌일 수 있는 시장이 확보됩니다. 그리고, 당장에 이런 일이 생기면 서버쪽에서 작업해야 할 것이 꽤 있기 때문에, 프로젝트가 생겨서 좋겠죠. :-) 물론, 잠재적인 금융사고에 대해 폐쇄적인 프로토콜에서 생기는 문제보다 공개 프로토콜에서 생기는 문제가 발견하기 쉽기 때문에, 미래의 금융사고에 대한 예측가능성 면에서도 유리하다고 볼 수 있습니다.

정부로서의 입장

정부는 계속 늘어나고 있는 MS의 데스크탑 운영체제 점유율에 때문에 외화 유출과, 독점사에 대한 지나친 의존성을 피할 수 있다는 점에서 당연히 여러 플랫폼을 장려하는 것이 더 안전합니다. 또한, 플러그인을 포팅하는 것으로 해결하면, 지속적으로 발생하는 마이너 플랫폼 때문에 이런 저런 민원이 생기고, 제대로 지원하는지 감시 하는 데에 쓰이는 노력을 많이 줄일 수 있겠습니다.

오픈소스 사용자로서의 입장

당연히 좋지 않겠어요? ^^;

제대로 된 보안을 위해

현재 국내 소비자 인터넷 금융 서비스는 사용자들에게 강제로 관리자 권한을 요구해서 바이러스/웜 감염 위험에 노출시키고, 많은 네이티브 소프트웨어 설치를 요구함으로써 중간자 공격에 의한 심각한 보안 위험을 방치하고 있습니다. 게다가, 지원하는 플랫폼을 획일화해서, 한 회사의 독점을 계속 더 촉진시키는 역할까지도 수행하고 있습니다. 한편, 어설픈 키보드 안전 플러그인은 사실상 완벽하게 동작할 수가 없는 것이 자명한데, 사용자에게 마치 안전한 것 같은 인식을 심어줘서 오히려 위험합니다. 결국, 정보의 위치와 흐름을 고려해 볼 때, 해결하는 방법은 비밀번호를 컴퓨터의 통제에서 벗겨내는 방법 밖에 없습니다. USB 장치가 요즘 사용자 권한에게도 많은 기능을 제공하는 쪽으로 발전하고 있는 것을 보면, USB 장치를 통한 적절한 키 관리/사인 등이 결국 좀 더 나은 해결책이 아닐까 합니다. 물론 비싼 장치를 배포해야하는 부담이 있긴 하지만, 사용자들이 하드웨어를 받을 때는 지불하려는 성향이 훨씬 높다는 것을 생각해 보면, 뭐 크게 문제가 되지는 않을 것 같고요. :) USB 장치를 접근하는 것만 허용하면, 어설픈 보안을 하느라 관리자 권한을 요구하는 것이나, 엄청나게 깔아대는 플러그인도 별로 많이 필요가 없어질 것입니다. (드라이버를 깔아야하는 문제는 생기지만요;;)

공개 프로토콜의 시대

이미 Flickr, Amazon같은 인터넷 기반의 서비스 뿐만 아니라, 해외의 큰 규모의 은행들도 API를 공개해서 오픈소스 프로그램에서 쓸 수 있게하고 있습니다. 이제 열만한 것은 열어서, 열린 것들끼리의 카테시안 프러덕트를 최대한 활용하는 다양성의 시대가 되고 있습니다. 온몸을 항상 천으로 똘똘 두르고 있으면, 상처가 곪아도 안 보이고 발견하기도 힘들 뿐더러, 장갑 낀 손으로 다른 사람과 악수하면 사람들과 친해질 수도 없습니다. 어느 정도 얼굴도 보여주고 맨손도 느낄 수 있어야 공기도 통하고 좋겠지요.

댓글 24 개 | 트랙백 1 개 (보낼곳) | 태그 computer thoughts


뻔한 부탁은 하지 말자

channy님의 말씀에 따르면, 제주도에서는 뭍에서 놀러와서는 놀아달라고 재워달라고 먹여달라고 하는 사람들이 너무 많아서 뭍으로 다시 돌아가는 사람들도 제법 있다고 합니다.

어느 출판사 편집자 글에서는 문학 작품을 출판하는 사람들은 상당수가 지인들이 무심코 던진 "책 나오면 한 부 주세요 ^^"류의 부탁에 많은 책을 보내고도, 책이 한 권도 안 팔리고 인세도 기대하지 않는 경우가 허다하다고 합니다.

댓글 0 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


변하지 않는 것

많은 것이 달라진 듯 보이지만, 실제로는 대부분이 그대로인 법입니다.
- MBC드라마 《궁》에서 혜경궁이 황후에게 서로의 처지가 바뀌었다고 하자, 황후가
날이면 날마다 새로운 것이 쏟아져 나오는 세상인 것 같지만, 사실은 별로 그런 것 같지는 않습니다.
- 강유원의 재미없는 철학 이야기 2006년 4월 22일 방송

사람은 뭔가를 볼 때, 항상 변한 것을 주목하게 됩니다. 끊임없이 엄청나게 많이 들어오는 양의 정보를 효율적으로 처리하기 위한 방법으로 항상 눈은 자기도 모르게 움직이는 물체에 초점을 맞춥니다.

소스의 변경사항을 메일링 리스트 같은 것으로 볼 때에도 항상 무엇이 바뀌었나를 받습니다. 그러나, 그 소스 일부가 바뀌는 도중에도 대부분의 나머지 다른 소스는 바뀌지 않은 상태로 있고, 바뀌어야 하지만 바뀌지 않은 부분과, 원래 있었던 문제점은 알아챌 수 없습니다.

쟁점이 되는 입법 사안으로 매일같이 싸워대는 정당들도 사실은 같은 의견을 가진 것들이 더 많이 있습니다. 매일 매일 오늘은 출근길 차가 어디가 막히고 어디는 괜찮고 그러지만, 사실 전체적으로 보면 매일 막히는 곳은 막히고, 한산한 곳은 한산합니다. 무언가 잘못한 것이 있어서 벌을 받고 있는 학생도 사실은 더 많은 면에서 칭찬할 것이 있습니다.

그냥.. 시험공부하려니 딴생각만 하다가.. 변하지 않는 것이 무엇인가를 유심히 보면 깨달을 수 있는 사실들이 제법 있지 않을까 생각을 이리 저리 해 봤습니다. f'(x)=0 이더라도, f(x)≠0 이기도 하고, 심지어 F(x)는 움직이기까지 하는 것처럼 말이죠..

댓글 7 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


공은 사람보다 빠르다

(축구장에서 뉴캐슬 후보팀이 훈련하는 중에 감독이 훈련생 산티아고 뮤네즈를 부른다)
감독: 뮤네즈! 이리 와 봐!
산티아고: 네 감독님
감독: (멀리 있는 골대를 가리키며) 내가 뛰라고 하면 골대까지 최대한 빨리 달린다. 알겠나?
(산티아고가 골대로 달려가는 도중에 감독이 골대를 향해 공을 찬다. 공이 먼저 골대에 들어간다.)
감독: 다시 와
감독: 다시 뛰어!
(다시 산티아고가 달려가고 감독이 찬 공이 앞지른다.)
감독: 뭘 배웠나?
산티아고: 중앙선에서도 골을 넣을 수 있다는 건가요?
감독: 공이 사람보다 더 빠르다는 것.
감독: 우리는 패스한다. 알겠나? 우리는 팀이야. 원맨쇼가 아니라구. 셔츠 앞에 있는 이름이 등 뒤에 있는 이름보다 더 중요해, 알겠나?

오늘 《Goal》이라는 영화를 보다가 문득 생각이 나서.. :) 산티아고는 동네 축구에서 자기 실력이 워낙 뛰어나다보니 패스를 잘 하지 않는 습관이 있었는데 훈련 모습을 보고 있던 감독이 그것을 지적해주기 위해서 직접적으로 패스를 하라고 다그치지 않고 직접 느끼는 기회를 만들어주었습니다. 산티아고가 조금 더 똑똑했더라면, 바로 뭘 발견하게 하려 한 것인지 눈치를 챌 수 있었겠지만, 충분히 느낄 수 있는 여유를 준 다음에 설명을 해 주었기 때문에 산티아고는 아무래도 패스를 해야 한다는 것에 대해서는 잊을 수 없는 기억을 갖게 되었을 것입니다.

또한, "패스를 해야 한다."라고 말해 주었다면 느끼기 힘들거나 곧 까먹어버렸을 언제 패스를 해야하는가, 패스를 안 하면 어떻게 되는가, 패스할 기회를 어떻게 만드는가 등등 파생되는 지식들도 쉽게 생각할 수 있었을 것입니다.

대안언어축제생물정보학 S/W XP 세미나에서 창준형의 제안으로 같이 시도했던 여러가지 일들에서 정말 놀랍게도 참가하는 분들이 훨씬 열정적이고 능동적으로 참가하게 된 것에는, 신체의 극히 일부인 귀와 뇌로만 느낀 것이 아니라, 머리 끝부터 발 끝까지 함께 다 경험한 것이 큰 도움이 되지 않았나 하는 생각이 들었습니다.

예를 들어, 개발 프로세스 개선을 하면 더 적게 일하고도 좋은 결과가 나온다는 것을 위해 종이비행기 공장을 게임처럼 해 본 것이나, 개개인의 사소한 마음이 모여서 큰 차이를 보일 수 있다는 것을 느꼈던 날아가는 새 편대/수호천사놀이 같은 것은 굉장한 효과를 느낄 수 있었습니다. 그 뿐만 아니라, 스케줄 안에서도 다음 단계에서 나오는 개념들이 자연스럽게 앞에서 삽질을 하면서 도출될 수도 있도록 한 것은 마치 자신이 발명했다는 느낌까지 들 수 있다는 점에서 어느 교육과정에서도 반드시 고려해야 할 사항이 아닌가 생각이 듭니다.

요즘 학교에 다니면서 수업들을 들을 때 얼마 전에 읽었던 《미국 최고의 교수들은 어떻게 가르치는가》의 교수들이 가르치는 기법들을 생각하며, 그 교수들이 가르친다고 상상하면서 최대한 그 사람들에게 배우는 효과를 누려보려고 노력해 보고 있습니다. 그래서, 괜히 앞에서 설명하는 것을 들으면서 다음에 나올 내용 같은 것을 상상해보면서 딱 맞히면 괜히 뿌듯하기도 하고.. 흐흐.. 대부분의 과목들이 실질적으로는 시간이 부족해서 비판적인 수업을 전혀 하고 있지 않지만, 속으로 수업 중에 의아했던 부분과 갑자기 등장하는 개념들 같은 것들을 비판해보면서 종이에 적어 뒀다가, 다음에 책을 찬찬히 보면서 그에 대한 반론도 혼자서 해보고.. (요즘은 숙제에 치여서, 그럴 여유는 잘 없지만;;)

그래서, 또 하나 전에 학교 갔다가 집에 오면서 생각해 본 것이, 컴퓨터과학에서 "자료구조"와 "프로그래밍언어구조론"같은 과목들은 비교적 쉽게 "학생들이 늦게 태어난 바람에, 좀 더 늦게 발견을 했을 뿐" 이라는 감정을 느낄 수 있게 발견으로 가득 찬 수업을 할 수 있지 않을까 생각을 해 봤습니다. 소팅을 배울 때는 카드를 정렬할 때 규칙을 세우라고 하고서는 계속 개선 방법을 만들어 본다던지.. 트리를 배울 때나 amortized analysis 같은 것도 삽질을 해 보면서 발견을 쉽게 할 수 있도록 (그리고 꼭 경험해야 하는 삽질은 고루 거칠 수 있도록 함정을..) 도와주면 좀 더 재미있지 않을까 생각을 해 봤습니다. 흐흐..

에.. 뭐 그냥.. 영화보다가 딴 쪽으로 공상을 너무 많이 했군요. -O- 요새 TV를 봐도 온통 "맞아 맞아~" 하면서 끄덕거리고.. 길거리의 엉뚱한 포스터를 봐도 "맞아 맞아~" 하면서 끄덕거리고.. 귀가 얇아진건지 원.. 으흐흐~

댓글 9 개 | 트랙백 1 개 (보낼곳) | 태그 thoughts


《도덕교육의 파시즘》

얼마 전 TV에서 책을 소개하는 프로그램을 보다가, "아!!" (수화로는 검지만 펴서 입에 대고 앞으로;;) 하며 저도 모르게 탄성을 낸 책을 발견했습니다. 바로 《도덕 교육의 파시즘》 (ISBN 8987671410) 입니다. 한 철학교수가 여러 도덕교사 모임에서 한 강연을 책으로 묶은 것인데, TV에서 보자마자 바로 충동적으로 구입해서 읽게 되었습니다. :)

이 책에서는, 한국의 초등/중학교 도덕 교과 교육은 도덕적인 사람을 만들기 위한 교육이라기 보다는, 권력의 말을 잘 듣는 착한 노예를 강요하는 것을 교과의 깊숙한 곳부터 깔고 있다고 말합니다. 따라서, 실제 교육 현장의 교사들은 교과서와 교육 지침에 따르지 않고, 원하지 않게 지나치게 창의적인 강의를 해야하거나 엉뚱한 다른 용도로 전용되는 것을 문제로 지적하고 있습니다. 즉, 우리의 도덕교과는 사회적인 규율과 규범들을 왜 그래야 하는지, 그렇게 함으로써 얻어지는 것이 어떤 것인지도 모르는 채, 곳곳에서 단지 열심히 권력자의 눈치를 봐서 덤비지 말고 잘 살라는 것과 같은 시대착오적인 강요들로 넘쳐다고 있다는 것입니다. 즉, 책 속에서 설명하고 있는 것 중 대표적인 것 두 개만 인용해 보자면,

삶의 보람을 말하든 자아실현을 말하든 결론은 언제나 마찬가지이다. 도덕 교과서는 끊임없이 "공동체의 발전과 복지증진에 기여"하는 것이 올바른 자아실현이며, 보람 있는 삶이라는 것을 강조하는 것이다. 그리하여 학생들을 언제라도 타인과 공동체를 위해 자기를 희생할 준비가 되어 있는 사람으로 기르는 것이야말로 도덕 교과서가 가르치는 도덕의 존재이유이다.
-- 책 p.32에서
한국의 도덕 교과서는 자기가 타인이나 사회에 대해 행할 수 있는 악에 대해서는 너무나 많이 말하면서도 타인이나 사회 또는 국가가 개인에게 가할 수 있는 악에 저항해야 할 의무에 대해서는 단 한마디도 말하지 않는다. (중략) 그런데 한국에서 예절이란 처음부터 사람들 사이의 불평등한 권력관계를 전제하고 있는 규범이다. (중략) 이를 통해 사람들 사이의 불평등한 권력관계를 제도화한다. (중략) 현실적으로 정착되어 있는 불평등한 사회관계에서 아래에 있는 사람이 지켜야 할 도덕뿐만 아니라 위에 있는 사람이 지켜야 할 도덕 역시 학생들이 배울 필요가 있다. (중략) 도덕교육은 사회적 약제에게 예절을 강요하는 만큼, 사회적 강자의 폭력과 횡포에 대해 어떻게 자기를 지켜야 할지도 말해주어야 한다.
-- 책 p.36에서

그래서, 결국은 도덕 교육은 과거 군부정권 시대의 노예화 교육의 도구로 사용되던 것이 이제는 일반인들의 상식에까지 침투하여, 이제는 개인의 국가에 대한 희생을 강요하는 것이나 권위자에 대한 절대적 복종 등을 보고 감동을 할 정도까지 전개가 돼서 결국은 최근 H교수 사태에서 말도 안 되는 국익론까지 등장할 정도가 되었다고 생각이 들었습니다.

한편, 그동안 도덕 교과서 외에도 여러 곳에서 이런 비슷한 사례를 보고서는 평소에 많은 감정을 느끼고 있었습니다. 요즘 TV에 나오는 것으로는 조그만 꼬마 여자애가 여기저기 난로를 켜고 온기를 쬐고 있는 어른들을 따라다니면서 "꺼주세요"하고 지나가는 광고가 있습니다. 굉장히 아름다운 행동을 하는 듯한 느낌을 주기 위해서 따뜻하고 아름다운 것을 강요하는 음악이 배경음악으로 깔립니다. 이 광고를 되새김해 보면, 전혀 낭비로 보이지 않고 오히려 온기를 아끼려고 난로에 붙어있다던지 난로를 쓰는데 있어서 적당한 사용이라고 생각되는 것조차도 무작정 끄기를 강요하고 있습니다. 전혀 공감을 줄 수도 없을 뿐만 아니라 도대체 낭비의 기준이 무엇인가에 대해 혼란을 주며 모든 국민을 나쁜 사람으로 몰고 있습니다.

똑같은 사례로 KTF광고 중에서 사람도 없는 지하철에서 "나 지하철이거든? 좀 있다가 전화할게"라고 하는 것도 있고.. 흐흐.. 그 외에도, 제가 아주 싫어하는 TV 프로그램으로 "만원의 행복"이라는 것이 있습니다. 이 프로그램에서는 그래도 소득이 많은 측에 속하는 연예인들이 나와서 1만원으로 주로 먹을 것 같은 생활에 꼭 필요한 곳의 지출을 비상식적으로 아끼면서 1주일을 지내는 것을 보여주고 있습니다. 그리고 그 기간이 끝나면 다시 "정상적"인 생활로 돌아간다는 것을 꿈꾸며 진행을 합니다. 그런데, 이런 비정상적인 생활로 소비를 줄이는 것은 실현도 불가능하고 제대로 된 절약의 기준을 흐릴 뿐이라고 볼 수 있습니다. 게다가, 먹을 것을 아껴서 나중에 비싼 것에 쓴다는 식의 의식을 심어줄 수도 있어서 기초 소비재 내수 시장을 위축시키고, 부동산이나 외산 제품같은 것을 사는 것이 도덕적으로 더 옳은 일인냥 무의식 속에서 국민들을 혼란시키고 있습니다.

물론 이런 것은 하루 이틀의 일이 아니라 오래 전부터 내려오던 것입니다. 90년대 초반에 이경규가 나와서 한밤중에 차도 사람도 거의 다니지 않는 밝은 곳에서 차선에 딱 맞춰서 서면, "우와~~" 하면서 칭송을 하며 가서 영웅으로 만들어주는 그런 프로그램이 그런 포맷의 전성기라고 생각됩니다. 신호등의 존재 목적은 신호등을 지키기 위한 것이 궁극적인 목적이 아니라 사람과 자동차를 사고 없이 통행시키기 위한 것인데, 목적을 잊어버린채 맹목적으로 사람이 다니던 말던 칼같이 지키는 것을 강요하며, 왜 그렇게 해야하는지에 대해서 당위성 없이 국민들의 무의식에 그런 것들을 주입시켜왔습니다. 오락 프로그램으로써 어쩔 수 없었겠지만, 지켰을 때와 안 지켰을 때의 시험/심리학적 비교를 해 보고, 밤에 통행할 때는 서행을 한다던지 등의 현실적인 대안을 제시하는 것이 옳은 일이 아니었을까 싶네요.. 이 관련된 책의 부분을 하나 인용하면,

유감스럽게도 법은 완전한 균형과 공정성에 도달할 수는 없다. 설령 어느 순간에 그럴 수 있다 하더라도 현실의 권력관계는 언제나 변하는 까닭에 법이 지향하는 균형과 공정성이 언제나 그대로 유지될 수는 없기 때문이다. 그런 까닭에 우리는 정당한 법을 마땅히 지켜야 하겠지만 법 자체를 절대시 하는 어리석음에 빠져서는 안된다.
- 책 p.296

그동안 우리나라는 개화기-일제시대-군부정권의 흐름 때문에, 언론이나 정치인 등의 권력자들은 자기도 모르게 항상 국민을 계몽하려고 시도를 하고 있습니다. 국내의 언론사들은 거의 통계용으로 가입하지 않았을까 싶은 생각까지 드는 OECD 통계 자료를 인용하여 국민들의 도덕이 해이해지고 있다며 항상 뭔가를 시킵니다. 예를 들어 얼마 전에 통계청 자료를 이용해 거의 대부분 언론의 헤드라인에 오른 한국인 책값지출 거의 '제로' 수준이라는 기사는 여기저기 비주얼한 자료가 가미되고 숫자로 채워져 있지만 전하고 있는 메시지는 "요새 니들 책을 안 읽으니 앞으로 많이 사서 읽어라."라는 단 한 마디에 불과합니다. 국민들이 책을 안 사는 이유에 대해서는 사회적인 흐름을 분석해서 영향을 미친 것들을 고치던지, 대상인 국민들에게 거부감을 주지 않고 감화를 줄 수 있는 방법으로 알게 모르게 스며드는 캠페인을 하는 등의 방법을 쓰는 것이 무작정 국민들을 비난하며 계몽하려는 시도보다는 훨씬 결과적으로 영향을 줄 수 있다고 생각됩니다. "국민들"이라는 대상은 일단 개체의 수가 매우 많기 때문에, 무슨 일에는 이유가 있고 그에 대한 이유가 논리적이라면 결과가 전통적 도덕에 옳지 않더라도, 흐름을 바꾸려면 양의학적인 결과 바꾸기보다는, 한의학에서와 같이 원인을 통제하는 것이 현실적으로 더 효과적일 것입니다.

인터넷을 통해 사람들 간의 커뮤니케이션이 활발해지고 있는 만큼 이제는 확실하게 "계몽의 시대는 갔다"고 선언할 수 있겠습니다. 각자의 마음 속의 도덕은 이제 "~해야 한다"로 끝나는 말들로 가득찬 기억이 아닌, "그래서 나는 ~한다"라는 식의 말들이 되어야 합니다. 이미 우리나라는 창의적인 지식인이 필요한 시기로 접어들고 있습니다. 단순하게 월화수목금금금하면서 교수들에 대해 주입된 예절과 복종을 강요받는 시대에 대한 자성이 이제 곳곳에서 이루어지고 있다는 점에서 이제 우리나라도 "근면-자조-협동"이 지배하는 부품으로써의 개미 사회에서 충분히 벗어나고 있지 않은가 하고 희망을 가져 봅니다. :)

(참고: 이 책은 소수의견에 속하는 편이며, 다른 윤리교육학자들의 논리적인 반론들도 여럿이 있으니 관심이 있으신 분들은 인터넷에서 검색하셔서 반론들도 같이 읽어보시면 좋겠습니다~)

댓글 8 개 | 트랙백 1 개 (보낼곳) | 태그 book thoughts


*가 와일드카드로 쓰인 이유

*(U+002A)는 꽤 오래 전부터 와일드카드로 쓰이고 있었는데, 근래에 와서는 검색엔진이나 컴퓨터와 별 관계없는 수업에서도 *가 와일드 카드로 쓰는 것이 종종 목격이 되기 시작했습니다. (와!)

과연 그 유래는 무엇일까! 곰곰히 생각해 보고 이리 저리 생각해본 결과 *의 아스키 코드값에서 그 답을 찾을 수 있었습니다.

>>> ord('*')
42

*의 정체는 삶과 우주와 모든 것에 대한 답, 42였던 것!

(Don't panic! 너무 진지하게 생각하지 마세요 =3=33)

댓글 16 개 | 트랙백 1 개 (보낼곳) | 태그 computer thoughts


To Me, C is dead.

To Me, C is dead. Except for the JIT!

[WWW]mono 프로젝트의 카리스마 넘치는 이 시대의 리더 Miguel de Icaza씨의 선언! ==> [WWW]O'Reilly 글

그래요. 제가 생각하기에도 사실은 C는 엔드유저/데스크탑/웹/비즈니스 로직 등 숫적으로 대부분을 차지하는 프로그래밍 분야를 이미 잃어버렸다고 사실 생각합니다. 컴퓨터는 갈 수록 빨라지고, 남는게 CPU 파워인데 궁상맞게 C로 열심히 구현해봐야 좀 있으면 고객이 뭐 바꿔달라고 하면 T_T 울면서 싹 갈아엎고.. (잘 짜면야 된다지만.. 잘 짤 시간을 줘야~~ 흐흐..) 아무래도 이제 C는 C#, 파이썬 같은 언어들의 기본 툴킷을 개발하기 위한 언어, JIT를 개발하기 위한 언어, 커널을 개발하기 위한 언어, 아주 일부분의 중요한 부분을 가속하기 위한 언어.. 정도로 일상에서 물러나는 날이 곧 오겠지요. 으흐흑~ 그나마 파이썬을 배워서 얼마나 다행인지~ -ㅇ-;

그나저나, mono에게 얽힐 수 있는 최악의 상황인 .NET MS API부분의 특허 문제는 정말 어떻게 될 지 궁금하군요... 그냥 갈데까지 해보자는 Ximian과 절대 안 된다하는 RedHat의 대결~~ 과연 MS가 .NET API의 특허에 대해 유료화를 선언할 지, 과연 선언한다면 언제쯤 그럴지는.. 으음.. 점쟁이한테 물어봐야..

댓글 0 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


메일링 리스트에서 가장 어려운 것은..

그동안 별로 좋지도 않은 영어 실력으로 메일링 리스트에서 몇 해 활동하면서 그래도 사전도 찾고 구글도 찾고 해서 문장 만드는 것은 하고 싶은 말은 할 수 있을 정도로는 익혔는데.. (구글님의 힘 -.-v) 아 요즘따라 또 다른 문제점을 많이 만나는군요.. 으흐

아무래도 영어 메일링 리스트에서 가장 힘든 것은 상대방이 농담하는 건지, 심각하게 말하고 있는 건지 알아내는 것 같습니다. -ㅇ-; 이것.. 상대방이 농담을 한다고 치면 재미있는 말로 받아줘야할테고.. 심각한 얘기라면 또 그에 대한 사과라던지 그런게 필요할텐데.. 농담인지 진담인지 사전적인 의미만으로는 파악 못하는 문장이 나오면 당황하며.. 막강 이모티콘 :)로 넘겨보지만.. --;;

말의 분위기 같은 것은 진짜 외국에서 좀 살아야 익힐 수 있는 것 일까요? 흐흐;;

댓글 7 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


Orkut의 성공은~

아. 2월에는 짝수날에만 뭔가 쓰고 있습니다. 2월을 기념해서~ (;;; 사실은 의도한 것은 아닌데 어쩌다 보니;; )

요즘 거의 하루종일 Orkut 돌아다니느라 어찌나 산만한지.. 코드 좀 짜다가 10분 있다가 orkut 리프레쉬 해보고 새 친구 생기면 가서 구경하고 --;; 으흐. 아주 일을 못합니다~ 싸이 중독된 친구들을 보고 "쯧쯧~~"하던 것이 부끄럽습니다. 크크;;; -.-

그 전에도 비슷한 서비스가 많았는데, Orkut만 유독 엄청난 성공을 했고, 그 이유에 대해서 한 번 생각해 봤습니다. 의견 말씀해 주세요 이히

  • IRC를 통해 전파되기에 최고의 구조다.

    • IRC는 인터넷 대중 커뮤니티 중에 가장 전파 속도가 빠르고 유행이 가장 퍼지는 것으로 알려져 있습니다.

      혹시나 안 해 보신 분들을 위해 그 이유를 설명해 드리자면, 같은 관심사를 가진 사람들이 100명~300명씩 같은 채널에서 거의 하루종일 접속해서 얘기를 하고, 그들이 여러 중복된 채널에서 놀고 있으니 전파가 안 될 수가 없는 구조인 것이죠. +_+ 그런데, Orkut은 IRC에서 전파되기에 정말 좋은 구조로 되어있습니다. 모든 페이지의 perm url을 아주 짧게 만들어서, IRC에서 붙여넣기를 하면 다른 사람도 쉽게 같은 페이지를 볼 수 있어서, 대화 중에 등장하기가 매우 쉽다는 것입니다. 게다가, 초대로만 가입이 되고 로그인 안 하면 페이지를 볼 수가 없기 때문제 쉽게 대화에서 왕따가 되는 터라, 서로 왕따가 안 되려고 막 가입해서 결국은 IRC에서는 삽시간에 퍼져버렸고, 진짜로 Orkut을 돌아다니다 보면 초기에는 EFNet, Undernet, IRCNet 등 IRC에서 온 사람들이 주종을 이루었습니다. 그 덕에 각 IRC하는 사람들의 친구들에게 일파만파.. +_+

  • 1촌과 커뮤니티를 숨길 수 없다.

    • 사이월드는 인맥을 내세워서 처음 서비스를 시작했지만, 사실상 많은 사람들이 1촌 공개를 거부하기 때문에

      인맥을 쫓아다니면서 돌 수 있는 데에는 한계가 있습니다. Orkut에서는 어떤 사람 홈페이지를 보고 있는데 5촌 관계라 하면, A > B > C > D > E 이렇게 중간에 있는 사람 이름이 모두 링크로 나와서, 아 그렇군! 하고 바로 느낄 수 있고, 아예 인맥 따라다니기 전용의 인터페이스인 View networks 모드가 있어서 진짜 재미있습니다. 커뮤니티도 각각이 동호회 성격으로 발전해버린 사이월드는 아무래도 비슷한 성격의 다음 까페류와 경쟁을 할 수 밖에 없지만, Orkut에서는 굉장히 간단하게 그냥 이름 하나 거는 수준으로 만들기도 쉽고, 수백개 가입해도 전혀 부담이 없기 때문에 커뮤니티로 관심사 네트워크를 만들 수 있다는 것도 장점으로. +_+

  • 공개된 프로필이 굉장히 상세하다.

    • Orkut에서 가입할 때 쓰는 정보의 양은 가히 상상을 초월합니다. (거의 200항목에 달하는..) 자기 소개가 따로

      필요 없을 정도로 상세한 프로필을 쓸 수 있는 가이드를 해 주기 때문에, 인맥 따라가서 프로필만 보고도 그 사람의 주요 특징 (술은 어떻게 마시고, 정치 관념은 어떻고, 가장 완벽했던 데이트는 어떤 것이고 등등..)을 파악할 수 있다는 것이 장점 +_+

  • In affilation with Google

    • 구글은 말이 필요없는 인터넷 1위 브랜드! :)

아아 그런데, Orkut의 약관에 따르면 Orkut에 제공한 정보는 구글이 마음대로 검색 서비스 같은 곳에 쓸 수 있다고 합니다. 그동안 안티구글의 대표주자로 구글 욕하는 글을 많이 써 온 [WWW]Andrew Orlowski의 글에서 우려를 볼 수 있는데, 으음.. 뭐 정보를 가져다가 맞선 사이트라도 하려는 것일까요? -ㅇ-;

댓글 12 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


체험 - 원전의 중요성

아.. 그동안 [NoSmoke]원전의중요성을 읽고도 아~ 그렇구냥~ 하고 피상적으로밖에 모르고 있었는데 원전이란 중요한 것이구나 하고 뼈저리게 느끼게 되었습니다.

보난자 원전! 0401-bohnanza.jpg

설날에 집에가서 가족들과 놀려고 보난자를 샀는데, 안에 룰 설명서 원전이! (-ㅇ-) 그동안 보드게임까페마다 도우미 설명이 다 달랐고 친구들도 다 룰이 아주 모호했던 "강제로 심어야 하는 상황에서 뭘 엎어야 하는 것인가!"에 대한 명쾌한 설명이 있군요. 흑흑~~

When a player sells beans from a bean field, he may choose any bean field with two or more bean cards. A player may not sell beans from a bean field with a signle card unless all his bean fields have just one card. In this case, he may choose witch single card to sell.

아아 2장짜리 필드가 있는 경우에는 2장짜리를 엎어야한다는 클럽 앨리스 알바의 설명이 맞았군요. 츄르륵. 페이퍼이야기 신촌점과 강남점 알바들은 젤 비싼 걸 엎어야 한다고 하기도 하고, 젤 많은 걸 엎어야 한다고 하기도 하고.. 원전을 읽으면 이렇게 해결될 것을! :) :) :)

예전에 Lost Cities랑 Munchikin도 룰을 처음에 몇개 빠뜨리고 배워서 무지 재미없게 했다가, 나중에 찾아보니 몇가지 치명적인 룰이 더 있는 것을 알고는 분개했던 기억이 있는데, 역시 이제 원전을 읽어야겠다는 다짐을 불끈 해 봅니다.

보드게임비평 시간이 선생님이 이런 말씀을 하시더군요.

"초보 때는 게임 해설집을 많이 읽지 마라. 아니, 아예 안 읽을 수록 좋다. 무슨 무슨 공략집이나 비법서도 되도록 읽지 마라. 테크닉만 늘고 말빨만 늘어서 4달쯤 하면 사기꾼 밖에 안된다. 제대로 아는 건 아무 것도 없으면서 사기만 친다는 얘기다. 카탄이 어쩌고, 루미큐브가 어쩌고, 레인보우 젠가가 어쩌고... 초보 때는 원판 설명서을 많이 접해라. 트레이딩 게임, 카드 게임, 워 게임, 블러핑 게임 등등 다방면에 걸친 원판 설명서을 많이 읽어라. 원판 설명서라고 외국 게임 것만 많이 읽으라는 게 아니라 게임 안에 들어있는 원판 설명서라면 뭐든 많이 접하라는 거다. 그래야 게이머가 클 수 있다."

깊이 공감했습니다. 우리들 대부분은 알바 설명, 친구들 설명 등으로 규칙을 습득하잖아요. 덕분에 아는 건 많아서 어느 게임이건 간에 말빨은 세울 수 있죠. 하지만 제대로 깊이 있게 얘기할 수 있는 게임이 얼마나 될까요? 어쩌면 자기 주 종목 게임에 대해서도 잘 얘기 못하잖아요? 누구나 카탄을 떠들지만 실제로 <카탄 룰 부클릿> 읽어본 사람은 얼마 안되잖아요. <보난자 룰 부클릿>도 마찬가지구요.

([NoSmoke]원전의중요성에서 응용 :) )

댓글 4 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


기여입학제

[WWW]한겨레 기사에 따르면 연대에 이어, 고대, 게이오, 와세다도 기여입학제를 공동으로 추진할 뜻을 밝혔다고 합니다. (이들 대학들은 한-일 4개대 경기대회 멤버이기도 합니다)

당연히, 많은 수의 시민단체와 타대학 교수협의회 같은 곳에서는 학벌주의 조장, 대학의 이기주의적 행동, 돈으로 다 되는 세상 만들기 같은 이유를 들면서 반대를 하고 있습니다. 그러나, 한편 해당 학교들의 재학생들이나 교수들은 대체로 환영하는 입장인데, (작년인가 재작년의 총학생회도 찬성했었는데, 지금 총학은 어떤지 모르겠군요) 저도 전적으로 기여 입학제에 찬성합니다! 꺄아~

우선, 기여입학제는 고등학생들과 입시관련 학부모들에게는 굉장히 불평등을 느끼는 일이 될 수도 있습니다. 그렇지만, 기여입학은 당연히 정원외이며, 전체 정원에 비하면 극소수 (0.5%도 안되는..)에 불과하기 때문에 입시에 영향을 특별히 많이 준다고 볼 수도 없고, 그들의 직계존속들이 그정도의 기여를 했다면 당연히 보상을 해줘야 하겠다고 봅니다. 므흐;; 사실 20억원 있는 사람이라면 거의 바보라도 과외비 때려부어서 대학을 보낼래도 보낼 수 있을만한 돈인데, 과외비 낭비하는 것보다는 그냥 차라리 들여보내주고 대학 발전에 기여하는 편이 낫지 않을까 싶군요. 돈많고 실력 안 되는 학생이 한 명들어와서 똑똑하고 돈 없는 학생들 200명이 여유있게 학교를 다니거나, 2000명이 보다 나은 환경에서 수업을 들을 수 있다면 당연히 좋지 않을까 싶군요 -.-; 맨날 150~200명짜리 대형강의만 듣는 공대생들 정말 불쌍합니다~ 10~15명짜리 토론식 강의 들어보니 정말 눈물 나더군요. 흑흑 이렇게 재미있을 수 있는 수업을 그렇게 재미없게 했다니..

다른 학교의 교수들도 많이 신경을 쓰고 있는데, 아무래도 기여를 받기 힘들만한 학교에서는 연고대의 기득권 굳히기식 학벌주의라고 볼 만하기도 하지만, 장기적으로 우리나라에 국제적 경쟁력이 있는 학교를 몇몇 만들기 위해서는 어쩔 수 없지 않을까 싶군요. 서울대같이 엄청난 재정지원으로 정부가 학교를 몇개나 유지할 수 있겠습니까. 그냥 기여금으로 자립할 수 있는 학교들을 몇 개 키워주는 것이.. 으흐흐... 아무래도, 유능한 연구자와 교수들의 수는 한정되어있다는 점에서, 타대학 교수들이 원하는 대로 국내 사립 대학들의 하향평준화를 단행한다면, 몇십년 뒤에는 4년제 학교들이 다같이 직업양성학교로 변신해서, 진짜 학문이 하고 싶어서 대학가는 사람은 외국으로 날아가야 할 일이 생기지 않을까 싶군요. -.-; 역사적으로, 이공계 대학들은 재정확충이 학교의 질적향상에 엄청난 도움이 되었습니다. 현재의 연대도, 문과대, 상경대, 법대의 수입이 이공계로 지원되고 있는 형편이긴 하지만, 40~50년대 분자생물학계의 기초를 닦은 유명한 대학들은 단백질의 분리를 위한 초원심분리기나 아미노산 연구에서 15N의 관찰을 위한 질량분광계, 입자가속기 같은 초고가의 장비의 유무에 따라서 소속 연구자, 학생들의 성과가 결정되다시피 했고 여전히 많은 과학 분야에서 그런 편인 것을 생각해 보면 역시 기여입학제 원츄입니다~*

그나저나, 연대는 맨날 돈생기면 꽃밭 만들고 괜히 쓸데없는 공사 막 하는데 -.- 제대로 된 데 좀 공개하면서 쓰면 좋겠군요..

댓글 3 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


보다 과학적이고 덜 모순적인 "부모성 함께쓰기"

일부 여성계에서 여남평등(..)을 위해 주장하는 것 중에 "부모 성 함께 쓰기"운동이 있습니다. 아버지의 성과 어머니의 성을 같이 써서 일단은 성을 2글자로 쓰고 그 다음엔 4글자로 쓰고 그 다음엔 8글자로 쓰고.. 해서 24대를 내려가면 16777216자의 성을 갖게되는 기본 원리인데.. 자체 문제로 인해 많은 사람들의 조롱을 받아 왔던 것이 현실입니다. 그 다음 세대에서 부나 모계 성을 하나를 버리고 다른 성을 하나 갖는 것도 또한 말이 안 되기에 어쩔 수 없는 문제죠.. 1은 아무리 곱해도 1이지만 2는 곱하면 계속 늘어나니..

또한, 여성계의 부모성 함께 쓰기는 또 다른 문제가 하나 있는데, 1세대가 가지게 되는 모계 성은 결국 따지고 보면 외할아버지 즉 어머니의 부계성이 되게 돼서. 위로 올라가면 결국은 남녀평등은 택도 안되는 문제를 갖게 됩니다. 즉, 할머니와 외할머니의 성은 무시된 것이지요. 할머니들의 권리도 존중해 줘야 하는 것 아니겠습니까? '.';;;

저도 또한 부계의 성만 쭈우욱 물려 받는 것은 아무래도 불합리하다고 생각하고.. 그래서, 우연히 생각난 좋은 해결책을 한번 제시해 보려고 합니다. 흐흐.. 사람의 세포 속에서 포도당 에너지 효율을 높여주는 구성요소인 미토콘드리아(mitochondria)는 진화적으로 인간과 공생하는 관계로 핵 DNA와는 별개로 독립되어있는데, 정자는 인체 외부에서의 감염을 막기 위해 핵 DNA만 후손들에게 전달하게 됩니다. 따라서, 미토콘드리아 DNA는 순수 모계 유전으로만 전달되게 되고, 이미 미토콘드리아 DNA를 이용해서 현생 인류의 만년전 모계 조상은 몇명이었나를 조사하는 등 많은 응용이 이뤄지고 있습니다. 특히, 미토콘드리아 DNA에서 특별한 역할을 갖지 않은 쓰레기 영역만 모여있는 "조절 영역"이라고 불리는 곳은 돌연변이가 아주 일정한 속도로 일어나며, 다른 유전적 솎아내기가 작용하지 않는 관계로 모계 추적에 아주 큰 역할을 한다고 합니다. 그래서, 모계성을 미토콘드리아 DNA를 이용해서 그동안 한국 사회에서 수천년동안 무시되어 왔던 모계성을 한꺼번에 수천년전으로 돌려놓는 것입니다! (꺄아아~) 음.. 쉽게 납득이 잘 안되신다구요~! 에.. 그러니까.. 남자는 결국 특별히 입양이나 부정만 없다면 일반적인 상태에서는 성이 쭈우우우욱~~ 부계로 올라가면 같은 성입니다. 여기서 여성계의 불만은 모계로 성이 없다는 것이니. 결국은 미토콘드리아로 부계성 대부분이 결정된 1000년 전쯤으로 올라가서 1000년전 모계를 기준으로 한국인 전체의 모계성을 다시 결정하면 되는 것입니다. 그러면, 현재 살아 있는 사람들도 모두 공평하게 진짜 모계 성을 찾게되는 것이고, 할머니, 외할머니도 완전히 존중을 받으며 후세도 올바른 모계 성을 가지게 되는 것이죠. 만약 여성계에서 지금 주장하는 대로 하면, 3세대로 내려가더라도 모계로 10촌이면 다른 성을 갖게 되는데, 이 문제를 완벽하게 해결!!

구체적으로는 대략 1000년 전쯤으로 올라가자면, 대충 미토콘드리아 DNA 조절영역의 돌연변이가 1개 다른 것까지는 용인되지만 2개부터는 다른 성으로 간주하면 됩니다. 따라서, 적당한 대상 인구를 기준으로 기준 미토콘드리아 DNA별 성을 지정해서 그 성으로 각각 모계성을 나눠주면 되는데, 모계로 확실하게 같은 집안이면 가족 중 한 사람만 검사 받으면 나머지도 다 같은 성을 가지면 되겠죵. 또한, 한자성으로는 사용되지 않는 음절들 (예를 들면, '바', '그', '힛', '뽀')을 모계성으로 표준화 한다면, 부계성과 대충 맘대로 어울리게 섞어도 구분할 수 있게 되므로, 성의 순서에 대해서도 싸우지 않아도 됩니다. 흐흐..

.... 뭐 실현하자면 어렵겠지만... 그래도, 현재 여성계가 주장하는 부모성 함께 쓰기의 문제점은 대략 다 해결했다는 생각이 듭니다. --;;;;;

댓글 8 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


한국에서 오픈소스하기

[WWW]GnomeKorea:자유소프트웨어와한국인을 보고 생각나는 것이 있어서 몇자 적습니다. :) (첫 트랙백을 보낼 절호의 기회인데 대상이 위키라 못 보내서 아쉽군요 -ㅁ-;)

그동안 크게 내세울 것은 없지만 2~3년 정도 오픈소스 개발을 접해 본 느낌으로는 위 글의 내용에 많이 동의할 수 있었습니다. 세계 최고 인터넷 강국이다, IT분야 4위 산업국이다 등등 화려한 수식어는 많지만 사실 오픈 소스 세상에서는, 한국 사람보다 오히려 훨씬 인구도 적고 정보망 수준도 열악한 우크라이나, 체코, 타이 같은 곳 사람들을 훨씬(적어도 100배 이상) 많이 보게 되는 것을 보면 우리의 문화에 확실히 오픈 소스와는 맞지 않는 특징이 있는 것은 확실한 것으로 느껴집니다. 그렇다고, 한/중/일 동아시아 고유의 특징으로 몰아가기엔, 한국을 제외한 중국, 대만, 일본에서는 참여하고 있는 사람이 충분히 많기에...

다른 문화적 특징들은 그놈한국위키의 글에 충분히 논의가 되었지만, 몇 가지는 정말 절실하게 느껴와서 말하지 않고 넘어갈 수 없네요~ 으흐흐;;

  • 불만을 얘기하지 않는다.

    • 오픈 소스 프로그램은 아무래도 전담 테스터가 없는 경우가 많아서 개발자가 주로 쓰는

      기능이 아니면 버그가 있더라도 발견되지 않는 경우가 많은데, 사용자들은 사용 시에 문제가 발견하더라도 그냥 주변 사람들에게만 불평을 한 뒤, 정작 개발자들에게는 어떤 문제가 있었다는 것을 알려주지 않는 경향이 있는 듯 합니다. 그리고는 다음 버전이 나와도.. "또 버그네!" 하고 불평을...

  • 매뉴얼이 무용지물.. 고객센터로 변신...

    • 매뉴얼이나 README같은 문서를 아무리 열심히 작성해도 읽지 않습니다. 처음에는

      영문으로 써서 안 읽나보다 하고, 한글로 썼는데도 여전하더군요.. 설치하던 도중 대부분의 사람들이 겪을만 할 문제가 몇 개 생각나서 README에 써 주면, 여지없이 릴리즈 하자마자 수십~수백명의 사람이 사적인 접촉 경로(메일이나 IRC)로 그에 대해 물어옵니다. 그것도 사실은 프로그램과 관계있는 것이면 그나마 다행인데, 많은 수가 크론탭 고치는 방법, 압축 푸는 방법, 라이브러리 경로 주는 방법 같은 기초적인 질문들을 해 옵니다. 물론 매번 시간도 오래 걸리고 가끔 원격쉘로 접속해서 직접 세팅해 주기를 요구하기도 합니다.

      새로운 오픈소스 프로그램을 만드는 것은 정말 재미있고 좋은데.. 새 프로그램을 만들 때마다 이런 질문과 지원에 답해야 할 기회가 많아진다는 것이 새로 뭔가 만들 때 의욕을 꺾습니다. ㅠ.ㅠ

  • 패치를 보내주세요

    • 이 경우는 그래도 버그 레포트는 되는 경우라 1번 보다는 훨씬 편하게 느껴지는데요.. :)

      저는 개인적으로 혼자하고 있는 프로젝트도 10개가 넘고, 회사 일도 늘 있기 때문에 항상 특정 오픈소스 프로그램에 매진하기는 어렵습니다. 그리고, 자발적이고 능동적인 오픈소스 특성상 자기가 하고 싶지 않을 때나 다른 더 재미있는 것이 있을 때는 손이 안 가게 마련입니다. 그런데, 가끔 어떤 분들은 버그를 발견하고서는 계속 고쳐달라고(그것도 당장)합니다. 저는 소프트웨어를 판매하거나 지원을 약속한 적이 없는 데 말이죠.. 자꾸 재촉하시는 경우에는 서로 민망해서 제가 다른 것 하고 싶은 작업이 있어도, 그냥 어쩔 수 없이 고쳐드리는 경우가 있기는 하지만, 그래도 내켜서 하는 작업이 아니라 아무래도 코드 품질도 안 좋기 마련입니다. 패치를 보내주세요. 패치를 보내주시면 오픈소스 프로젝트를 진행하는 사람들도 문제를 빨리 고칠 수 있고, 어떻게 되는 것을 원하는 지 말로 길게 설명하는 것보다 훨씬 나을 수도 있습니다. 물론, 패치를 위해서 프로그램을 뜯어보는 동안, 개발자가 사용한 디자인이나 기법들도 훔쳐볼 수 있고 실력향상에도 많은 도움이 된다는 것은 덤! :)

    꼭 제 프로젝트에 한정된 얘기는 아니고 근처에서 지켜본 몇몇 프로젝트에서 느꼈던 점들입니다. 물론 우리나라 오픈 소스 사용자분들이 모두 이렇다는 건 아니구요~ 흐흐;; 사실 늘 좋은 버그 레포트 보내주시고 패치 보내주시는 분들도 많지만~ 아무래도 사람이 안 좋은게 더 눈에 띄게 돼서, 그게 더 기억나게 되는게 아닌가 싶네요 ^.^;; 주제넘게 투덜댄 느낌이 좀 있어서 찝찝하긴 한데요 이히.. 뭐 다 같이 잘 살아보세~ 차원에서 -o-;;

    • PuTTY로 유명한 Simon Tatham씨가 쓴 "버그 레포트 효과적으로 하기"입니다. 영어로 작성되어있는데, 이 내용 대로만 버그를 보고한다면, 안 고쳐줄 개발자가 없겠죠~ :) http://www.chiark.greenend.org.uk/~sgtatham/bugs.html

    댓글 4 개 | 트랙백 0 개 (보낼곳) | 태그 thoughts


    누구?

    장혜식 (Hye-Shik Chang)
    내일을 사랑하는 소년(!)