잡기

레이스 컨디션

paedros 2004. 4. 8. 02:39
밤 아홉시 무렵, 보름달이 멋지게 한강을 비췄다. 술이 깬다. 이 맛이다. 고도로 발달한 문명 마저도 이런 잔재미를 제공하지는 못했다.

커넥션에 실패했을 때 다음 커넥션을 형성하기 위한 커넥션 시도 간격은 자연대수나 약간 더 지각있게 하려면 피보나치 수열을 따른다. 옛날에 왜 그래야 하는가 이유를 알고 있었으나 잊어버렸다. 일일이 다 기억하고 있으면 머리가 터지는데 아직 뇌일혈로 쓰러지지 않은 이유는 바로 그 망각 때문이었다. 자연에 방만하게 존재하는 수열이므로 이루 말할데 없이 '자연스럽기는' 한데, 커넥션 시도를 한다는 것이 영 마음에 들지 않아 다른 방법을 찾아보기로 했다. 문제제기를 내가 하고 심사숙고하는 척 한 다음 곧바로 wru 프로토콜을 만들었다. 이름이 마음에 안 들어 aitp로 바꿨다. 이니시에이터가 브로드캐스트 메시지를 날리고 그것을 받은 클라이언트/서버는 <identify me="reallydumbcontrolunit" version="3.14" ip="162.2.88.45" status="sucked"/> 같은 패킷을 udp로 날려주는 것이다. 상당히 바보스러워 보이는 커넥션 리트라이 삽질이 없어졌다. 여기까지 들어본 서버 프로그래머들은 어 그거 dhcp나 시스코의 핫플러깅 프로토콜, 또는 netbios의 마스터 브라우저 일렉션과 유사하다고 맞장구를 친다. 누가 모르나? 모델이 그건데. 코딩이야 몇 줄 되지도 않았다. 문제는 토폴로지와 아키텍쳐, 즉 수사적으로 말하자면 디자인, 폴리시 매터지. 그런데 프로토콜 이름이 왜 그 모양인지 궁금해 하지 않았다. who are you protocol, anyone in there protocol 등 귀엽고 이해하기 쉬운 것들인데 디스트리뷰션 서버, 캐스케이딩 서버, 마스터 컨트롤러 등등 잡스러운 것들에서 하드웨어의 리비전에 따른 재분배와 로드 밸런싱에 사용할 것이다. 문제는 그것이 미션 크리티컬하다는 점. 혈관이 점점 굵어지면서 나날이 깡이 늘어나는 것 같은 느낌이다. 펀다멘탈이 워낙 튼튼해서 무슨 프로그램을 짜던 일주일 이내에 끝난다고 조사장이 주장했다. 사실 그 설계를 만드느라 작년 여름 2개월 내내 닭질했다.

서버 설계를 처음 시작할 때 누구나 한번쯤은 배웠을 법한(옛날 프로그래머들은 워낙 무식한 돌대가리들이 많았는데 요즘도 zdnet이나 마이크로소프트웨어 따위를 보면 설계를 등한시하고 코딩하면서 손가락 움직이는 대로 생각하다 보면 만사가 잘 된다고 믿고 있는 작자도 있어 놀라움을 금치 못했다. 사실 이 글을 그의 글을 보다가 어처구나가 없어서 반론을 쓰려다가 써서 뭐하나 하는 생각이 들어서 그냥 잡담으로 돌아섰다. 어쩌면 그는 천재라서 그럴지도 모르겠다. 설계는 코딩을 쉽게 해준다. 코딩을 하면서 설계를 하는 프로그래머계의 모짜르트같은 사람이 없을 수야 없겠지. 하여튼 부럽기도 하지만) 큐잉 이론이라고 있다. 임계 영역에서의 작동을 모델링하는 방법인데 큐잉 이론을 프로파일링, 모델링하는 과정에서 문제를 정의하다 보면 해결책도 나온다는 것 외에 코딩에는 밥풀데기 만큼도 도움이 안되는 이론이지만 실세계에서 시리얼포트나 네트웍 드라이버를 만들 때, 하다못해 스트리밍 서비스를 만들려면 집고 넘어가야 하는 것이었다. 용감하고 무식한 프로그래머들이나, 하다보면 설계가 저절로 나온다는 대단한 모짜르트들은 그런 것은 신경 쓰지 않았다. 부럽다.

코딱지만한 컨트롤러에 워낙 여러가지 날테크닉들을 덕지덕지 붙여놓은 덕에 폴트 톨러런트를 구현하는 리지드 서버를 만들려고 반쯤은 신경증, 편집증 환자가 되어 있었는데 많은 사람들은 그 사정을 모르고 내 현재 상태를 단지 '바쁘다'라고 규정했다. 왜 바쁜지 궁금해 하지도 않았고, 무순단 시스템을 데모하면서 내가 무슨 일을 하고 있는지, 사랑과 관심을 보여주지 않는 사람들 때문에 잠시 신경질이 났다. 사랑과 관심은 엉뚱한 곳에서 왔다. 신기술 아이디어 어쩌구 하는 걸 주관하는 무슨 정부 기관에서 날더러 아이디어를 담은 사업계획서를 보내달라고 전화했다. 별일이야. 돈도 몇푼 안주는 거라 몇 가지 적어서 유사장에게 넘기고 그가 쓴 글을 코치했다. 자금을 타내면 나도 좀 떼어주길 기대해 본다. 창업엔 관심 없다.

어제 술을 잘못 먹어 아침부터 속이 쓰리고 골이 지근지근 아팠다. 오랫만에 본 유사장은 내가 속이 안 좋다고 말하니까 그럼 돈까스를 먹으러 가잔다. 애절한 표정으로 속 쓰린데요 라고 말하니, 아, 그 집에 스파게티도 파니까 그거 먹으면 될꺼야. 라고도 말했다. 자상한 유사장님은 속이 정말 메스껍지? 하면서 담배도 권해줬다. 실시간으로 정감이 오가는 우리 사이의 대화란 늘 그 모양이었다.

마누라가 잘 놀다가 내일 집으로 돌아온다고 연락했다. 약간은 너저분해서 두서가 없는 방 안을 물끄러미 바라보았다. 자유, 프리스타일, 그런지 등 좋은 말들이 여럿 떠올랐다. 한 일주일, 소파에서만 잤다. 마누라는 방안의 자유스러움, 자연스러움을 증오했다. 화분에 물을 줬으니 내가 할 본분은 완수한 것 같다. 마누라와 함께 산다는 것은 그래야만 하는 방 안의 자연스러운 질서를 무시하고 고상함으로부터 등을 돌리는 행위다. 결혼을 염두에 두고 있는 프로그래머들을 위해 마누라를 피해 동굴에서 예술을 창조했던 크로마뇽인들 마저도 즐겨 입에 담았던, 마음에 새겨둘만한 경구 하나; class inherit from super class, freedom derrives from absence of wifeness.

당은 민노당, 인물은 열우당을 찍을 것이다. 민노당의 38대 공약 중에 원전 반대가 있었다. 이유같은 것은 없었다. 어쨌던 의외로 나와 같은(비슷한) 쇼핑을 하는 사람들이 많아 놀라웠다. 다들 무슨 생각을 하면서 사는걸까? 나? 난 오직 마누라 생각 뿐이다. 비합리성의 대마두인 마누라 실존의 부조리함, 마누라 부재의 한계효용. 마누라의 부당한 요구가 세계의 상식에 부합한다면 내 존재 가치는 어디에 있는가? 나는 여전히 좆도 아닌가? 마누라는 왜 내 담배를 증오하나? 리팩터링 마누라 등등.

하지만 만약 그게 나오기만 한다면 민노당이나 열우당 대신 인공지능을 찍을 것이다. 절대권력이 절대부패를 낳고 평범한 권력이 평범한 부패를 낳는 등 악순환이 끊이지 않는다면 국회의원 대신에 진정한 대의 민주주의(내지는 직접 민주주의에도 완벽하게 써먹을 수 있는)를 실현하기 위해 여론을 수렴하고 안건에 대한 의사 결정을 지원할 수 있는 널리지 베이스, 전문가 시스템, 인공지능 에이전트를 만들어 '저렴한 비용'으로 청렴한 국정을 실현할 수 있다는 얘기가 왜 뜬구름 잡는 비현실적인 얘기로 간주되는 것일까. 원숭이만도 못한 지능을 가지고 있다고 일컬어지는 국회의원 보다는 낫지 않을까? 시민에 의해 업그레이드 되는 인공지능 국회의원 에이전트 말이다. 주변 여론의 부정적인 견해는 무시하고 하다 못해 커먼센스 베이스나, 팩트 네트웍으로부터 귀납추리를 하거나 진화연산망을 사용하여 무수한 가능태를 경쟁시켜 타당한 결론을 도출할 수 있는 시스템에 관해 본격적으로 떠들어 보려고 했다가, 마침 주변에 한가한 프로그래머가 한 명도 없어 관뒀다.