예전에는 소수의 기술자만이 컴퓨터를 다루거나 프로그래밍을 했다면, 유비쿼터스컴퓨팅을 거치면서 다양한 분야의 다양한 전공자가 프로그래밍을 진행하고, 더불어 엄청난 양의 데이터를 생성하고 있는 사회관계망서비스에서는 사용자 누구나 개발자의 한 역할을 담당하고 있다. 가까운 미래의 사물인터넷 세상에서는 컴퓨팅 기기든 인텔리전스 기기든 간에 전문 개발자를 비롯해 누구든 프로그래밍을 아주 자연스럽게 구사하게 날이 올지도 모른다. 하지만 이렇게 급변한 소프트웨어 개발 환경은 학생들의 프로그래밍 교육을 보다 어렵게 만드는 요인으로 작용하기도 한다.

실제로 많은 학생들이 교수들에게 찾아가 프로그래밍의 어려움을 토로한다. 이러한 문제는 주로 학생들이 컴퓨터 언어의 특성을 제대로 인식하지 못한데 기인한다. 두살배기 아이와 다섯살짜리 유치원생이 동일한 언어를 구사하리라 기대하는 것은 무리다. 하지만 그들이 10년 후가 되면 표현의 범위와 다양성에 차이가 있을지언정 서로의 기본적인 언어구사능력은 크게 차이나지 않으며, 더 시간이 흐르면 서로 비슷해지거나, 경우에 따라서는 전자가 후자를 앞설 수도 있다. 비슷한 성적으로 대학교에 입학하지만, 어떤 학생들은 처음 프로그래밍을 접하고, 또 어떤 학생들은 미리 프로그래밍을 배우고 입학하여 이미 능숙한 경우도 있다. 즉 학생들은 대학입학 전 3년의 차이가 주는 경험의 간극을 인식하지 못하고 두살배기 아이처럼 당황해하고 불안해한다. 그런 학생은 프로그래밍이란 우리가 구사하는 언어와 같아 많이 경험하고 사용하다보면 결국 능숙해질 수 있음을 주지할 필요가 있다.

외국어를 배우는 가장 좋은 방법은 그 언어권의 나라에서 지속적으로 그 언어를 경험하는 것이다. 악기를 다뤄본 학생이라면 주기적인 연습만이 악기를 능숙하게 다루는 비법임을 알고 있을 것이다. 언어를 구사하듯이, 악기를 연습하듯이 프로그래밍 기술도 하루하루 점진적으로 습득해 나간다는 생각이 중요하다. 어렸을 때 눈사람을 만들어 본 사람이라면 처음엔 힘들지만 눈덩이가 일정 크기가 되면 눈밭에 굴리기만 해도 아주 자연스럽게 크고 튼튼한 눈사람을 만들 수 있다는 사실을 안다. 하지만 잠시라도 눈 굴리는 것을 멈추면 바닥에 얼어붙어 다시 굴리기도, 본래 모양을 유지하기도 어려워 처음보다 더 많은 힘이 들게 된다. 프로그래밍도 이와 유사하다. 하루에 조금씩 자기가 구현해 보고자 하는 눈사람을 상상하며 조금씩 굴려나간다면 곧 본인이 원하는 새로운 세상과 기쁨을 맛볼 수 있다. 학생 스스로 프로그래밍을 어렵게만 생각할 것이 아니라 언어를 공부하거나 예술을 발전시키는 마음으로 임할 필요가 있다.

취업자에게 소프트웨어 도구 혹은 프로그래밍 기술의 습득은 매우 강력한 장점이 될 수 있기에 소프트웨어 교육은 이공계 학생들의 취업 문제를 해소하는데 큰 역할을 할 수 있다. 대학은 학생들의 소프트웨어 교육의 중요성을 인식하고, 최고의 교육자원과 시스템을 갖추며, 학생수준의 다양성을 인지하여 수준별 교육 프로그램과 커리큘럼을 개발해야 할 것이다. 프로그래밍에 관심을 가지고 소질이 있는 비전공자에게는 어떻게 그들 전공과 프로그래밍을 접목하여 새로운 사이버 세상을 창조할 수 있을지 꿈꿀 수 있도록 동기부여를 해야 한다. 이는 월드와이드웹이 물리학자에 의해 제안되었고, 이성에 대한 호감을 바탕으로 공대생이 페이스북을 만들었다는 사실에서도 분명히 알 수 있다. 이를 위해 대학은 이른바 말만 할 줄 아는 프로그래밍 기술자가 아니라 융합적 사고와 컴퓨터 이론까지도 함께 습득할 수 있는 교육프로그램의 개발과 운영에 적극 나서야한다. 더불어 학생들도 학생 간 혹은 세대 간에 더 많은 교감을 통해 융합적인 디지털 인재로 거듭날 수 있는 아이디어를 얻고 실제로 구현할 수 있게 될 것이다.

저작권자 © 연세춘추 무단전재 및 재배포 금지