d라이브러리









※ 새롭게 시작하는 이 코너에서는 컴퓨터 프로그래머 및 개발자를 꿈꾸는 중고생 정보영재들에게 IT 전문가가 들려주는 이야기를 연재합니다.



20여 년 전 개인용 PC가 막 보급되기 시작했을 무렵, 애플2라는 컴퓨터가 전세계적으로 선풍적인 인기를 끌었다. 하드드라이브도 없었고, 당시로서는 획기적인 48KB 램을 내장했다. 48M B도 아닌 48KB였다. 전원을 켜면 지금의 도스와 같은 코드 입력 표시가 떴다.



이 컴퓨터에서는 베이직 언어만 알면 누구나 쉽게 프로그래밍할 수 있었다. 프로그래머 혼자서 프로그램의 처음부터 끝까지 만들어내는 일이 일반적이었다. 때문에 소위 컴퓨터 천재가 다수 배출되던 시기였다.



애플2의 운영체제 역시 스티브 워즈니악이라는 불세출의 기술자가 혼자서 손으로 만들어낸 것이었다. 그는 종이에다 운영체제의 소스코드를 적고 이를 손으로 직접 컴파일하는 기염을 토했다. 개인용 PC에 열광하던 시기 대부분의 프로그램은 이런 식으로 만들어졌다. 프로그래머 한 명이 원리, 설계, 구현까지 모두를 담당했다. 실로 개인의 힘으로 새로운 컴퓨터를 한대 뚝딱 만들어낼 수 있는 행복한 시기였다.



근래에 들어서는 개인용 PC가 예전의 중대형 컴퓨터처럼 확장됐음을 느낀다. 시스템의 크기도 커졌고, 새로운 것을 만들어내기 위해 알아야 할 것들이 매우 많아졌다. 개인이 혼자 프로그램을 뚝딱 만들어버리는 경우가 점점 드물어진다. 게임 개발만 하더라도 물리엔진의 물리학, 3D 그래픽스를 위한 광학, 게임의 지능을 담당할 인공지능, 소리를 위한 음향학, 프로그램의 진행을 위한 스크립트 언어, 온라인 게임을 위한 네트워크 프로그래밍을 망라하는 종합 과학의 형태를 띈다.



필자는 요즘 ‘소프트웨어 마에스트로’라는 IT인력 양성 프로그램에서 학생들과 함께 프로젝트를 진행하고 있다. 100명을 선발해서 1년 6개월 가량 스파르타식으로 프로젝트를 진행해, 최종적으로 10명 내의 인원에게 정부 인증서를 발급하고 창업지원 혜택을 주는 프로그램이다. 우리 팀은 6명이 협력해 그래픽 카드의 가속기능(GPGPU)을 활용해 물리엔진과 렌더링엔진을 구현하는 프로젝트를 구현하고 있다.



이 프로그램에 10개월 가량 몸담고 나서 느끼는 점은, 중고등학생에게는 깊게 공부하는 것이, 대학생에게는 넓게 체험하는 것이 필요하다는 점이다. 컴퓨터 프로그래밍은 단순한 문법 외우기나 도구 사용의 숙달이 아니라 무엇인가를 만들어가는 과정이다. 프로그래밍에 재미를 붙인 학생이라면 알고리즘의 원리가 되는 수학과, 해외에서 더 넓은 경험을 하기 위한 외국어를 깊게 공부한다면 더 탄탄한 실력을 가질 수 있다. 단순히 입시를 위해 수학과 외국어, 물리 공부를 할 게 아니라 자신의 취미를 더 전문적으로 승화시키는 기회로 임하길 바란다. 대학에 들어간 후에는 프로그래밍 외에도 타 전공으로 경험을 넓히는 것이 경쟁력의 기틀이 된다. 다른 분야에서의 이론과 지식이 새로운 것을 만들 기회를 더 많이 가져올 것이다.

2011년 03월 과학동아 정보

  • 김주환 기자

🎓️ 진로 추천

  • 컴퓨터공학
  • 소프트웨어공학
  • 게임공학
이 기사를 읽은 분이 본
다른 인기기사는?