게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
제프딘의 진실
게시물ID : programmer_3429짧은주소 복사하기
작성자 : 켈트
추천 : 1
조회수 : 2382회
댓글수 : 0개
등록시간 : 2014/05/22 00:03:06
제프 딘은 구글의 전설적인 프로그래머이면서, 빅테이블이나 맵리듀스를 개발한 사람이라네요.

그래서 예전에 척 노리스 시리즈를 패러디해서 제프 딘의 진실 같은게 유행하나봐요. 

http://www.quora.com/Jeff-Dean/What-are-all-the-Jeff-Dean-facts

여기서 퍼왔습니다. 해석은 제가 허접하지만 제가 직접...


그의 Google 입사 인터뷰에서 P=NP가 참임을 증명해보라고 했다. 그는 “P=0 또는 N=1”이라고 대답했고, 면접관들이 채 다 웃기도 전에 Google의 공개 키 인증서를 확인하곤 화이트보드에 개인키를 썼다.

컴파일러는 그에게 경고를 날리지 않는다. 그가 컴파일러에게 경고를 날린다.

2000년대 후반에 그가 코드를 작성하는 속도가 40배나 빨라졌는데, 이건 그가 키보드를 USB 2.0으로 업그레이드 했기 때문이다.

그는 코드를 커밋하기 전에 한번 빌드해보는데, 이는 컴파일러와 링커에 버그가 있나 확인해보기 위해서다.

모든 포인터는 그를 가리키고 있다.

gcc –O4는 코드를 그에게 보내서 다시 쓰게 하는 커맨드다.

그는 피보나치 수열의 203번째 숫자를 1초 내에 대답했는데 이 때문에 튜링 테스트에서 한번 떨어진 적 있다.

진공에서 빛의 속도는 시속 35마일(약 56km)이었던 적이 있는데, 그가 1주일 동안 물리학을 최적화하자 지금 알고 있는 빛의 속도로 돌아왔다.

그는 1969년 12월 31일 오후 11시 48분에 태어났으며 12분 만에 그의 첫 번째 타임 카운터를 구현했다.

그는 Emacs나 VI이 아니라 zcat으로 코드를 작성하는데 그게 더 빠르기 때문이다.

그가 이더넷 프레임을 보내면 아무런 충돌도 일어나지 않는데, 그것은 충돌할 수 있는 프레임들이 나온 곳의 버퍼 메모리로 돌아가기 때문이다.

그는 O(1)에도 만족을 못해서 최초로 O(1/n) 알고리즘을 만들었다.

그가 휴가를 떠나면 며칠 동안 Google의 서비스들이 이상하게 제대로 동작하지 않는다. 이건 진짜 사실이다.

그는 어쩔 수 없이 비동기 API를 만들어야 했는데, 이는 그가 함수를 최적화한 나머지 그게 불리기도 전에 값을 반환했기 때문이다.

그가 소프트웨어를 디자인할 때는, 일단 바이너리 코드로 짠 후에 문서화를 위해서 소스코드로 짠다.

그는 O(n^2) 알고리즘을 쓴 적이 있다. 이는 Traveling Salesman 문제를 위한 것이었다.

그는 단 한번의 printf()를 사용해서 웹 서버를 구현했다. 다른 엔지니어들이 수천 줄의 주석을 달았지만 여전히 어떻게 동작하는지 정확히 모른다. 그 프로그램이 현재 Google Search의 프론트-엔드 시스템이다.

진실: 그는 모든 바이너리 사이즈를 3% 줄이고 그와 동시에 파이선 코드하나 없이 단 한 번의 변경사항 만으로 우선 순위가 낮은 파이선 버그를 최우선 순위로 바꿨다.

그는 Connect Four 게임에서 당신을 이길 수 있다. 단 3턴만에.

만약 당신이 짠 코드가 정의한대로 동작하지 않는다면 Sementation Fault와 손상된 데이터를 얻을 것이다. 그의 코드가 정의한대로 동작하지 않는다면 유니콘이 구름 속에서 나와 아이스크림을 나눠준다.

그가 프로파일러를 동작시키자 루프들이 겁에 질려서 다 풀려버렸다.

그는 그가 PI의 숫자들(3.141592...)에 숨겨놓은 조크를 수학자들이 발견하길 기다리고 있다.

그의 키보드는 단 두 개의 키 밖에 없다. 0 과 1.

그는 잠을 잘 못 이룰 때는 양을 맵리듀스 한다.

그가 mp3를 들을 때는 mp3 파일을 /dev/dsp 경로에 cat한 후에 머릿속에서 디코딩한다.

벨이 전화기를 발명했을 때 제프 딘으로부터 부재중 전화가 와 있었다.

그의 시계는 1970년 1월 1일부터 초로 표시되어 있다. 그는 절대 늦지 않는다.

그는 프로그래밍 수업을 ‘cat > /dev/mem’으로 시작한다.

어느 날 그가 랩탑 대신 Etch-a-Sketch를 들고 나갔다. 랩탑을 깜박한 걸 깨닫고 다시 집으로 돌아왔는데, 그 와중에 가져간 Etch-a-Sketch에는 테트리스를 프로그래밍했다.

그는 바지를 입을 때 한 번에 한 다리씩 넣지만, 만약 그의 다리가 더 많았다면, 그의 바지 입는 행동이 O(log n) 으로 실행되는 걸 알게 될 것이다.

그가 비트 쉬프팅을 매우 강하게 하자 다른 컴퓨터에서 끝나있었다.

Google Search는 2002년에 몇 시간동안 다운되었고, 그가 손으로 쿼리들을 처리하자 검색 품질이 두배로 향상되었다.

mantri@mantri-laptop~$  rm -r /
rm: cannot remove root directory `/'
mantri@mantri-laptop~$ su - jeffdean -c "rm -r /"
I am extremely sorry. Removing root directory...

x86-64 스펙은 몇 개의 개인적인 사용을 위한 문서화 되지 않는 명령을 포함하고 있다. 그것들은 실제로 제프 딘이 사용하기 위한 것이다.

도널드 크누스 (저명한 컴퓨터 과학자. 알고리즘 분석 분야의 아버지. The Art of Computer Programming의 저자)는 The Art of Computer Programming의 사본을 Google에 보냈고, 제프 딘이 거기에 사인하고는 돌려주었다.

리차드 스톨먼(GNU Project 및 자유 소프트웨어 재단의 설립자)은 제프 딘의 자서전이 플랫폼 독점적으로 나온다는 소리를 듣고 Kindle을 샀다.

당신이 포인터 3개를 각각 아인슈타인, 오일러, 튜링으로 이름 짓은 후 주소 참조를 해제하면 모두 제프 딘을 반환한다.

그는 /dev/null에 갔다가 돌아온 적이 있다.

그는 무작위 데이터를 손실 없이 압축할 수 있다.

그는 바이너리 코드를 읽을 수 있다.

그는 그의 휴대폰 주소록을 vcard의 md5 Checksum으로 정렬한다.

그는 정규식으로 HTML을 파싱할 수 있다.

그의 무한 루프는 5초 안에 동작을 완료한다.

그는 전자의 정확한 위치와 속도를 결정할 수 있다.

그는 프로세스를 kill하지 않는다. 실제로 죽인다.

빈트 서프(인터넷 및 TCP/IP 프로토콜의 개발자)가 인터넷을 발명한 이유는 제프딘이 시간이 없어서이다.

그는 재미로 부작용이 발생하는 함수를 만들었는데, 그 부작용은 현재 Gmail로 알려져 있다.

그의 ISP(인터넷 서비스 제공자)는 그의 라우터를 통해 모든 트래픽을 경유한다. 그리고 그게 더 빠르다.

오직 두 사람만이 제프 딘의 사실을 전부 알고 있다: 제프 딘과 척 노리스. 그리고 그들은 이 사실들을 공유하는 것은 일반적인 사람들에게는 너무나 많다고 생각한다.

볼드모트는 제프 딘을 두려워한다.

그는 씨리얼을 맵 리듀스 한다.

그는 Google Map을 뜨개질 키트로 만들었다.

그의 버블 소트는 O(1) 시간으로 동작한다.

그의 Dropbox 용량은 Youtube 전체의 저장 용량보다 크다.

Google App Engine은 그의 Nexus S로 호스팅 된다.

그의 키보드는 Ctrl 키가 없는데, 그건 그 어느것도 그를 컨트롤 할 수 없기 때문이다.

그의 무한 재귀 함수는 결과를 반환한다.

그는 전체 프로그램을 하나의 Assert로 유닛 테스트 할 수 있다.

그의 알고리즘 및 Computation Theory를 위한 공책 중 하나에는 여백에 “나는 이를 증명할 굉장한 방법을 발견했지만 여백의 공간이 좁아 적지 않는다” 라고 쓰여져 있다.

신은 제프 딘을 만들었고, 제프 딘은 척 노리스를 프로그래밍 했다.



그렇다네요.
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호