보도자료

SW 교육, ‘창조의 가능성’ 키운다

관리자 0
1,040 2015.03.18 20:00

짧은주소

본문

보편적 SW 교육이 필요한 이유

SW 교육, ‘창조의 가능성’ 키운다이미지 크게보기
 
우리나라는 조금 늦은 감이 있지만, 몇 해 전부터 세계적으로 소프트웨어 교육이 큰 화두로 등장했다. 거의 모든 산업 분야에서 소프트웨어가 중요한 역할을 담당한 것은 오래 됐지만 최근 소프트웨어 교육이 큰 조명을 받게 된 것은 소프트웨어를 기능 중심에서 사람 중심으로 보기 시작했기 때문이다. 여기서 사람이란 소프트웨어를 사용하는 사람, 소프트웨어를 이용한 서비스를 만드는 사람, 소프트웨어를 직접 개발하는 사람 모두를 말한다.

전통적인 소프트웨어는 이미 존재하는 프로세스를 더 효율적으로 만드는 역할을 했다. 데이터베이스, 오피스웨어, 뱅킹, CRM, ERP 등의 시스템들 비즈니스 비용을 줄이기 위해 사용된다. 임베디드 시스템은 제품의 전 생명 주기에서 발생하는 비용을 낮추거나 비행기 같은 정밀 제어 시스템에서 사람의 실수를 최소화하고 판단을 돕는 역할을 했다. 다시 말해, 전통 산업에서 소프트웨어는 산업 혁명 초기에 만들어진 기계들이 그랬던 것처럼 스스로 가치를 만드는 것이 아니라, 이전에 있었던 가치를 효율적으로 달성하도록 돕는 역할을 했다. 아직도 전통적 소프트웨어 시장은 건재하지만, 이제 소프트웨어는 전혀 다른 영역에서 큰 역할을 하고 있다.

사람들이 현실에서 경험할 수 없는 것들을 가능하게 만들고 꿈을 실현시켜 주는 컴퓨터 게임, 인터넷 공간에서 내 존재감을 높이고, 직접 만나지 못해도 감정적인 연대감을 느끼게 해주는 소셜 네트워크 시스템들이 그 예다. 이들은 이전에는 존재하지 않았던 가치를 새로 창조하거나 기존 가치들을 완전히 다른 형태로 효과적이고 확장성 있게 달성하도록 도와준다. 또 하드웨어 발전과 네트워크 환경의 획기적인 개선에 따라 빅데이터 분석, 머신 러닝을 통해 복잡한 문제들을 의미 있는 짧은 시간에 푸는 것이 가능해졌다.

이에 따라 지적 통찰을 요구하는 일들이 일부 천재적인 사람들의 독점에서 벗어나는 계기를 소프트웨어가 조금씩 만들어 내고 있다. 소프트웨어 역할 변화의 중심에는 사람이 있다. 이는 새로운 소프트웨어가 비즈니스만을 위한 것이 아니라 사용자 자신에게 어떤 가치를 주기 위한 것이기 때문이다. 아직은 사람만이 인간적인 가치를 만들어내는 메커니즘에 접근할 수 있다. 이러한 요인들이 전통 산업이나 서비스, 지식 기반의 산업에서 적어도 소프트웨어의 가치와 가능성을 이해하고 소프트웨어적인 사고를 통해 사람이 가진 복잡한 생각들을 절차적으로 풀어내는 방식을 누구나 배워야하는 상황을 만들어 냈다. 어쩌면 지금은 모든 사람들이 글을 깨우치게 하는 것이 중대한 목표였던 시절과 비슷한 상황일 수 있다.
 
SW 교육, ‘창조의 가능성’ 키운다이미지 크게보기
 
소프트웨어적 사고 체험
보편적인 소프트웨어 교육이 붐을 일으킨 결정적인 계기는 미국에서 2013년 12월 컴퓨터 사이언스 교육 주간에 민간단체인 ‘code.org’가 ‘Hour of Code Challenge’ 캠페인을 시작하고 부터다. 이 캠페인에서 오바마 미국 대통령, IT 유명 인사, 스포츠 스타들이 등장해 소프트웨어의 재미와 배워야 하는 이유를 설명했다. 스크래치 기반의 프로그램 연습인 이 캠페인에는 시작 2주일 만에 2000만 명이 참여했고 지금까지 1억 명 이상이 한 시간의 코딩 경험을 했다.

캠페인 형식의 한 시간 코딩 경험만으로 할 수 있는 일은 거의 없다. 일반인들을 위한 유의미한 소프트웨어 교육은 칸 아카데미1), 다른 온라인 교육 사이트(MOOC)2)들에서 무료로 다양한 언어, 다양한 수준으로 쉽게 받을 수 있다. 국내에도 이고잉님이 운영하는 생활 코딩3)이나 한국공개소프트웨어협회에서 운영하는 OLC주니어4) 사이트에서 누구나 어렵지 않게 배울 수 있는 무료 소프트웨어 교육 콘텐츠를 접할 수 있다.

일반인들을 위한 오프라인 교육도 많이 있다. 국내에서는 고용환급금과 같은 정부 지원금으로 운영되는 교육과 전문 학원, 그리고 최근 많이 생겨난 커뮤니티 주도로 이루어지는 스터디가 있다. 이들은 취업이나 기술 역량 함양을 목표로 특정 산업부문에 필요한 소프트웨어 기초와 응용 기술을 집중 교육한다.

소프트웨어 시장이 매우 커서 개발 인력 수요도 많은 미국에는 기업들이 원하는 특정 소프트웨어 기술을 교육하는 기관들도 많다. 최근에 매체에 자주 언급된 플랫아이언스쿨(Flat-Iron School)5)은 선발된 학생을 대상으로 등록금 1만 5000천 달러를 받고 시장에서 가장 수요가 많은 루비 온 레일즈(Ruby-On-Rails) 또는 iOS를 12주 동안 교육한 뒤 상당 수준의 연봉을 받는 직장을 구할 수 있도록 도와준다.6) 이 밖에도 교육 사업의 성격상 학생들의 수강료만으로는 유지가 어렵기 때문에 기부금에 의존하는 재단 형태의 교육기관, 학생과 채용 기업이 교육비를 적당한 비율로 나누는 방식의 교육기관들이 많이 생겨나고 있다.

전통적인 소프트웨어 전공 교육은 주로 대학에서 이루어지고 있다. 일반 대학이나 NHN NEXT와 같은 기관들은 컴퓨터 사이언스의 이론 과목과 인문학, 자연과학 등의 교양 과목들을 함께 학생들에게 제공한다. 또 각 대학이 처한 환경에 따라 기관에 맞는 응용 과목들을 개설하거나 산업체와 프로젝트를 통해 학생들이 취업을 위해 필요로 하는 기술과 경험을 습득할 수 있게 한다. 거의 모든 나라의 소프트웨어 관련 학과들은 큰 틀에서 미국의 ACM과 IEEE 컴퓨터 소사이어티에서 만든 ‘컴퓨터 사이언스 커리큘럼’7)을 따르고 있다. 최근 국민대는 컴퓨터 관련 전공이 아닌 다른 모든 학생들을 위한 소프트웨어 의무 교육을 시작했다.

초·중·고 학생 대상 교육 증가추세
초·중·고 학생을 대상으로 한 소프트웨어 교육도 늘고 있는 추세다. 초·중등 학교에서의 소프트웨어 교육을 논할 때 가장 많이 인용되는 나라는 에스토니아다. 발트삼국의 최북부에 있는 인구 130만 명의 나라 에스토니아는 원래 제조업과 화학 산업 중심의 국가였지만, 1997년부터 티그리후페(Tiigrihupe, 호랑이의 도약이란 뜻의 에스토니아어) 프로젝트를 시작으로 빠르게 정보화를 진행, 지금은 정보화 선진국이 됐다.

마이크로소프트가 인수한 스카이프(skype)가 에스토니아에서 만들어졌다는 사실을 아는 사람은 많지 않다. 에스토니아는 모든 교과에서 ICT를 활용하도록 권장하고 있으며, 2011년부터는 독립 교과로 소프트웨어 교육을 포함시켰다. 특히 2012년부터 시작된 프로지티거(ProgeTiiger, 프로그램 하는 호랑이) 프로젝트는 초등학교 1학년부터 고등학교까지의 교육 과정으로 개발하고, 교사 교육, 교육 자료 개발 등을 주도해 많은 학교들이 참여하고 있다.

잉글랜드는 2013년 교육과정8)을 개정해 2014년 9월부터 ‘컴퓨팅’이란 이름의 독립 교과로 5세부터 고등학교까지의 전 단계에서 교육을 한다. 이 교육에서는 컴퓨터 기반 사고(Computational thinking), 추상화, 코딩과 IT 도구를 모두 다룬다. 미국은 주별로 차이가 많지만 선택적인 소프트웨어 과목을 수학, 과학 과목의 이수로 인정하는 주도 있다. CSTA(Computer Science Teachers Association)의 K-12 소프트웨어 교육 표준안9)에서는 컴퓨터 기반 사고 중심 교육에서 시작해 문제해결 능력, 프로젝트 수행에 이르는 단계적 교육 과정을 제시하고 있다. 특히 미국 대학 입시 주관기관인 칼리지보드는 2016년부터 ‘컴퓨터 사이언스: 원리’ 과목을 AP(Advanced Placement, 대학과목 선이수제)에 포함시킬 계획이다.

이스라엘은 오랜 준비를 거쳐 2011년부터 중학교에서는 필수, 고등학교에서는 선택으로 소프트웨어 교육을 하고 있다. 특히 9학년(우리의 중학교 3학년)에는 문제를 스스로 제안하고 해결하는 프로젝트를 수행하도록 되어 있다. 인도 또한 IIT(India Institute of Technology)에서 컴퓨터 교육과정인 CMC(Computer Masti Curriculum)를 2011년에 제정, 1~8학년까지 학생들에게 컴퓨터 교육을 권장하고 있다. 이 교육과정에서는 컴퓨터 기반 사고와 코딩, 그리고 소프트웨어의 인문사회학 측면을 가르치도록 되어 있다.
 
SW 교육, ‘창조의 가능성’ 키운다이미지 크게보기
 
소프트웨어로 가치 창출 인식 목표
개발자를 양성하기 위한 전문 교육은 매우 명확한 목표가 있다. 기업들이 원하는 기술에 능하고, 새로운 기술을 습득할 수 있는 역량과 소통 역량을 높이는 한편 업무에 대한 태도를 바르게 가지는 것이다. 하지만 보편적 교육 특히 초중고에서의 교육 목표는 개발자를 양성하는 것이 아니기 때문에 훨씬 정제된 목표를 가져야 한다.

보편적 소프트웨어 교육의 목표는 소프트웨어의 가치를 인식하고 직접 코딩을 하지는 않더라도 소프트웨어로 문제 해결을 하는 방식에 익숙하게 하며 소프트웨어가 가진 무한한 가능성을 자신의 영역에 융합해 새로운 가치를 만들 수 있다는 생각을 심어주는 것이다. 이 과정에서 논리, 수학적 사고 역량도 높아진다. 소프트웨어 교육에는 다양한 방식이 있다. 여러 프로그래밍 언어 가운데 하나를 선택하여 직접 가르치는 방법(코딩 교육)과 컴퓨터 기반 사고를 다른 과목의 수업 과정에 도입하는 방법, 로봇이나 다른 도구를 이용해 간접 소프트웨어 경험을 하게 하는 방법 등 다양하다.

소프트웨어 교육은 학생의 수준, 교육 환경, 취향에 따라 어떤 방법을 사용해도 좋다. 어느 방법을 선택하든 중요한 것은 개발자 양성이 아니다. 학생들이 소프트웨어로 스스로 뭔가 만들어 보고, 자신의 문제를 소프트웨어로 해결해보는 소중한 경험을 하며 그 경험이 꽤 재미있는 기억으로 남게 하는 것이다. 이를 통해 이미 공기와 같이 세상에 없어서는 안 될 소프트웨어가 세상의 모든 문제 해결을 위한 중심 도구일 가능성이 높다는 생각 즉, 소프트웨어 마인드를 인식할 수 있도록 교육하는 것이 중요하다.

그런 관점에서 중요한 것은 교사의 역할이다. 소프트웨어는 기본적으로 문제 해결 도구이기 때문에 교사는 학생들에게 좋은 질문을 해 학생들의 창의적 대답과 새로운 질문을 유도하고, 학생들 스스로 문제를 찾고 소프트웨어적으로 해결하는 과정을 도와야 한다. 따라서 소프트웨어를 잘 알고, 스스로 소프트웨어로 문제를 해결해 본 경험이 있는 교사들이 학생들을 지도해야 한다.

우리나라는 아직 이 부분의 준비가 부족하다는 것이 많은 전문가들의 우려다. 외국의 경우도 비슷한 문제를 가지고 있으며, 교육 현장에 실제 개발자를 참여시키는 방법으로 이 문제의 답을 찾고 있다. 가르치는 방법을 아는 교사와 소프트웨어를 경험한 개발자 커뮤니티가 같이 소프트웨어 교육을 하는 것이다. 이렇게 하려면 교육이라는 특수한 환경에 적용되는 법과 절차의 개선과 함께, 우리 개발자들이 속한 회사의 근로 조건 개선도 필요하다.

소프트웨어를 문화적 관점에서 보는 시각 또한 중요하다. 아이디어가 나오고, 개발이 진행되는 전 과정도 그렇지만, 모든 산업과 융합될 수 있다는 점에서 소프트웨어를 문화로서 봐야한다. 교육 환경에서도 호기심을 불러일으키고 어울려 즐길 수 있는 무언가로서 소프트웨어가 존재해야 한다. 스티브잡스나 마크 저커버그, 빌게이츠는 학교에서 어릴 때부터 소프트웨어 교육을 받았기 때문에 지금 그 자리에 있는 것이 아니다.

호기심을 자신의 방법으로 해결할 수 있는 시간이 어릴 때 주어졌고 어느 순간 소프트웨어를 만났기 때문에 훌륭한 개발자, 소프트웨어 사업가로 성공한 것이다. 그런 관점에서 소프트웨어 교육을 수학 과학뿐만 아니라 미술, 음악 등 다른 모든 과목들과 연계해 학생들이 재미를 느끼면서도 창의적 사고의 폭을 넓혀줄 수 있는 교수법에 대한 고민이 필요하다.
댓글목록

등록된 댓글이 없습니다.