- 니콜라스 네그로폰테, 1995
컴퓨터는 없는 곳을 찾기 어려울 만큼 곳곳에 널려 있다. 우리가 미처 깨닫기도 전에 우리 삶 이곳저곳에 영향을 끼치면서 말이다. 컴퓨터 없이 살았던 시절은 이제 잘 생각나지도 않는다. 컴퓨터가 사회 모든 곳에서 사용되는 방식과 이로 인해 우리의 생활환경이 바뀌는 속도는 정말 놀랍다. 컴퓨터는 사회뿐만 아니라 사람들의 인식까지도 넓고 깊게 지속해서 변화시켰다. 사람들이 컴퓨터를 사용하는 방식에 따라 컴퓨터의 목적도 함께 변했다. 그런데 문득 한 가지 질문이 떠오른다. 컴퓨팅이란 과연 무엇일까?
[문명이 시작된 이래로 인류는 누구나 수학 문제를 다루어왔다. 사람들은 문제를 쉽게 풀기 위해 기계를 만들어 이용하려 했다.]
컴퓨팅: 숫자 세기 그 이상
간추린 옥스퍼드 사전 1944년 판을 찾아보면 너무나도 간단한 대답이 나온다.
컴퓨트(compute) [동사] 계산해 답을 구하다. 값 을 추정하거나 세다. 고려하다.
역사적으로 컴퓨팅은 문제 풀기였으며, 문제에는 복잡한 과학 계산이 들어 있었다. 컴퓨팅을 종종 수학 문제 풀기로 생각하는 사람들도 있는데, 초기 컴퓨팅이 주로 연산 문제를 다루었기 때문이다. 때때로 연산을 숫자 세기라고 생각하는 사람들도 있지만, 숫자 세기는 연산 혹은 컴퓨팅의 일부일 뿐이다. 예를 들어, 푸른 초원 위에 가축 12마리가 풀을 뜯고 있다고 가정해보자. 12마리라는 정보가 충분한 때도 있다. 그러나 더 많은 정보가 필요할 때도 있다. 숫양과 암양이 각각 몇 마리나 있는지, 그 가운데 새끼 양은 몇 마리인지, 양들이 각각 몇 살인지 등이 궁금할 수 있다. 하지만 이런 정보는 숫자 세기로는 결코 알 수 없다.
[농사를 지을 때도 어느 정도의 연산이 필요했다. 예를 들어, 가축 가운데 암컷과 수컷이 각각 몇 마리인지 아는 일은 옛 농부들에게 중요했다. 하지만 컴퓨팅은 단 순한 숫자 세기 이상의 일이다.]
이처럼 컴퓨팅에는 숫자 세기 외에도 여러 가지가 있으며 분류 또한 그중 하나다. 근대 컴퓨팅에서 원하는 대상을 찾아 고르는 일은 수학 연산만큼이나 중요했다. 계산이 필요한 문제도 점 점 늘어났으며, 항해, 암호해독, 각종 예측 등 계산이 필요한 모든 일에서 빠른 계산이 필요했 다. 그리고 이런 움직임 덕분에 컴퓨팅 기계가 등장했다. 사회가 점점 커질수록 정치 방식 또한 정교해졌다. 특히 수치화하고 수량화하는 일이 매우 중요해졌다. 예를 들어, 세금을 거두기 위해 백성의 수를 알아야 했으며, 다른 나라에 팔 농작물의 양을 알아야 했다. 또한, 자신들이 섬기는 신의 뜻을 더욱 잘 이해하 기 위해 해와 달의 움직임을 알아야 했다. 얼마 지나지 않아 사람들은 필요한 계산을 특별히 더 잘할 수 있는 사람을 찾기 시작 했다. 이런 것을 고려해 컴퓨팅을 다시 정의한다면 컴퓨팅은 정치, 상업, 종교에서 복잡하지만 꼭 필요한 일을 도와주는 수단이었다.
[325년 니케아 공의회에서 부활절 날짜와 계산 방법을 정했다.]
사람과 기계
어려운 계산을 전문적으로 하는 사람을 컴퓨팅 을 잘하는 사람이라는 뜻에서 ‘컴퓨터(computer)’ 즉, 계산 전문가라고 불렀다.
18세기 영국 왕실 천문학자 네빌 마스켈린은 최근까지도 항해할 때 사용했던 항해력을 최초 로 만들었다. 그는 영국 전역에 흩어져 일하고 있는 계산 전문가들이 항해력 제작에 필요한 데이터를 계산해 보내오면 그 결과물을 적절히 취합했다. 미국에도 비슷한 예가 있었다. 19세기 미국 하버드 대학교 천문대 천문대장이었던 천문 학자 에드워드 찰스 피커링은 약 1만 개의 별을 정리한 헨리 드레이퍼 목록을 만들기 위해 여성 계산 전문가를 채용해 계산 팀을 만들었다.
[하버드 대학교 천문대 천문대장이었던 에드워 드 찰스 피커링은 헨리 드레이퍼 목록 제작을 도와줄 여성 계산 전문가 팀을 만들었다.]
그러나 이런 일조차 컴퓨팅을 대표하지는 않는다. 가령, 필자는 컴퓨터를 좀처럼 굉장히 빠른 분류기나 계산기로 사용하지 않는다. 오히려 정보를 얻거나 이메일을 보내기 위해 컴퓨터를 사용한다. 물론 대규모 계산, 기계 제어, 복잡한 시스템 제어를 위해서도 여전히 컴퓨터가 사용 된다. 그러나 사람들은 대부분 인터넷을 하거나 친구와 연락을 주고받기 위해 컴퓨터를 사용한다. 오늘날의 컴퓨팅은 고전적 의미의 컴퓨팅인 계산을 뜻하는 대신, 한때 백과사전과 전화가 담당했던 정보통신기술을 뜻한다. 이제 컴퓨팅은 너무 다양해서 여러 분야를 넘나든다. 최근 컴퓨 팅은 데이터 사이언스, 인공지능, 인공두뇌학과 같은 새로운 분야로 범위를 넓혀가고 있다. 이런 새로운 분야는 어려운 계산 연습 문제와는 거리가 멀다.
변화하는 세상
‘컴퓨팅은 곧 계산’이라는 고정관념을 버리면, 컴퓨팅을 다시 정의할 수 있게 된다. ‘사이버’가 더는 로봇공학에 한정되지 않는 것처럼 컴퓨팅도 계산이라는 고전적인 정의를 벗어나 정보기술과 통신기술로 다시 정의되었다. 그러나 컴퓨팅이 원거리 통신이나 데이터 전송에 쓰이며 이런 기술들에 힘을 불어넣기는 해도 이 기술들과는 다르다. 어떤 사람들은 컴퓨팅을 데이터 사이언스의 일부로 볼지도 모른다. 물론 학계에는 여전히 1936년에 논문을 발표해 프로그래밍 가능한 컴퓨팅 기계의 청사진을 제시한 앨런 튜링처럼 컴퓨 팅을 순수 학문으로 연구하는 연구자도 있다.
이 책은 초기 문명 시대의 컴퓨팅에서 시작해서 오늘날의 컴퓨팅과 미래의 컴퓨팅을 다루고 예상한다. 아스트롤라베와 주판으로 시작하는 컴퓨팅의 역사는 사람들이 왜 그런 도구를 필요로 했고 사용했는지 이야기를 풀어나간다. 계산 도구와 기계는 연산과 분류라는 기본 문제를 잘 풀 수 있도록 점점 복잡해졌다. 20세기 전기의 발명 덕분에 컴퓨팅 기계는 작아지고 컴퓨팅 속도는 빨라졌으며, 이전에 상상했던 것보다 훨씬 많은 것을 컴퓨팅 기계로 할 수 있게 되었다. 21세기에 이르자 컴퓨팅은 폭발적으로 증가했다. 갑자기 세상 어느 것도 컴퓨팅과 상관없는 일이 없게 되었다.
[컴퓨터 프로그래밍이 가능해지자 효과적인 코딩으로 거의 모든 문제에 컴퓨터 처리 능력을 적용할 수 있게 되었다.]
이 책은 박물관 창고에서 먼지를 뒤집어쓴 채 잠자고 있는 고철 상자에 관한 이야기가 아니다. 이 책은 우리의 생각과 우리가 사는 세상에 관한 이야기이며, 오늘날과 같은 문명의 발전을 이루 기 위해 지금까지 인류가 걸어온 길에 관한 이야기이다.
[컴퓨터는 점점 더 빠르게 발전하며 우리를 더욱 놀라게 한다. 그러나 컴퓨팅은 컴퓨터 그 이상이다.]
이전 글 : 자바 200제 : 2개의 실숫값 중 큰 값을 표시하는 프로그램을 작성하자.
다음 글 : 최초의 프로그래밍
최신 콘텐츠