비트의 세계 / 데이비드 아우어바흐

비트의 세계 / 데이비드 아우어바흐

728x90

이 책은 세상을 기계의 언어로 번역해온 사람이 거꾸로 자신이 속했던 세상을 인간의 언어로 바꿔서 설명하는 책이다.

사려 깊다는 것은 이런 뜻이다. 모든 것이 전처럼 명백하지 않다는 것.

컴퓨터는 늘 내게 이치에 맞는 세계를 제공했다. 어릴 때 컴퓨터는 내게 피신처였다. 실제 세상과 동떨어진, 안전하면서 관조할 수 있는 세계를 제공했다. 사람들을 대할 때면 나는 혼란을 느꼈다. 반대로 컴퓨터는 정확했고, 이해할 수 있었다. 인간들의 세계는 불분명하고 모호했다. 코드가 지배하는 세계는 그렇지 않았다.

나는 인간 사회를 운영하는 알고리즘을 제대로 파악할 수가 없었다.

컴퓨터 알고리즘은 정확한 명령문의 집합이다. 유리를 하든 춤을 추든 가구를 조립하든 간에 어떤 일을 정확히 수행할 방법을 죽 적는다고 해보자. 그러면 암묵적으로 남아 있는 것들, 우리 모두가 별 생각없이 그냥 당연시 여기는 세세한 사항들이 대단히 많다는 사실을 금방 알아차릴 것이다. 컴퓨터는 그런 지식을 지니고 있지 않으면서도, 오늘날 우리 자신과 우리 세계를 불안전하게나마 담아낼 만큼 진화해왔다. 컴퓨터가 그리는 불안전한 그림과 현실 사이에는 틈새가 있다. 이 틈새를 더 좁힐수록 컴퓨터는 우리에게 더 유용해진다.

1부 코드

1장 로고와 사랑

컴퓨터는 정확성, 명확성, 신뢰성을 약속했으며, 또래 사이의 사회 관계망에 잘 끼지 못했던 많은 아이들에게 피난처가 되었다. 그러나 컴퓨터는 그저 내가 가지고 놀 수 있는 기계만이 아니었다. 컴퓨터는 내가 프로그램을 짜고 제어할 수 있는 무엇이었고, 그래서 나는 컴퓨터로 새로운 세계를 창조할 수 있었다.

알고리즘은 특정한 문제에서 그 문제에 해답으로 이어지는 경로를 지정하는 규칙 또는 명령문의 집합이다.

나는 그것들이 아름답다고 생각했다. 그냥 대상 자체를 가지는 대신에 나는 그 대상을 만드는 비법을 지니고 있었고, 나아각 그 비법을 더 일반화할 수 있었다.

많은 이들은 진정으로 경이로움을 느끼는 순간에 자신의 소명을 발견한다. 그 경이로움은 단지 아름다움과 우아함이 아니라, 그 창조물이나 발견이 진정으로 불가능해 보인다는 데에서 비롯한다.

우리는 사물을 보는 것이 아니며, 구현물을 보는 것도 아니다. 그것들은 왜곡된 형태로만 보이기 때문이다. 우리는 데체 세계를 본다. 객관적으로 말해서, 있는 그대로의 세계가 아닌 세계다. 우리가 보는 이 '대체 세계'는 한마디로 거짓이다. 우리 뇌는 데이터를 감지하고 그것을 이미 우리에게 친숙한 형태로 부정확하게 유추한다.

재귀는 하나의 코드를 써서 어떤 문제를 동일한 형식을 지닌 여러 개의 문제로 쪼개어 처리하는 것이다. 나무의 가지 하나를 더 작은 나무로 그리는 식이다. 이 기법은 세계를 화려하지만 근본적으로 우아한 프랙털이라고 상상한다. 재귀는 컴퓨터 프로그래밍의 효율적이고 경제적인 특성을 반영한다. 적은 투자로 많은 것을 얻는다.

컴퓨터는 층층이 쌓여 있는 일련의 '추상화 개념'이라는 개념을 통해서 가장 잘 이해할 수 있다.

제약 조건들의 수학적 매력은 그 제약 조건이 얼마나 정확히 명기되고 정량화되는가에 달려 있다고 믿는다.

휴리스틱의 용도는 수학적 사고 차원을 훨씬 넘어선다. 인간의 언어와 감정의 미묘함, 정의와 정치의 난제, 미적 경험의 심오함은, 산뜻하게 정량화하여 수학과 논리가 제공하는 분석 상자에 분류해 넣는 방식에 저항하는 현상들이다. 그렇기에 우리는 분석적 표현을 완벽하게 다듬기보다는 부정확성과 오류를 받아들인다.

데이트와 연애 관계를 통해서 우리 마음속에는 사적이고 내밀한 기억들과 그에 수반되는 감정들이 쌓인다. 그로부터 우리는 단순하게 환원시킨 판단의 집합을 구축한다. 상대에 관한 불완전한 자료들을 모아서 휴리스틱 척도로 삼는 것이다. 얼마나 사랑하는지, 얼마나 똑똑한지, 얼마나 책임감이 있는지, 얼마나 재능이 있는지, 얼마나 유망한지 등. 우리는 끊임없이 계산을 되풀이한다. 관계를 지속하려는 의지는 이런 판단들이 긍정적인 상태로 얼마나 오래 이어질지에 달려 있다.

"우리 부부관계의 코드는 우리의 말, 행동, 생각으로 이루어져 있어. 우리가 할 일은 결혼이 파탄나지 않도록 코드에 있는 버그를 막는거야."

"성급한 최적화야말로 모든 악의 근원이다."

이 새로운 세계에서 인간의 언어와 인간의 삶은 이진수의 명령에 복종했다.

2장 채팅 전쟁

애플은 소송에서 졌다. 윈도우는 맥 운영체제와 비슷했지만, 똑같은 점은 거의 없었다. 항소법원은 이렇게 판결했다.

MS는 우뚝 섰다. 그들은 행동이 빨랐고, 공격적이었고, 빈틈이 없었다. 그들의 강점은 결코 혁신 자체에 있지 않았다. 유용, 개선, 통합에 있었다. MS는 시장을 장악하기 위해서 기존에 있는 최고의 제품보다 약간 더 나은 제품을 개발하는 식으로 일한다. MS는 매우 효율적이었기에, 경쟁자를 이기는 데 필요한 수준까지만 제품개발에 애쓸 뿐 그 이상 개선하는 쪽으로는 시간과 자원을 낭비하지 않았다.

MS와 구글에서 나는 C++로 작업을 했다. C++는 효율과 우아함 사이에서 타협한 듯한 언어다. 이 타협은 때때로 추하지만, 소프트웨어공학에서는 추한 타협이 언제나 아름다운 순수함을 이긴다.

C++는 중간 수준 언어다. 어셈블리어 같은 낮은 수준의 언어와 자바, 파이선 같은 고급 언어 사이에 놓인다는 뜻이다. 언어의 수준이 높을수록 하드웨어를 직접 통제하는 경우가 더 적다.

진보는 우리 자신의 오류를 탐구하는 것이다.

내가 MS를 그만두고 구글에 자리를 얻은 것은 한 두 해 동안 왠지 모를 불편함, 자괴감, 엄습하는 불안감에 시달리다가 결정한 일이었다.

메신저는 2014년에 종말을 고했다.

이해는 아래에서부터, 코드와 계산의 본질에서부터 시작되어야 한다. 즉 이진수로부터다.

3장 이진수

현실과 그것을 표현하는 데이터의 경계가 불분명함에도 불구하고 우리는 그런 구분을 고집한다.

“컴퓨터 화면의 글자는 화소, 빛점의 집합이다. 디스크에 저장했을 때에도… 0과1의 배열에 다름 아니다.” 그러나 종이에 적은 문자도 잉크 입자들의 집합이긴 마찬가지다. 화면의 글자가 1초에 수십 번씩 지워지고 다시 써진다는 점에 착안하여, 글의 “영구적” 형태와 “일시적” 형태를 구분하는 식으로 해석하는 랍비도 있다. 그렇다면 신의 이름의 물리적 형상을 담은 어떤 “잉크”의 “영구적” 집합에만 그 제약이 적용되는 셈이다. 점자는 영구적이다. 그런데 여기에도 애매한 측면이 있다. 랍비는 LED 광고판은 어떻게 생각할까? 화이트보드는? 자석 스케치 보드는? 스크래블 게임의 글자 타일은?

2부 인간

4장 부분에 이름 붙이기

MBTI 자체는 순탄하지 않은 긴 역사를 거치면서 놀라울 만큼의 권위를 획득했다. 단순하면서 인기 있기 때문에, 사람들이 스스로를 어떻게, 왜 분류하는지를 연구하는 데 있어서 이상적인 사례가 된다. 이런 분류 체계는 일단 컴퓨터 알고리즘으로 입력되면 훨씬 더 중요한 의미를 지니게 된다. 사용자가 자기 자신을 엄격하게 분류하고 체계화하도록 하는 MBTI 같은 검사는 컴퓨터가 우리를 더 잘 이해할 수 있도록 만든다.

5장 자기 근사

6장 컴퓨터가 하는 게임

컴퓨터가 (불가해한 정신질환의 세계 같은 것보다) 훨씬 더 잘 관리할 수 있는 표현의 집합을 써서 세계를 단순화한 것이다. 그러나 〈D&D;〉와 『DSM』 둘 다 ‘근사적으로 정량화한 허구’를 받아들인다. 둘 다 잠정적이고, 확장 가능하고, 수정 가능한 소박한 분류 체계다.

3부 세상

7장 빅 데이터

행맨은 웹이 얼마나 불완전하고 궁극적으로 인간다운지를 잘 보여주는 사례다. 웹에 있는 모든 페이지를 수집하는 것이 그저 기계적인 일처럼 들릴지 모르지만, 웹은 처음부터 잡다하고 불규칙했다. 웹페이지는 어떤 한 대형 공장에서 틀에 찍어내듯이 찍어내는 것이 아니었다. 심지어 지금도 웹에는 소수의 웹 개발자들이 한때 좋다고(또는 편리하다고)생각해서 끼워 넣었던 온갖 자질구레한 것들이 널려 있다. 구글은 어떤 것들은 그냥 무시할 수 있었지만 행맨 같은 것은 어떻게든 처리를 해야 했다. 데이터는 우리가 상상하는 것처럼 산뜻하게 들어맞는 법이 거의 없다.

8장 내 아이를 프로그래밍하다

9장 빅 휴먼

mubnoos

728x90

from http://mubnoos.tistory.com/945 by ccl(A) rewrite - 2021-07-21 00:01:33