brunch

You can make anything
by writing

C.S.Lewis

by 코딩하는 수학쌤 Dec 06. 2021

45. 인공지능과 코딩 진로 Q & A 몇 가지

[5악장-concerto] 머신러닝과 코딩

Q. 코딩을 전혀 모르는데 인공지능 관련 전공으로 진학할 수 있을까요?  


 인공지능 관련 개발자를 모집하는 단계라면 코딩을 반드시 할 수 있어야 하겠지만 대학 입학에서 코딩 능력을 무조건 필수적으로 요구하지는 않습니다. 아직까지 모든 학교에 정보 수업이 개설되어 있지도 않고 학생에 따라 코딩을 공부할 수 있는 여건이나 환경이 갖추어져있지 않기도 합니다. 독학으로 공부를 했다고 하더라도 입시에서 증빙하기도 쉽지 않은 상황이죠. 

 대학에서는 학생들의 이러한 상황을 고려하여 1학년 때부터 프로그램 언어를 기초부터 배우도록 하고 있습니다. 따라서 코딩을 알고 있다면 기초 단계를 빨리 넘어갈 수 있겠지만 모르고 있다고 하더라도 진학 자체가 불가능하지는 않습니다. 특기자 전형이 아니라면 인공지능을 공부할 수 있는 학업적 역량이 갖추어졌다고 판단되면 (수능 성적이든 서류 평가이든) 진학에는 큰 문제가 되지 않습니다.

 진로 지도를 하다 보면 전혀 이해가 되지 않은 상태에서 코드를 복붙해서 뭔가 결과를 도출해낸 후 마치 모든 것들을 스스로 한 것처럼 자기소개서를 작성하거나, 이해가 되지 않은 내용들을 작성하는 경우도 있습니다. 이런 경우는 서류에서는 돋보일지 모르지만 면접에서 오히려 역공을 당할 수도 있습니다. 게다가 어려운 내용일수록 교과 역량이 뒷받침이 되어야 하는데 그렇지 않은 경우 신뢰를 주지 못할 수도 있죠. 따라서 코딩 능력을 앞세우기보다는 인공지능을 배우는데 필요한 역량을 갖추었다는 것을 좀 더 돋보이게 쓰는 것이 발전 가능성 면에서 더 도움이 될 것이라고 생각합니다.




Q. 코딩은 언제부터, 어떤 순서로 배워야 하나요?  


 2020년 11월 30일에 방영되었던 JTBC의 차이나는 클라스 ‘인공지능과 함께 살기, 준비됐나요?’ 편에서 코딩 조기 교육이 필요한지에 대하여 홍콩과기대 김성훈 교수와 이두희 개발자자 상반된 입장을 보였습니다. 이두희 개발자는 컴퓨터 언어와 기술은 변화하므로 지금은 수학, 영어와 같은 기본에 충실하고 나중에 코딩을 배우는 것이 좋다는 의견을 내놓았습니다. 반면 김성훈 교수는 코딩은 컴퓨터 언어가 아닌 컴퓨터를 이해하는 과정이며 컴퓨터적인 상상과 사고를 어릴 때부터 발전시킬 수 있기 때문에 조기 교육도 괜찮다는 의견을 내어놓았습니다.


 저 또한 코딩은 배워야 하는 정해진 시기는 없다고 생각합니다. 모범적인 방법이 존재하는 것도 아닙니다. 반드시 블록 코딩부터 텍스트 코딩까지 배워야 하는 것도 아니며, 블록 코딩만으로도 훌륭한 코딩을 할 수 있고, 텍스트 코딩부터 시작해도 나쁘지 않습니다. 대부분 초등학교에서 중학교 과정에서 블록 코딩을 다루고 있으므로 블록 코딩으로 시작하되, 익숙해진다면 텍스트 코딩으로 넘어가도 됩니다. 반면 코딩 자체를 배우고 싶다면 고등학교, 성인이라고 하더라도 블록 코딩부터 시작할 수도 있습니다.



Q. 코딩은 독학으로 배워도 충분할까요?   


코딩 자체를 배우는 것은 독학으로도 충분히 가능합니다. 그러나 한글을 배우는 것과 좋은 글을 쓰는 법을 배우는 것은 분명히 차이점이 존재합니다. 마찬가지로 코딩을 통해 어떠한 문제를 해결할 때는 이와 관련한 전공을 비롯한 배경지식이 충분히 필요합니다.


 코드 체인 서광열 대표는 본인의 SNS를 통해 개발자가 갖추어야 할 4가지 능력으로 컴퓨팅 사고력, 코딩 능력, 소통 능력과 함께 해당 분야의 지식을 꼽았습니다. 아무리 컴퓨팅 사고력과 코딩 능력을 갖추었더라도 문제에 대한 깊이 있는 이해가 없이는 어설프게 문제를 해결할 수밖에 없음을 지적했습니다. 누군가의 요청대로 코딩을 할 줄 아는 수준이라면 결국 무엇을 왜 만들어야 하는지도 모르고 예상되는 문제점도 해결할 수 없기 때문입니다. 따라서 제품과 서비스에 대해서는 전문가 수준의 지식을 가져야 한다고 말했습니다.


 따라서 혼자 배울 수도 있지만 어떤 목표를 성취하는 프로젝트형으로 하기를 추천합니다. 어떤 책을 따라 하더라도 직접 내가 목적을 가지고 코드를 고민해보지 않으면 쉽게 잊히기도 하거든요. 이 과정에서 원하는 기능을 구현해내기 위해 내가 알고 있는 지식들을 총동원해보는 경험을 해보면 성장이 촉진되죠. 백준 온라인 저지와 같은 코딩 테스트도 좋고, 직접 공공데이터를 활용해 활동을 해보는 것도 도움이 됩니다.


 추가적으로 청소년 시기에는 코딩을 비롯하여 다양한 개념적 지식을 갖출 필요가 있습니다. 코딩은 독학으로 할 수 있지만 컴퓨팅 사고력을 포함한 역량은 코딩만 가지고 생겨나는 것이 아니기 때문입니다. 




Q. 아두이노, 마이크로비트를 활용한 메이커 활동이 인공지능 진로에 도움이 될까요?   


 아두이노나 마이크로비트가 익숙한 학생들도 많겠지만 처음 듣는 학생도 많이 있을 것입니다. 아두이노는 다양한 센서와 부품을 연결하고 코딩을 통해 모터나 LED, LCD 화면 등을 제어하는 마이크로 컨트롤러입니다. 마이크로 비트도 아두이노와 비슷한 역할을 하는데 회로 설정이 간단하고 주로 블록 코딩을 활용하기 때문에 입문자용으로 많이 활용되고 있습니다. 두 기기 모두 센서 및 장치를 연결하고 코딩을 통해 작동 방법을 구현함으로써 시제품을 간단히 만들어보는 메이커 활동에 주로 활용합니다. 정보 교과서에서도 피지컬 컴퓨팅 단원에서 아두이노를 소개하죠.  

메이커 활동에 주로 사용되는 아두이노(좌. 아두이노 우노)와 마이크로비트(우)

 아두이노와 마이크로비트는 코딩을 실제 세계에서 물리적인 활동을 할 수 있다는 특징이 있습니다. 예를 들어 인공지능 카메라 센서를 통해 마스크를 끼지 않은 사람이 있을 때 ‘마스크를 착용하세요’라는 말을 스피커로 출력하는 제품을 만들어보고 싶다고 해보죠. 그렇다면 실제 세계에서 완전한 외형을 갖춘 제품으로 만들기는 어렵겠지만 기능만큼은 제대로 수행하는 시제품을 출시할 수는 있겠죠. 


 이러한 활동을 하는 과정에서   

문제는 무엇인가?  

해결하는 문제를 어떻게 분해할 수 있는가?  

분해된 각 단계를 어떤 도구를 활용해 해결할 수 있는가?  

구현 과정에서 필요한 이론은 무엇인가?  

등 다양한 컴퓨팅 사고력을 발휘할 기회를 만납니다. 때로는 팀원들이 문제 해결을 위해 함께 아이디어를 나누다 보면 각자의 관심사 혹은 소질이 함께 융합되기도 하죠. 어떤 친구들은 장치를 구체적으로 설계하기도 하고, 어떤 친구들은 코딩을 잘하기도 하며, 어떤 친구들은 외관 케이스를 어떻게 만들면 좋을지 아이디어를 제시할 수도 있습니다. 때로는 자신이 알고 있던 경험이나 지식이 새롭게 연결되어 기발한 발상이 되는 창의력이 발현되기도 하죠.


 메이커 활동의 체험이 컴퓨터 공학, 기계공학, 전자전기공학을 비롯한 진로를 결정하는 동기가 되기도 합니다. 또한 설계 능력이나 센서 활용 방법 등을 알고 나면 생명과학, 화학, 물리 등의 자연과학을 하거나 카메라 인식 능력을 활용한 연구 방법을 인문 과정에서도 활용할 수도 있습니다. 여러 전공에서 인공지능을 활용하는 사례들은 7장에서 다양하게 살펴볼 예정입니다.


 메이커 활동을 하면서 아두이노나 마이크로비트를 활용한 다른 사람들의 연구 및 개발 사례를 참고해서 비슷한 활동을 해보거나 자신만의 아이디어를 구현해볼 수도 있죠. 게다가 코딩 능력도 키울 수 있고, 코딩 결과가 실제로 부품으로 작동하기 때문에 또 다른 차원의 흥미를 느낄 수도 있습니다. 프로젝트 도증 ‘이 단계에서 인공지능의 인식 기능(또는 분류 기능이나 예측 기능)이 적용되면 좋겠구나.’와 같은 생각을 할 수 있는 기회를 맞이할 수 있습니다. 메이커 활동에서는 이러한 동기 부여의 자극을 다양하게 접할 수 있고, 구현에는 정답이 없기 때문에 많은 아이디어들이 함께 어우러질 수 있는 장점이 있습니다. 게다가 인공지능 기능이 탑재된 센서와 부품들이 기존의 아두이노, 마이크로비트와 연계되도록 개발이고 계속해서 출시되고 있습니다. 인공지능 진로에 많은 도움이 되므로 적극적으로 도전해보세요.



이제 인공지능과 수학, SW에 대한 글을 어느 정도 충분히 다룬 것 같습니다. 앞으로는 저도 수학 본연으로 돌아가 전공 수학(선형대수학부터)을 비롯해서 인공지능의 다양한 알고리즘을 좀 더 쉽게 풀어보는 기획을 해보려고 해요.


수학을 배운지 오래되었거나 배우고 있는 단계에서 좀 큰 틀로 살펴보는 분들에게 도움이 되는 글을 써보려고 합니다. ^^  부족한 글 읽어주시는 분들께 감사드립니다~

매거진의 이전글 44. 머신러닝을 손쉽게 활용하는 Orange SW
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari