ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 웹으로 배우는 인터렉티브한 강의, Codeacademy
    IT's Fun 2012. 10. 11. 06:37
    728x90
    새로운 컴퓨터 언어를 공부하실 때 어떤 방법을 사용하시나요? 공부하는 스타일에 따라 다르겠지만 책을 사서 보시는 분도 계실거고 해당 언어를 제공하는 공식 웹 사이트나 커뮤니티가 제공하는 학습 가이드를 따라하시는 분도 있을 겁니다. 물론 컴퓨터 언어에 초천재적인 감각을 가지고 계셔서 제공되는 개발 도움말만 가지고도 훌륭하게 언어를 습득하는 분도 더러 있습니다.

    무언가 모르는 것을 배울 때 가장 좋은 것은 지속적인 학습입니다. 그렇지만 학생이 아닌이상 (학생도!?) 먹고 살기 바빠서 매일 한~두시간씩 시간을 내어 공부를 한다는 것은 무척 힘듭니다. 요행히 새롭게 참여한 프로젝트가 새로운 언어를 이용한다고 하면 아주 나이스한 경우이겠지만 그게 아니라면 사실 수박 겉핥기 식으로 구글신의 힘을 빌리는 것이 대부분일 겁니다.

    Codeacademy, 웹 기반 콘솔로 배우는 인터렉티브한 강의

    Codeacademy (http://www.codeacademy.com) 는 이런 현실적인 불편함과 어려움을 해소시켜줄 수 있는 양방향 인터렉티브 강의 플랫폼입니다. HTML5 기반으로 만들어진 콘솔 도구와 실행 도구, 간단한 웹 기반 Repository 까지 제공하고 있어 말 그대로 웹 브라우저만 있으면 강의를 만들수도 있고 만들어져 제공되는 강의를 단계별로 학습할 수도 있는 플랫폼입니다.


     
    Codeacademy 는 친구들과 함께 경쟁하며 공부할 수 있는 환경을 제공합니다. 학습에 있어서 그 무엇보다 좋은 효과를 볼 수 있는 방법은 경쟁이지요. 같은 코스를 들으면서 누가 더 많은 진도를 나갔느냐 하는 경쟁은 마치 최근에 열풍을 일으키고 있는 애니팡과 같은 효과(과연...;;;)를 낼 수 있을거라는 생각을 해봅니다.

    아직까지 Codeacademy 가 제공하고 있는 언어와 과정은 그리 많지는 않습니다. 하지만 플랫폼 자체가 오픈되어 있고 무료로 강의를 올리고 올라온 강의를 수강할 수 있는 구조이기 때문에 앞으로 얼마나 많은 전문가들이 합류하여 재능 기부를 하느냐에 따라 그 규모는 상상할 수 없을 정도로 커질 수 도 있을 것 같습니다. 현재는 Javascript 와 Python, Ruby, Web Fundamentals, jQuery 등이 제공되고 있는 상태입니다.

     
    이런 플랫폼이 줄 수 있는 강점은 최근 클라우드 개발 환경이 이슈가 되면서 Cloud9 (http://www.cloud9.com) 과 같은 웹 IDE 가 급속하게 보급되고 있는 것과 같은 선상에 있다는 점입니다. 처음 Cloud9 IDE 를 접하면 뭔가 어렵고 어색하다는 느낌을 받지만 조금만 익숙해지면 언제 어디서든 웹에 접속만 할 수 있으면 내 소스코드, 내 런타임 환경을 쓸 수 있다는 메리트에 푹 빠질 수 밖에 없습니다. Codeacademy 의 모든 인터렉티브 환경은 웹 기반으로 이루어져 있어 그 편리함이 무척 뛰어납니다.

     
    책으로 API 스펙을 보고 샘플 코드를 눈으로 본 다음 개발 환경으로 이동해서 입력해 보는 것이 아니라 Codeacademy 는 다양한 Exercises 를 중심으로 강의를 구성하여 제공하는 형태를 취합니다. 개별 Exercise 들은 단순한 예제를 직접 입력하고 Step by step 으로 점진적으로 구체화해 나가는 방법을 가이드하고 있습니다. 강의가 얼마나 알차게 구성되었냐의 이슈이겠지만 그런 형태의 강의 구성이 가능하도록 Teach 기능요소가 준비되어 있다는 것으로 이해해도 될 것 같습니다.

     
    자신의 학습 진도표를 확인할 수 있는 Summary 페이지는 학습 의욕을 불러 일으킬 것 같습니다. 재미있는 것은 Badge 시스템이 있다는 점입니다. 포스퀘어 류의 체크인 앱을 쓰시는 분들은 Badge 의 개념이 생소하지 않을 겁니다. 마치 보이스카우트, 걸스카우트 활동을 하면서 어떤 액티비티에 참여하면 그에 대한 증표로 주던 Badge 처럼, 학습의 특정 조건을 만족시키는 Badge 를 획득해 나갈 수 있는 스스로에 대한 리워드 시스템을 갖추고 있다고 보면 적절할 것 같습니다

     

    실제 Exercise 에 들어가면 위와 같은 인터렉티브한 환경을 경험할 수 있습니다. 왼쪽에 나온 설명을 읽고 필요한 기능 요소와 요구 조건을 만족시키는 코드를 간단하게 우측 영영긔 웹 IDE 에서 입력하고 실행하면 되는 구조입니다. 저장 기능이 제공되고 있어 언제든 필요한 버전의 코드를 다시 불러와서 Exercise 완수에 활용할 수 있다는 점도 눈에 띄는 기능입니다.

    언제 어디서든 공부하자

    언어를 습득하는 가장 좋은 방법은 앞서 이야기 한 것처럼 반복입니다. 특히 컴퓨터 언어의 경우는 눈으로만 보는 것은 한계가 있습니다. 반드시 손으로 코드를 입력하고 실행을 해보는 노력이 필요합니다. 뭔가 배우기 위해 개발환경을 만드는데 시간을 쏟고 지쳐버리기 보다 쉽게 웹사이트에 접근해서 코드 한줄 더 입력해 보는 것이 더 좋을 것이라는 것은 너무나 자명한 사실입니다. 지치기 전에 코드 한줄 더 입력하세요. Codeacademy 에서 말이죠~


    - NoPD - 
    728x90
© 2019, NoPD