[이상하의 과학칼럼 1] 우리가 프로그래밍을 배워야 하는 이유

모든 현대 기술의 기초

8개월 전, 많은 사람들이 지켜보는 세기의 대결이 시작되었다. 바둑기사 이세돌은 ‘인간대표’라는 타이틀을 걸고 구글 딥마인드 사에서 개발한 인공지능 ‘알파고’와 겨루었다. 많은 관심 끝에 결국 인공지능 알파고의 승리로 막을 내렸다. 그리고 그 이후에도 알파고의 바둑 실력은 여전히 발전하고 있다. 많은 사람이 알파고를 이야기하지만 알파고에 대해서 제대로 아는 친구들은 적은 것 같다. 이에 알파고를 탄생시킨 프로그램(프로그래밍)에 대해 살펴보고, 인공지능이 끊임없이 발전할 수 있는 이유도 함께 알아보고자 한다.



프로그래밍이 뭐지?


프로그래밍(Programming)은 간단히 말해 프로그램을 짜고 만드는 것을 뜻한다. 프로그래밍 과정은 프로그래밍 언어를 입력한 후 기계어로 컴파일(Compile-고급언어로 작성된 프로그램을 기계어로 처리)하는 과정이 동반된다. 쉽게 말해 우리의 언어를 이진법의 컴퓨터가 알아들을 수 있도록 번역하는 것이다. 비교적 어렵고 생소하게 들릴 수도 있겠지만, 프로그래밍은 우리의 삶에 전반적으로 밀접한 관계를 맺고 있다. 앞서 말했던 알파고의 개발 과정과 학습 방식 또한 프로그래밍에 기초 된 것이다.


알파고가 바둑을 둘 수 있도록 개발하고 스스로 학습할 수 있는 이유는 바로 프로그래머가 프로그램을 만들었기 때문이다. 매일 아침 눈을 뜨자마자 손에 잡히는 스마트폰을 예로 들어보자. 페이스북, 카카오톡, 인스타그램 등 스마트폰에서 쉽게 접할 수 있는 앱들은 모두 개발자들이 프로그래밍한 결과이다.



프로그래밍을 왜 배워야 하지?


혹자는 "프로그래밍이 유용한 건 알겠는데, 굳이 그 어려운 프로그래밍을 왜 배워야 하지?"라는 의문점이 가질 수도 있다. 프로그래밍은 어렵고, 개발자가 아니면 쓸 일이 없다는 것이 일반적인 생각일 수 있다. 그렇다면 우리가 프로그래밍을 배워야 하는 이유를 살펴보자.


첫 번째, 논리적으로 사고하는 방법을 배울 수 있다. 앞서 프로그래밍은 일종의 인간과 컴퓨터가 대화할 수 있도록 돕는 도구라고 설명했는데, 인간이 컴퓨터와 대화할 때 쓰는 언어, 즉 프로그래밍 언어는 논리에 기초를 두고 있다. 인간은 일상생활에서 자신이 논리적으로 생각하는 것에 따라 대화하고 행동하며 서로 상호작용 한다. 논리를 기초로 하는 우리 인간의 삶에서 논리, 즉 생각하는 과정과 방법을 배우는 것은 다른 무엇보다도 중요하다고 필자는 생각한다. 우리는 프로그래밍을 배우면서 그 안에 있는 알고리즘을 분석하게 되고 결과적으로 논리적인 사고를 키워나갈 수 있다. 꼭 개발자가 아니더라도 논리적인 사고를 키워 나간다면 우리 삶을 조금 풍요롭고 효율적으로 살 수 있지 않을까 생각한다.



“이 나라 모든 사람들 이 컴퓨터 프로그래밍을 배워야 하는 이유는

사고하는 법을 배워야하기 때문이다.“ (by 스티브 잡스)


두 번째, 어렵지 않다. 프로그래밍이 어렵다고 생각할 수밖에 없는 이유는 프로그래밍이 아직 우리에게 친숙하지 않기 때문이다. 영국은 2014년 9월에는 코딩 수업을 필수 과목에 포함하였고 에스토니아는 2013년 9월부터 초등학교 1학년부터 프로그래밍 교육을 시작하였다. 어렵지 않고 굉장히 유용한 것이 프로그래밍이다. 또한 미래에 어떤 직업을 가지던 관계없이 모두 컴퓨터와 밀접한 관계를 맺고 있기 때문에 프로그래밍은 모든 분야에 많은 도움을 줄 것이다.


마크 저커버그는 대학교 기숙사에서 친구와 현재 10억 명이 쓰고 있는 페이스북을 개발했다. 스티브 첸은 다니던 대학교를 중퇴하고 유튜브를 만들었다. 프로그래밍은 분명 미래를 바꿀 수 있는 힘이 있다. 많은 사람들이 프로그래밍에 관심을 가지고 다가가길 바란다.




칼럼 소개: 어렵게 생각할 수 밖에 없는 과학이라는 주제. 청소년들이 최대한 친근하고 즐겁게 읽을 수 있는 칼럼을 유익하게 만들어 가도록 하겠습니다.

이 기사 친구들에게 공유하기