컴퓨터 세상을 만든 기발한 아이디어들
2016년 책 50권 읽기 마흔여덦 번째 책입니다.
오래 걸렸습니다. 거의 두 달이 걸린 것 같네요.
더 미루다가는 이 책을 완독 하지 못하게 될 것 같아서 다가오는 연말에 더 바빠지기 전에 시간을 내어서 이 책을 마무리합니다. 급하게 읽느라 일부 이해되지 못한 부분은 그냥 스킵하면서 책을 읽어 내려갔습니다.
책에 대한 내용은 기술적인 부분이 많아서 제가 설명하는데 어려움이 많네요.
그냥 책을 읽고 난 이후 정리된 생각을 두서없이 적어 봅니다.
지금까지 '컴퓨터과학'이라는 분야는 상대적으로 주목을 받지 못했다.
세상은 변하고 있다. 아니 세상은 너무도 많이 변했다.
작고 저렴하지만 훌륭한 신뢰성을 갖춘 복잡한 장치의 시대가 도래되었다.
쉽게 말해 IoT의 시대가 열린 것이다.
손톱만 한 크기지만 웬만한 기능은 다 갖춘(10년 전 PC 성능보다 뛰어남) 기기들이 계속해서 등장하고 있다.
이런 기기들이 센서 기술과 함께 모든 기기에 접목이 되면서 엄청한 데이터를 만들어 낼 것이다.
지금까지 컴퓨터과학이라는 분야가 주목을 덜 받았지만 앞으로는 많은 주목을 받게 될 것이다.
그러나 아이러니하게도 컴퓨터 과학을 전공하는 대학생 수가 50%나 감소했다고 한다.
이유가 뭘까?
저자는 이 학문분야를 고등학교를 비롯한 중등교육 과정에서 가르치지 않기 때문으로 보고 있다.
동의한다.
나의 경우도 부전공으로 전산을 수료했지만 알고리즘에 대해서 강의를 들은 적은 없다.
알고리즘 하면 왠지 좀 어렵고 딱딱한 학문분야라 생각을 했기 때문이다.
실제 알고리즘은 그러한 요소(어렵고 복잡하고 딱딱한)를 많이 가지고 있다.
그렇기 때문에 이 책은 알고리즘은 단순하고 쉽게 이해시키려 하고 있다.
앞으로 컴퓨터과학에 관심을 두고 있는 이들은 꼭 읽어야 할 필독서라고 해야 할 것 같다.
알고리즘이란?
컴퓨터는 스스로 판단이나 해석을 할 수 없으므로, 인간에게는 매우 간단해 보이는 문제도 인간이 이를 푸는 정확한 절차와 방법을 제공해야만 해결할 수 있다. 이를 '알고리즘'이라 하며 지금 우리 눈 앞에 있는 컴퓨터는 누군가가 만들어 놓은 알고리즘 덕분에 다양한 일처리를 하고 있는 것이다.
간단하게 정리하면, 알고리즘이란 문제를 푸는데 필요한 단계의 순서를 명확히 명시하는 구체적인 계산법이다.
이 책에서 소개된 알고리즘은 우리가 컴퓨터를 사용하는 데 있어서 매일 알게 모르게 매일 사용하고 있는 위대한 알고리즘을 추출하여 설명을 하고 있다. 왜 위대한 알고리즘인가? 책의 제목에서와 같이 미래를 바꾼 알고리즘이기 때문이다.
검색엔진 인덱싱 : 세상에서 가장 큰 건초 더미에서 바늘 찾기
페이지랭크 : 구굴을 출범시킨 기술
공개키 암호화 : 공개 엽서에 비밀을 적어 아무도 모르게 보내는 방법
오류 정정 코드 : 데이터 오류를 스스로 찾아 고치는 마법
패턴 인식과 인공지능 : 사람처럼 학습하고 생각하는 컴퓨터
데이터 압축 : 책 한 권을 종이 한 장에 담기
데이터베이스 : 일관성을 향한 여정
디지털 서명 : 진짜 누가 이 소프트웨어를 작성했을까?
계산 가능성과 결정 불가능성 : 컴퓨터로 모든 문제를 해결할 수 있을까?
컴퓨터 소프트웨어 교육이 초/중/고등 정규 교과로 편성이 되면서 소프트웨어 교육에 대한 인식이 달라지고 있다. 교육의 목적도 단순히 컴퓨터를 응용하거나 코딩 기술을 가르치는 것에 국한되지 않고 컴퓨터적인 사고를 가르치자는 것으로 확대되고 있다. 컴퓨터를 통한 문제 해결 능력을 키우기 위해서는 알고리즘에 대한 이해가 필요하다.
이 책은 그런 관점에서 아이들에게 단순히 기술적인 측면을 가르치기 이전에 오늘날 컴퓨터가 우리의 일상에 가장 가깝게 다가올 수 있게 된 것들에 대해 재미있게 접근하고 이야기할 수 있는 거리를 나에게 제공해 주었다.
급하게 읽느라 완전히 이해하지 못한 부분은 조금 여유로울 때... 또는 관련 주제로 이야기할 필요가 있을 때 해당 주제의 장을 다시 읽는 것으로도 충분할 것 같다.
혹 컴퓨터과학이나 데이터 과학을 전공하고 싶은 학생이나 아이들을 그쪽 분야로 이끌고 싶은 부모님이라면 이 책을 읽어 보시길 추천해 봅니다.
아래 내용은 제가 페이스북에 이 책을 소개하면서 남긴 글입니다.
오늘날 컴퓨터는 우리의 일상에 없어서는 안 될 장치로 자리잡고 있습니다. 언제부터였을까요? 컴퓨터가 발명되면서부터 완벽한 장치였을까요? 아닙니다. 컴퓨터와 인터넷을 구성하는 기술들은 많은 오류와 위험을 가지고 있습니다. 그럼에도 우리는 일상에서 안전하게 이용하고 있습니다. 여기에 중요한 역할을 하게 된 것이 알고리즘입니다. 그래서 책의 제목도 미래를 바꾼 아홉 가지 알고리즘입니다. 실제 컴퓨터는 기술적으로 많은 오류와 에러를 내포하고 있지만 책에서 언급된 위대한 알고리즘으로 인해 우리는 컴퓨터가 아주 정확하고 똑똑한 장치로 인식하고 사용할 수 있게 된 것입니다. 이 책은 9가지의 주제로 일상에서 우리가 느끼지 못하지만 매일 사용하고 있는 알고리즘을 소개하고 쉽게 구현 원리를 설명해 줍니다.