[코딩을 배우려는 당신에게] #1. 코딩길도 한 걸음부터 – LG 공식 블로그
본문 바로가기

[코딩을 배우려는 당신에게] #1. 코딩길도 한 걸음부터

작성일2018-07-20

코딩을 배우고 싶다고?”

컴퓨터와 단 1도 친하지 않은 네가, 나에게 코딩이 뭔지 물어왔을 때 사실 적잖이 당황했어. 그리고 새삼 느꼈지 ‘요즘 들어 코딩을 배우려는 사람들이 정말 많아졌구나…’

왜 요즘 여기저기서 코딩 열풍이 불고 있는 걸까? ‘4차 산업혁명시대’ 라는 말을 자주 들어봤을 거야. 영국에서 시작된 증기기관과 기계화로 대표되는 1차 산업혁명과 전기를 이용해 대량생산이 가능해진 2차 산업혁명, 인류 최고의 발명이라고 할 수 있는 인터넷이 이끈 3차 산업혁명에 이어 이제는 정보통신 기술이 세상을 바꾸는 시대가 도래한 거지.

코딩_4차산업혁명

4차 산업혁명시대에는 소프트웨어를 다루는 능력은 선택이 아닌 필수가 되고 있어. 소프트웨어는 인공지능(AI), 사물인터넷, 지능형 로봇, 빅데이터 분석·활용 등 4차 산업혁명 시대 주요 산업 분야에서 공통적으로 쓰이는 핵심 기술이기 때문이야. 그리고 바로 이 소프트웨어를 만들고 구성하는 작업이 코딩이라고 할 수 있지.

코딩은 꼭 복잡한 프로그램을 만드는 데에만 사용되지 않아, 복잡한 데이터가 있을 때 코딩을 통해서 그것을 분석하고, 그들이 주는 메시지를 해석할 수 있어. 빅데이터가 중요해지고 있지만 그것이 주는 의미를 읽지 못한다면 쓸모 없는 데이터와 다를 바 없겠지.

코딩을 배우려는 너에게

코딩_coding이란

코딩(Coding)이 무엇인지 알아보기 전에 알고리즘(algorithm)에 대해 먼저 알아볼게

요리를 예로 들어볼게, 김밥을 만든다고 생각해보자. 우선 재료를 준비하고 손질해야 하고, 그 다음에는 김에 밥을 깔고 재료를 순서대로 넣어야 하지. 이처럼 방법을 세분화하고 순서에 따라 처리하는 과정을 알고리즘이라고 해. 밥을 먼저 깔고 김을 놓으면 누드김밥이 되는 것처럼 똑같은 명령을 수행하더라도 어떤 알고리즘을 거치느냐에 따라 효율성과 결과가 달라질 수 있지.

코딩_김밥

코딩은 이 알고리즘을 컴퓨터가 이해할 수 있는 언어로 바꾸는 작업이야. 즉 코딩이란 특정한 프로그램 언어를 사용해 프로그램을 제작하는 일을 말해. 보통 코딩하면 어렵게들 생각하지만 우리가 누군가와 대화하기 위해 쓰는 편지라고 생각하면 쉬워. 다만 우리는 그 대화를 컴퓨터와 나누게 되는 것이지.

코딩_편지

프로그램 R을 소개할게

코딩을 하기 위한 프로그램은 다양한 것이 있지만, 초보자들에게 적합한 프로그램인 R을 소개할게. R은 다른 프로그래밍 언어에 비해 자료를 처리하는 데 탁월한 기능을 가지고 있어. 또한 많은 연구 및 개발자들이 제공하는 다양한 소스를 활용할 수도 있고, 간단히 몇 줄의 코딩만으로 표, 차트, 지도 등 다양한 시각화 자료를 쉽게 만들어 낼 수 있지.

코딩하면 멋지고 복잡한 소프트웨어만 만든다고 생각하는 사람이 많은데, 실제 코딩은 우리가 구별하지 못하는 방대한 데이터들을 처리하고 가공하는데 더 많이 사용되고 있어. R이 가지고 있는 강력한 데이터 처리 능력과 쉬운 사용법 덕분에 너처럼 IT와 무관한 사람이라도 R로 쉽게 코딩을 배울 수 있지. 그렇다면 R의 장점에 대해서 더 알아볼까?

첫째. R은 오픈 소스(Open Source)다.

R은 오픈소스 프로그램이야. 오픈소스란 무상으로 공개된 소스코드 또는 소프트웨어를 말해. 오픈소스 기반이기 때문에 다양한 커뮤니티에서 각 사용자들이 자신의 데이터를 공개하면서 R은 점점 발전하고 있어. 한 명이 하나의 데이터를 공유한다고 가정할 때 100명이 각각 공유한다고 해도 100개의 의미 있는 데이터나 알고리즘을 얻을 수 있지.

둘째. R의 성능은 우수하다.

R프로그램은 데이터 분석을 목적으로 만들어졌기 때문에 다양한 통계 방법론을 적용한 데이터 분석 기능을 제공하고 있어. SPSS, SAS, Minitab과 같은 유로 통계 프로그램과 견줄 정도로 성능이 우수하지. 그래서 다양한 분야의 통계 학자와 연구원들이 표준으로 인정할 정도로 선호하는 프로그램이기도 해. 실제 R에는 수백가지의 통계 알고리즘과 그래프 기능이 있어, 또한 자체적으로 함수와 알고리즘을 설계할 수 있도록 프로그래밍 언어도 제공하지.

셋째. 혼자가 아니다.

프로그램 R은 오픈소스이기 때문에 다양한 사용자 커뮤니티가 존재하고 있어. 덕분에 서로 도움을 받는 것이 쉽지. 사용자들의 노하우가 담긴 자습서, 데이터 Set을 제공하고 있고 특정 주제에 대한 토론도 활발하게 진행되고 있어. 즉 프로그램을 배우고 소스를 공유할 수 있는 다양한 루트가 있기 때문에 다른 프로그램에 비해 더욱 쉽게 공부할 수 있지.

자 그럼 본격적으로 프로그램 R을 만나보자, 먼저 R을 다운받아서 설치하는 방법부터 살펴볼게.

코딩_메인화면

 

R을 만나러 가자!

① 웹 브라우저를 열고 https://mran.microsoft.com로 접속한다.

② 다음 Microsoft R Open에 Download Now를 클릭하여 다운로드 페이지로 이동한다.

③ 사용하고 있는 운영체제를 확인한 후 다운로드 버튼을 눌러 다운로드 한다.

④ Microsoft R 아이콘을 클릭하면 프로그램이 시작된다. 

프로그램을 실행하면 위와 같이 R Console 창이 뜨는데, 콘솔(Console)이란 수동으로 컴퓨터를 제어하는 장치로서 사용자가 입력한 내용에 따라 제어 명령이 반영되는 도구라고 이해하면 쉬워. 이 R Console이라는 영역은 컴퓨터와 대화를 나누기 위한 편지지라고 생각하면 이해가 쉬울 거야.

코딩_1

자 그럼 아주 쉬운 예시를 하나 들어볼게. 콘솔창에 1+1을 입력하고 엔터(enter)를 쳐보자. 즉 컴퓨터에게 1+1이 무엇인지 한번 물어보는 거지. 물론 이 정도는 컴퓨터에게 물어볼 필요도 없이 2라는 사실을 알고 있지만 과연 컴퓨터도 그런지 한번 확인해볼까?

코딩_2

아랫줄에 [1]2 라는 결과가 보이지? R을 이용한 컴퓨터와의 첫 대화를 축하해. 물론 이런 간단한 계산을 하기 위해 컴퓨터와 대화하지는 않을 거야, 좀더 복잡하고 방대한 데이터를 다루기 위해서 우리는 이 프로그램을 배우려는 거니까.

사실, 처음 프로그램 R을 사용하려면 배워야 할 것들이 많아. 하지만 앞으로 세세한 문법에 집중하기 보다, 실무나 실질적인 데이터 분석에 바로 사용할 수 있는 예시를 바탕으로 R을 배워보도록 할게. 영어를 배울 때도 문법책 첫 부분인 ‘품사’ 부분만 열심히 공부하다 지쳐버리는 경우가 많잖아. 바로 실전 대화부터 공부하면 시작은 어렵겠지만 다양한 상황에서 응용할 수 있는 능력이 생기는 것처럼 말이야.

다음에는 R을 바탕으로 그래프를 그려보는 연습을 해보자. ‘코딩을 배우려는 너에게’ 작은 도움이 될 수 있기를 바라면서 다음 글에서 만나.

김선택 프로필

LG전자, Life is Good 봉사단에서 대화형 AI 팀장으로 더 나은 삶을 위해 도전하고 있습니다. 좋은 기술로 옳은 미래를 만들어 가고자 합니다. 연암문화재단을 통해 국립과학관이나 학교에 재능기부 강의도 하고 있습니다.