인생멘토·코딩교육

[코딩교육] 코딩교육에 대한 오해 풀어보기 1

Buddhastudy 2022. 3. 31. 19:18

 

 

이번 강의에선

코딩교육에 대해 많은 사람들이 일반적으로 오해 하고 있는

여러가지 것들을 풀어 보는 시간을 가져보려고 합니다.

 

코딩교육이 사실 준비가 안 된 상태에서 도입하려고 하다 보니까

일반 사람들에게 너무 홍보가 안 되어 있습니다.

그래서 사람들이 잘 몰라요.

 

사실 교육부에서 그런 교육을 공교육에 도입하려면

이렇게 저처럼 체계적으로 코딩교육에 대해서 사람들이 알아 갈 수 있도록 강좌를 만들어주던 가 해야 하는데

안 하더라구요.

 

결과적으로 사람들은 코딩교육에 대한 정말 많은 오해들을 하고 있습니다.

하나씩 하나씩 그런 오해들을 규명하고 풀어보도록 하겠습니다.

 

----사례1

어떤 한 엄마의 이야기를 읽어보겠습니다.

(동생이 게임사에서 개발자로 일하는 데 이번 연휴 동안 한 번 꼭 만나려고 해요.

8살 난 딸이 있는데 어떻게 코딩교육을 해야 하는지 걱정돼서요.

나중에 아이가 뒤처질까 걱정되요 라고 말했네요)

 

동생이 프로그래머니까 동생에게 코딩교육에 대해서 물어보면 적합 하겠다고 이 엄마는 생각하고 있죠.

과연 이게 적합한 일인가요?

전혀 그렇지 않다고 이전 강의에서 설명을 했었습니다.

 

저도 현재 프로그래밍을 하고 있고 컴퓨터공학을 전공 했지만 이전에 언급했듯이

저조차도 코딩교육을 받아본 적이 없는 세대에요.

코딩교육은 이제 태어난 교육이거든요.

사람으로 치면 이제 신생아인 거예요.

 

그러니까 현재 프로그래머로 일하고 있는 현업 개발자들은

코딩교육을 받은 적이 없는 세대라는죠.

 

그분들이 받았던 교육은 전통적인 프로그래밍교육 이지

코딩교육이 아니라는 거예요.

프로그래밍 교육이 어떤지는 제가 이전 강의에서

제 경험을 말씀드리면 어렵고 지루한 교육이고 배우기는 어렵고 가르치는기는 더 어렵다 는 평판을 가지고 있다

그것이 한국에서만 그런게 아니라 전세계적으로 그러하다라고 언급하였습니다.

 

그런데 코딩교육을 받아본 경험이 없는 프로그래머가

어떻게 코딩교육에 대해 조언을 해주겠어요.

 

그분들은 자신이 경험한 걸 토대로 해서 조언을 해줄게 뻔하거든요.

그런데 그분들이 경험한 건 프로그래밍 교육이란 말이에요, 코딩교육이 아니고요.

 

다시 한번 강조하지만 코딩교육은

컴퓨터적 사고력을 계발하는 것이 목적입니다.

코딩교육은 산업인력을 양성하기 위한 프로그래밍 교육과 다르다는 점을 이전에 분명히 했었고요.

 

따라서 프로그래머에게 코딩교육에 대한 조언을 받는 건 절대 추천하지 않습니다.

오히려 잘못된 오해만 더 늘어날 수가 있어요.

 

 

--사례2

자 그럼 다른 오해도 한번 살펴보도록 할께요.

또 한번 읽어보 겠습니다.

 

(우리나라엔 프로그래머가 넘치다 못해 파묻히고 있어요.

프로그래머 대우도 제대로 안 되면서 무슨 코딩교육을 한다고 하나요?

끝도 없는 야근에 말도 안 되는 요구사항을 들어줘야 하는게 프로그래머가 하는 일입니다)라고

프로그래머 업무에 대한 맥락을 잘 아시는 것 같은 분이 말씀해주셨네요.

 

일반적으로 한국에서 일하는 한국인 프로그래머들은

그 수도 많고 대우도 형편 없는 거, 틀리지 않습니다.

한국의 소프트웨어 산업은 뭔가 창의적인 소프트웨어를 만들어내는 산업이 아니거든요.

 

우리가 사용하고 있는 유명한 소프트웨어는 거의 다 외국 거예요.

거의 미국 기업들에서 개발된 것들이죠.

윈도우즈라든가 워드, 파워포인트, 페이스북, 어도비 제품들 등등

업무에서 사용하는 도구들은 거의 다 미국 거예요.

 

그리고 핸드폰에서 사용하는 운영체제들도 다 미국 거죠.

구글의 안드로이드랑 애플의 ios 다 미국 거예요.

 

한국에서 만들어낸 멋진 소프트웨어 아시는 거 있나요?

카카오톡 정도?

 

우리나라엔 멋진 소프트웨어를 만들어내는 회사가 거의 전무합니다.

애플, 구글, 어도비 같은 순수 소프트웨어 회사가 없어요.

 

한국에선 소프트웨어로 돈을 많이 벌지 못하는데

한국의 프로그래머들의 처우가 좋을 수가 없는 일이고요.

 

그런데 코딩교육의 목적이 산업인력을 양성하는 것이 아니라고 했었어요.

프로그래머를 양성하는 것이 코딩교육의 목적이 아닙니다.

 

우리나라 소프트웨어 산업이 경쟁력이 굉장히 떨어지고 업무환경도 안 좋은 것은 사실이지만

코딩교육을 이런 산업 환경 때문에 하는게 별로 소용없다

이렇게 해서는 안 된다고 주장하는 건

정말 미래의 밥그릇까지 차버리겠다는 거랑 비슷한 거예요.

 

이전에 언급했던 것처럼

세상의 돈은 테크놀로지 기업들이 쭉쭉 빨아들 이고 있어요.

이런 상황에서 그냥 손 놓고 있자는 말은

미래를 대비하지 말자는 말이랑 비슷한 거예요.

 

소프트웨어 산업이 우리나라에서 잘 안 되고 있다고 해서

소프트웨어 교육을 한국에서 해도 소용없다고 말하는 건

도움이 전혀 안 되는 거라는 거예요.

 

오히려 한국에선 소프트웨어 산업 분야가 약하니까

이 영역에 더욱 투자하고 교육 측면에서도 이 부분을 더 강화해야 하는게

맞는 방향 아니겠어요?

 

우리나라에서 지금 상황에 구글이나 아마존 같은 회사가 나오기 힘들겠죠.

그래도 소프트웨어로 돈을 벌어들이는 강소기업들을 많이 나와야 하지 않겠어요?

 

소프트웨어 개발이나 활용 능력이 있는 사람들이

훨씬 경쟁력있는 사람들이라는 점엔 반박의 여지가 없어요.

거의 모든 산업계에서 소프트웨어를 사용해서 업무를 하기 때문에

소프트웨어를 모르면 업무를 못하는 거고

언젠가 기술에 의해서 내가 대체가 될 가능성이 무지 크다는 거예요.

 

코딩교육은 아이들이 새로운 기술에 대해 가지는 태도에 큰 영향을 미칠 수 있습니다.

기술을 보고 도망가는게 아니라

기술 친화적인 사람이 되도록 만들어 줄 수 있다는 거예요.

 

정리하자면 한국 프로그래머들의 처우가 안 좋은 건

우리나라 산업 계의 구조적인 문제이지

이거 때문에 코딩교육이 필요 없다는 건 정말 큰 오해입니다.

 

 

--사례3

이제 마지막으로 다른 오해를 살펴볼게요.

(프로그래밍을 제대로 하려면 적어도 5년 이상 많은 연습 시간이 필요한 데

초중등에서 몇십 시간 배우는 게 무슨 소용이 있나

전문적인 분야 인 프로그램밍을 왜 애들한테 교육을 시키는려고 하나)

라는 문제를 어떤 분이 제기하셨어요.

 

프로그래밍은 어렵습니다.

프로그래밍이라는 걸 익숙하게 하려면 정말 오랜 연습이 필요해요.

 

하지만 이 강좌에서 항상 강조되는 사실이 하나 있었죠.

코딩교육과 프로그래밍 교육은 서로 다른 교육이라고요.

 

코딩교육은 코딩스킬을 배우는게 아니라

코딩 활동을 통한 컴퓨터적 사고력 계발하는 게 목적이라는 거라는 점이죠.

 

프로그래밍 교육에선 산업용 언어인 c언어나 자바와 같은 컴퓨터 언어들을 배우지만

코딩교육에 선 그런 언어들을 수업에서 안 배웁니다.

 

만약 아이들한테 산업용 언어를 가르치는 학원이 있다고 하면

그건 정말 심각한 문제에요.

그런 학원은 절대 가면 안 돼요.

 

물론 어렸을 때부터 소프트웨어 개발자로서의 커리어를 아이가 쌓게 해주고 싶다

대학도 소프트웨어 개별 역량을 통해서 들어가고 싶다 하는 경우라면

그건 코딩교육의 영역이 아니라 프로그래밍 교육의 영역이에요.

 

성인들이 받는 교육처럼

그런 아이들은 전문 프로그래밍 공부를 해야 하는 거예요.

 

하지만 코딩교육은 컴퓨터적 사고력을 계발하기 위한 교육이에요.

나중에 아이들이

전문 소프트웨어 개발자가 되고 싶어요하는 경우도 있을 수 있는데

코딩교육에선 그런 것까지 커버해주진 않아요.

그러면 코딩 교육의 영역을 벗어나는 거예요.

 

그리고 코딩 교육은 기본적으로 아이들을 대상으로 하는 교육이기 때문에

수업에서 사용되는 컴퓨터 언어도 산업용 언어처럼 난이도가 높은 언어들이 아니라

더 쉬운 교육용 언어를 사용합니다.

이런 언어를 EPL이라고 부릅니다.

영어로 educational programming language의 앞 글자만을 따서 EPL이라고 하죠.

 

EPL은 학생들이 프로그래밍 원리를 보다 쉽게 배울 수 있도록

쉬운 인터페이스와 문법을 가지고 있는 학생용 프로그래밍 언어입니다.

 

EPL에도 종류가 많은데요

이 중 대표적인 것으로 가장 유명한 건 스크래치라는게 있습니다.

프로그래머들은 코딩할 때 글을 쓰듯 한 줄씩 코드를 직접 입력해야 하지만

스크래치는 마우스 드래그 드랍으로

블록을 조립하는 방식으로 하나의 프로그램을 만들어낼 수 있습니다.

 

모습은 다르지만, 인터페이스는 다르지만, 프로그래밍 원리는 똑같기 때문에

스크래치를 통해서도 아이들이 쉽게 프로그래밍 원리를 배울 수가 있거든요.

 

--

자 그럼 강의 내용을 정리해보겠습니다.

코딩교육은 프로그래밍과 다른 교육이라는 거

그래서 프로그래밍 교육을 받고 프로그래머가 된 현직 개발자들에게

코딩교육에 대해 조언을 구하는 것이 현명한 일이 아니라는 걸 알게 되었습니다.

 

그리고 코딩교육에선 산업용 컴퓨터 언어가 아니라

EPL이라는 교육용 언어를 사용한다는 것도 새롭게 알게 된 사실이에요.