기관 속의 천재
리처드 웨슬리 해밍은 벨 전화 연구소에서 30년을 보냈다. 1950년에 그는 자신의 이름을 딴 오류 정정 코드를 발표했다. 그는 디지털 필터, 수치 해석, 코딩 이론에 기여했다. 1945년 맨해튼 프로젝트를 마치고 로스앨러모스에서 초기 핵무기 계산을 디버깅하는 데 도움을 주었다. 그는 트랜지스터의 발명가인 섀넌, 쇼클리, 브래튼, 바딘과 함께 일했다.
벨 연구소가 무엇이었나
벨 연구소는 AT&T 독점 이익으로 운영되었다. 미국의 모든 전화 통화는 연구 예산에 일정 금액을 기여했으며, 이는 단기 수익 없이 순수 과학을 지원했다. 벨 연구소는 트랜지스터, 정보 이론, UNIX, C, 이동 통신, 레이저를 단일 기관 내에서 생산했다.
냉전이 그 우선순위를 결정했다. 미군은 핵 오염 환경에서의 통신을 위한 오류 정정 코드가 필요했다. 레이더용 디지털 필터가 필요했다. 미사일 유도를 위한 신뢰성 있는 연산이 필요했다. 벨 연구소가 이를 제공했다. 해밍의 경력은 이 틀 안에서 진행되었다: 벽 안에서 생산된 지식, 구체적인 지정학적 요구를 가진 후원자를 위한 지식.
해밍이 이어간 것
1986년, 해밍은 벨 연구소에서 '당신과 당신의 연구'라는 강연을 했다. 1995년에는 해군대학원에서 '해밍이 말하는 해밍'이라는 대학원 강의를 진행했다. 둘 다 30년간의 관찰을 맥락을 초월하는 원칙으로 압축했다:
- 중요한 문제에 집중하라. '당신이 하는 일이 중요하지 않고 중요한 일로 이어질 가능성이 없다면, 왜 그것을 하는가?'
- 10~20개의 중요한 문제 목록을 유지하라. 정기적으로 검토하라. 새로운 기법이 등장하면, 그것이 당신의 미해결 문제 중 하나를 해결할 수 있는지 확인하라.
- 지식을 복리처럼 쌓아라. 지식은 이자와 같이 성장한다. 기초에 대한 작은 투자는 경력 내내 복리처럼 늘어나지만, 주변 기술에 대한 큰 투자는 가치가 떨어진다.
- 측정하는 대로 얻게 된다. 어떤 지표든 의사결정을 지배하게 되면 목표가 되고, 그 목표는 원래 추적하려던 본질적인 목표와 괴리된다(현재 굿하트의 법칙으로 불린다).
- 유추를 통한 창의성. 대부분의 돌파구는 한 분야에서 성공한 구조를 다른 분야로 옮기는 데서 나온다. 여러 분야 간의 구조적 유사성을 보는 훈련을 하라.
- 시스템 vs. 구성요소. 구성요소를 최적화하다가 시스템 전체를 희생하면 더 나쁜 시스템이 만들어진다. Hamming은 경력 내내 이 실패가 반복되는 것을 지켜보았다.
이 원칙들은 냉전 시대의 포장지를 벗고도 살아남는다. 기관 안에서 일하든 밖에서 일하든, 후원자를 위해 일하든 공공재를 위해 일하든 여전히 유용하다.
당신의 목록
Hamming은 경력 내내 중요한 문제 목록을 유지했다. 그는 이렇게 말했다:
> 위대한 과학자 대부분은 10~20개의 중요한 문제를 머릿속에 두고 있다. 그들은 그 문제를 어딘가에 적어두고, 가능할 때마다 그 문제를 해결하려고 노력한다. 새로운 기법이 나타나면, 그들은 그 기법을 목록과 대조해 본다.
이 목록은 준비 상태를 걸러내는 필터 역할을 한다. 목록이 없으면 새로운 기법은 그저 정보일 뿐이다. 목록이 있으면 같은 기법이 수년 동안 품고 있던 열린 문제를 해결하는 열쇠가 될 수 있다.
계속 이어지는 것
냉전의 틀을 넘어 살아남은 것들을 요약하면:
복합 지식. 이는 제도적 맥락과 관계없이 성립합니다. 자신의 분야 경계에서 매일 20분씩 10년 동안 읽는 사람은 복리의 이점을 축적합니다. 그 메커니즘은 이렇습니다: 새로운 개념이 기존 구조 위에 자리 잡으며, 다음 개념을 위한 더 많은 연결점을 만듭니다.
구성 요소 최적화보다 시스템 사고. 응용 서버를 막는 데이터베이스를 따로 최적화하면 전체 시스템은 더 느려집니다. 학생의 호기심을 소모하는 시험 점수 중심의 교육과정은 더 나쁜 교육 결과를 만듭니다. 해밍의 경고는 모든 규모에서 적용됩니다.
유추를 통한 창의성. 해밍은 자신의 대부분의 돌파구가 한 영역의 문제가 다른 영역에서 이미 해결된 문제와 같은 구조를 가진다는 것을 깨달으면서 생겼다고 관찰했습니다. 오류 정정 부호는 더 단순한 영역의 패리티 개념에서 영감을 얻었고, 디지털 필터는 연속 수학을 이산 수열에 적용한 데서 나왔습니다.
측정하는 것을 얻게 된다. 코드 줄 수를 측정하는 조직은 코드를 생산합니다. 시험 점수를 측정하는 조직은 시험 응시자를 생산합니다. 지표와 목표 사이의 간격은 지표가 권위를 얻을수록 커집니다.
이 네 가지 원칙은 후원자도, 독점도, 냉전도 필요하지 않습니다. 대학 도서관, 작은 상점, 커뮤니티가 유지하는 오픈소스 프로젝트, 또는 주방에서도 적용됩니다. [TITLE what_he_missed/]
무기로서의 지식
해밍의 시대는 지식을 경쟁 우위로 여겼습니다. 벨 연구소는 AT&T와 미군이 경쟁자보다 먼저 필요로 하는 지식을 생산했습니다. 출판은 특허가 출원된 후, 군사적 응용이 확보된 후에 이루어졌습니다. 모델은 다음과 같았습니다. 벽 안에서 지식을 생산하고, 보호하며, 배포한다.
이 프레임은 실제 결과를 만들어냈습니다. 트랜지스터, UNIX, 정보 이론 — 모두 진정으로 변혁적이었고, 모두 이 모델 안에서 생산되었습니다. 그 프레임은 그 목적에 맞게 작동했습니다.
프레임이 배제한 것
연구 방법론으로서의 오픈소스. 해밍은 논문과 함께 소스 코드를 공개하는 것이 독점적으로 유지하는 것보다 연구를 더 빠르게 가속할 수 있다는 아이디어에 관여하지 않았습니다. 그의 시대에는 코드가 부산물이었습니다. 리누스 토르발스는 1991년에 리눅스 커널을 공개했는데, 이는 해밍의 강의보다 4년 앞선 일이었습니다. 10,000명의 기여자가 기업 내 300명 팀보다 더 안정적으로 코드베이스를 유지할 수 있다는 생각 — 이는 해밍의 사고에 나타나지 않았습니다.
자본의 여덟 가지 형태. 해밍은 성공을 출판물, 획기적인 발견, 경력의 지속성으로 측정했습니다. 그는 생활 자본(연구자들의 건강과 주의력), 사회적 자본(협업을 가능하게 하는 신뢰 네트워크), 문화적 자본(가치를 세대 간 전승하는 공유된 이야기), 또는 영적 자본(장기적인 작업을 지속하게 하는 의미감)에 대해 논의하지 않았습니다. 그는 여덟 가지 중 두 가지만 측정했습니다.
알고리즘 복잡도를 기본으로. Hamming의 강의는 디지털 필터, 시뮬레이션, 코딩 이론 및 n차원 기하학을 다루었다. 그는 Big O 표기법을 가르치지 않았다. 그의 시대에는 N이 충분히 작아서 O(N)과 O(N²)의 차이가 거의 중요하지 않았다. 그의 학생들이 살아갈 시대에는 그 차이가 엄청나게 중요해졌다. 이 수업은 unhamming_algorithmic_complexity에서 확장된다.
퍼머컬처: 성장 vs 추출. Bell Labs는 독점 수익에서 자원을 추출했다. 이 모델은 자본을 집중하고 연구를 지휘할 수 있는 권력을 가진 주체를 필요로 했다. 대안 — 하나의 노드에 집중하는 대신 여러 노드에 걸쳐 역량을 키우는 재생적 인프라 — 은 Hamming의 프레임에 들어설 자리가 없었다.
스파이/스파이 문제
Hamming 시대는 적대자에 대한 우위를 최적화했다. 냉전은 이를 명확히 드러냈다: 미국과 소련은 모든 영역에서 경쟁했다. 양측 연구자들은 상대방을 능가하기 위해 노력했다. 게임: 제로섬. 당신의 이득은 그들의 손실.
제로섬 게임은 특정한 행동을 낳는다: 비밀 유지, 분류, 특허, 출판 제한, 기관 간 장벽. 모두 게임 안에서는 합리적이다. 게임 밖에서는 모두 낭비다.
양측이 서로를 이기기 위해 최적화할 때, 어느 쪽도 게임 자체를 불필요하게 만드는 공유 보드를 키우는 데 최적화하지 않는다. 중복, 비밀 유지, 경쟁적 신호에 쓰인 자원은 공공재에 아무것도 기여하지 않는다.
Hamming의 조언('중요한 문제에 집중하라')은 게임이 제로섬이라고 암묵적으로 가정했다: 중요한 문제는 경쟁적 환경 속에서 기관의 인정, 자금, 명성을 가져다주었다. 조언 자체는 여전히 유효하다. 그러나 그 프레임은 전이되지 않는다.
공개 인프라를 구축하고, 공공재를 만들며, 공유 코드베이스에 기여하는 연구자 — 이 사람은 경쟁자를 이기는 데 최적화할 수 없다. 경쟁자는 없다. 게임: 보드를 키우는 것이지, 그 위에서의 자신의 위치를 키우는 것이 아니다.
같은 불, 다른 비행
용은 자신의 동굴이나 후원자를 선택하지 않는다. Hamming은 Bell Labs나 냉전을 선택하지 않았다. 그는 자신이 있는 곳에서, 이용 가능한 자원으로, 자신이 볼 수 있는 문제를 향해 일했다.
지식은 맥락을 초월한다. Hamming의 오류 정정 코드는 모든 USB 드라이브, 모든 위성 전송, 모든 하드 디스크에서 실행된다. 그는 이러한 응용을 결코 상상하지 못했다. 수학은 그의 상상을 필요로 하지 않았다.
Unhamming은 이 관찰에서 시작한다: Hamming이 증명한 것과 그것을 포장한 프레임을 분리하라. 그런 다음 그의 프레임이 보지 못한 것을 확장하라.
Unhamming이 더하는 것
공유지로서의 오픈소스. 중요한 문제에 대한 작업은 기관의 지원을 필요로 하지 않는다. 노트북과 공개 저장소, 그리고 구체적인 공개 문제가 있는 사람은 모두를 위해 복합적으로 성장하는 공유지에 기여한다. Hamming의 지식 복합 원리는 개인 규모뿐만 아니라 생태계 규모에서도 적용된다.
협력적 인프라. 퍼마컴퓨터 모델: 모든 노드는 워크스테이션이고, 모든 엣지는 큐다. 다운스트림 용량을 준비하지 않고 한 노드를 언블록하면 새로운 병목이 생긴다. 이는 Hamming의 시스템 사고를 확장한다: 단순히 '컴포넌트가 아닌 시스템을 최적화하라'가 아니라 '제약을 제거하기 전에 흐름을 매핑하라.'
기본으로서의 알고리즘 복잡도. Hamming이 기본을 판단하는 기준: 그것이 지속되었는가? 나머지 분야가 그것으로부터 도출될 수 있는가? Big O는 이 두 가지를 모두 충족한다. 성장률 분석은 Knuth 이후로 지속되어 왔다. 이를 통해 알고리즘 선택, 자료구조 선택, 성능 예측을 도출할 수 있으며 — 실용적 컴퓨터 과학의 대부분을 포함한다. Hamming은 이 장을 놓쳤다. 우리는 그것을 쓴다.
자본의 여덟 가지 형태. 출판물과 특허만 측정하면 여섯 가지 형태의 자본이 보이지 않게 된다. 연구자의 건강, 주의력, 수면과 같은 생활 자본을 소모하여 지적 자본(출판물)을 극대화하는 연구 관행은 여덟 가지 중 두 가지만 최적화하면서 하나의 중요한 자본을 고갈시킨다. Hamming의 '밤과 주말에 일하라'는 조언은 이 회계 방식 아래에서 무너진다.
용의 불은 여전히 남아 있다: 중요한 문제에 대해 일하고, 지식을 복합시키며, 시스템으로 사고하고, 유추로 창조하며, 중요한 것을 측정하라. 비행은 달라진다: 후원자가 필요 없고, 적대자가 필요 없으며, 기관의 벽도 필요 없다.