전체 글 239

아인슈타인과 괴델은 무슨 얘기를 나누었을까?

wiki를 따라가다가 What were Einstein and Gödel talking about? 을 보았다. 오랜만에 Adleman 교수 강의 들을 때가 생각난다. Adleman 교수 20년 전과 그리 변한 것 같지 않다. 조금 더 나이 먹어 보이고 모자를 쓰지 않을 것 같고. 내가 가까이서 본 진짜 천재에 해당되는 사람이다. 이런 생각을 해 본다. 우리에게 모짜르트, 아인슈타인, 괴델같은 사람이 없었으면 어땠을까? 세상 그래도 잘 돌아갈 것이다. 그렇지만 조금은 더 허전할 것 같다. 그와 같은 사람들은 우리에게 주어진 선물이 아닌가 싶다. 또 만약 외계인을 만난다면, 이 사람들이 우리와 같은 종(種) 이라는 것을 자랑할 수 있고. Just thinking.

생각하며 살자

웹에 대해 생각하며 살자고 다짐하면서 어디서부터 시작하면 좋을가 하며 생각하다 혹시나 하고 웹을 검색해보니 "Thinking on the Web : Berners-Lee, Gödel, and Turing" 이라는 책이 있었다. 제목이 "웹에 대해 생각하기" 이고 내가 무서워하는 사람들 이름이 있어 흥미가 생겼다. 저자(H.P.Alesso, C.F.Smith) 들은 이 책에서 웹지능 (Web Intelligence), 그러니까 웹이 어떻게 지능적으로 변모할 수 있을가를 다루고 있다. 지금까지 웹지능하면 semantic web, 또는 Web2.0에 약간의 heuristic 측면을 갖는 기능을 넣어 얘기하곤 했다. 이 책도 기본은 여기에 크게 벗어나지 않는 것 같다 (지금까지 80 쪽을 읽음). 하지만 이 책..

꾀를 부리다 다친 일

살다보면 낯 뜨거운 잘못을 할 경우가 있다. 잘 몰라서 할 경우도 있고 또 잘못된 것임을 알면서도 괜찮겠지 하며 하는 때도 있다. 15년 전 즈음, 그러니까 90년대 초에 내가 대학원 알고리즘을 들을 때 일이다. 중간고사가 끝난 후 조그만한 프로그램 구현 숙제가 나왔다. 당시 나는 한 주일에 몇 개의 논문을 보고 지도교수, 동료와 토론을 해야 했고 또 이빨까지 아파 치과에 다니느라고 왠만한 것이라면 가능한 편히 넘기고 싶은 심정이었다. 숙제가 나왔을 때는 당연히 해야지 하고 마음 먹었지만, 더 중요한 것 때문에 뒤로 미루다 보니 어느새 내일이 제출일이었다. 그래서 낸 꾀가 지금은 저 아래 피대에 있는 후배것을 베끼는 것이었다. 그 때 내 생각은 숙제의 알고리즘이 단순하기에 서로 서로 비슷할 것이고 하니 ..

Round Here 2007.02.05

간단한 페이지랭크 프로그램

간단하게 페이지랭크를 구현해 보았다. 원래는 세르게이와 브린이 한 것 같이 제대로 데이터구조도 갖추어 전반적인 검색 구성요소들을 구현해 보려고 했는데 생각같이 잘 되지 않아 몇 일 생각해 보고 그만두기로 했다. 이러다가는 framework을 만들겠다 (이것은 핑계고 사실은 프로그래밍이 잘 될 것 같지 않음). 나중에 필요하면 우리 직원들 시켜야지... 두세명이서 반년이면 될까? 여기에 첨부한 녀석은 그만 두기로 한 날 아침에 시작해서 점심 먹으로 갈 때 거의 완성한 것임. 나는 사실 웹검색기술을 잘 모른다. 관련 글들을 본 것도 작년 11월이 처음이다. 구글과 페이지랭킹 얘기는 전부터 알고는 있었지만 공부해 본 적은 없었다. 그러다가, 내가 가르키는 컴퓨터구조에서 구글의 파일시스템과 Mapreduce 처..

구글 검색기술과 페이지랭킹

작년말 발표했던 구글 검색기술과 페이지랭킹이다. 참고자료들은 프리젠테이션에 나타낸 것과 같다. wikipedia 가 매우 좋은 출발점이라 생각한다. 모든 참고자료들은 인터넷에서 구할 수 있다. 대부분의 논문들이 그렇듯이 세르게이와 페이지의 글들도 구글기술의 세부는 밝히지 않고 있다. 그렇지만, 엔지니어링에서는 종종 이런 세부기술의 우월성에서 승부가 판가름 난다. 가령 생각없이 짠 프로그램과 성능이 뭐라는 것을 알고 짠 프로그램의 성능 차이는 1000 : 1 나는 경우도 종종 있다. 내 경우 30대 초반에 spatial convolution이 많이 필요해서 기존 라이브러리에 있는 것을 사용했는데 한번 돌리는데 몇 시간이 걸리곤 했다. 도저히 졸업할 것 같지 않아 이를 FFT로 구현했는데, 이것으로 돌리니 ..

Joshua Bloch의 API 강의

Josh Bloch가 말하는 좋은 API는 어떻게 만들어야 하는 가이다. 영어지만 발음 무지 깨끗하다. 왠만한 아나운서보다 낫다. Bloch는 카네기멜론 전산학 박사 출신이고 현재 구글에 있다. 카네기멜론 대학은 미국 피츠버그 교외에 있다. 전산학이 세다. 아담하다. 나는 거기서 대학원 컴퓨터구조와 운영체제를 들었는데 혼났다. 재미도 있었다. 이것 때문이었는지, 전자공학에서 전산학으로 빠졌다. Bloch는 JAVA를 만든 핵심인물 중 하나이고, 강의에도 JDK 예를 든다. 한 예로, JDK1.0 일 때 해시함수를 만들었는데 내부까지 보이는 황당한 구조로 만들었다고 한다. 나라도 그렇게 만들지는 않았을 텐데. 좋은 JAVA 프로그래머가 되려면 Bloch가 쓴 책을 보면 좋을 것이다. 나는 읽지 않았다. 물..

구글 성공의 진짜 이유

첨부한 글은 작년 말 야그2.5 발표할 때 함께 발표한 것이다. 내용은 발표 제목에 나타내었듯이 구글 (성공)에 관한 주관적인 나의 생각이다. 7년 남짓 구글을 쓰면서, 얘기를 들으면서, 크는 것을 보면서 느낀 그대로이다. 경영자로서 나는 그들의 성공에는 여러 요소가 있다는 것을 안다. 그렇지만... 구글은 영리하고 치밀한데에 더하여 주관이 있다. 그들의 주관을 약간의 부러움을 가미해서 주관적으로 그들 성공의 가장 큰 이유라고 바라보았다.