쑥쑥오름교실과 클래스캐스트를 소개합니다.

GunSmoke의 이미지

한동안 괴롭게 매달려왔던 책을 출판하고
http://jhrogue.blogspot.kr/2013/04/blog-post_6860.html
올해 1월 14일부터 3월 25일까지 프로그래밍 언어론 수업을 University of Washington의 Dan Grossman 교수님께 배웠습니다. 10주 동안 sml과 racket, ruby를 배우며 7개의 숙제와 7번의 상호 평가, 중간고사와 기말고사를 치뤘습니다. 그리고 다행히 수료! http://kldp.org/node/137352

어? 3월 초에 초등학교가 개학을 하는데 초등학교 교사가 워싱턴에서 어떻게 수업을 받을 수 있죠?
인터넷을 통해 프로그래밍 언어론 수업을 수강했거든요.

2011년 스탠포드 대학교의 온라인 강좌로부터 시작된 전세계 수 십만명의 학생이 동시에 교육받을 수 있는 대규모 온라인 공개 수업(MOOC : Massive Open Online Course)를 직접 체험한 것입니다.

이미 많은 분들이 MOOC에 대한 얘기를 하고 계셔서 저는 몇몇 링크만 소개합니다.

MOOC : http://ko.wikipedia.org/wiki/MOOC
코세라, 온라인 교육의 혁명 : http://sungmooncho.com/2012/12/07/coursera/
교육 생태계를 뒤흔든 MOOC, 대학의 높은 담장을 허물다 : http://trendinsight.biz/archives/13497

하지만 제가 교사로서 MOOC를 직접 체험하며 느낀 점은 이게 다가 아니었습니다.

프로그래밍 언어론 수업에서 사용한 ml이나 racket, ruby 같은 프로그래밍 언어는 C나 자바 같은 언어에 비해 우리 나라에서 많이 사용되지 않는 편입니다. 번역된 책 뿐만 아니라 인터넷 자료도 구하기가 어려웠으며 실제 숙제를 해결할 때 익숙하지 않은 프로그래밍 언어로 프로그램을 구현하는 일은 쉽지 않았습니다. 그래서 찾은 것이 게시판입니다.

안 되는 영어로 게시판에 질문하고 답변하면서 게시판을 관찰해보니 제가 교직에 있으면서 그토록 찾아 헤매던 학생들 사이의 협력과 질서, 순수한 학습 욕구를 발견할 수 있었습니다. 1등을 뽑는 수업이 아니기 때문에 경쟁 대신 서로 도움을 주고 받는 일이 가능한 것입니다.

커뮤니티 스태프나 (다른 학생들에게 많은 도움을 주어 존경을 받는) 학생들은 질문한 학생에게 꼭 필요한 정도의 힌트만 알려주는데 정말 딱 문제를 해결하는 열쇠만 쥐어 주는 게 질문을 하는 입장에서도 매번 감탄을 하지 않을 수 없었습니다. 이렇게 주고 받은 질문과 답변은 공개 되어 같은 고민을 하는 다른 학생들에게도 도움이 되었습니다.

학생들 스스로의 자정 노력에도 감동했습니다. 수십만명이나 되는 학생들이 있으면 그 중에 룰을 깨는 학생이 나오게 마련입니다. 하지만 대부분의 학생들은 스스로 룰을 지키고자 노력하더군요. 게시판 내에 과할 정도의 힌트가 있으면 누군가 이를 삭제하거나 수정해 달라는 글을 올리거나 심지어 github에 정답 코드를 올려 놓은 학생이 있으면 다른 학생이 이를 발견해서 룰 위반에 대한 경고 메일을 보내 코드를 삭제하게 만드는 경우도 있었습니다.

실제로 coursera와 udacity는 학생들 사이의 커뮤니티를 매우 중요하게 생각하고 이를 장려합니다. 전세계 수강생들이 만든 다양한 온오프라인 스터디 그룹이 존재하죠.

특별한 보상이 없는데도 다른 사람을 돕거나 스스로 룰을 지키려는 이 같은 노력을 어떻게 설명해야 할까요?

내가 하고 싶은 공부를 스스로 선택해서 한다는 자율성
훌륭한 교수님께 양질의 수업을 받고 있다는 학생들 스스로의 자부심
평균 10% 밖에 수료하지 못하는 과정을 포기하지 않고 이수하고 싶은 목표 의식

뭐 이런 거 아닐까요?

또 다른 MOOC인 칸 아카데미khanacademy는 보스턴의 해지 펀드 매니저였던 살만 칸이 2008년에 설립한 비영리 온라인 교육 웹 사이트입니다. 칸 아카데미가 제공하는 1,600개가 넘는 교육용 동영상으로 한 달에 백만명이 넘는 이용자가 공부합니다. 빌 앤 멜린다 게이츠 재단을 통해 650만 달러의 기부를 받아서 유명해졌죠.

재미있는 것은 로스알토스 교육구 5-8학년 천여명의 학생들이 정규 학교 수업 시간에 칸 아카데미의 영상을 통해 수학 공부를 한다는 점입니다. (교사들의 적극적인 요청에 의해 이 같은 상호협조가 이루어졌다고 알고 있습니다.)

학교에서 선생님이 강의하고 집에서 숙제하는 전통적인 수업 방식과 정 반대의 수업이 이루어집니다. 학생들이 집에서 칸 아카데미 영상을 보고 칸 아카데미에서 제공하는 문제를 풀어오는 것이 숙제입니다. 선생님은 학생들이 어떤 문제를 틀리고 어떤 부분을 어려워하는지 바로 알 수 있으며 이를 바탕으로 수업 시간에 학생의 부족한 부분을 돕습니다.

집에서 강의를 듣고 학교에서 선생님과 숙제를 같이 하며 학생의 부족한 부분을 돕는 새로운 형태의 수업, ‘야! 너 왜 내 수업 안 들어!’라고 야단치는 게 아니라 ‘나랑 이 문제를 이렇게 풀어보자'는 교사와 학생 사이의 좀 더 인간적인 수업.

저는 여기서 미래를 봤습니다.

전자 오락실에 있는 게임을 언제 어디서든지 공짜로 할 수 있으면 좋겠다는 꿈은 스마트폰의 게임 에뮬레이터를 통해 실현되었고, 환경오염을 줄이기 위해 모든 과학 꿈나무들이 소원해 마지 않는 전기 자동차는 올해부터 시판되고 있습니다.

기억 나시나요? 과학의 날 상상 그리기 하면 빠지지 않던 주제, 미래의 학교…더 이상 학교에서 선생님을 만나지 않아도 집에서 공부할 수 있고, 학습지를 풀고 숙제를 해결할 때 컴퓨터가 도와주는 어릴 적 우리가 그렸던 그림.

이런 미래는 생각보다 더 가까이 존재합니다.
그리고 coursera와 칸 아카데미에서 저는 그런 미래를 봤구요.

스티브잡스가 죽기 전 마지막으로 개혁하고자 했던 분야는 바로 ‘교육'입니다. 그가 좀 더 살았더라면 MOOC와 같은 형태의 새로운 교육이 기존의 교육 시스템을 더 빨리 변화시키는데 일조하지 않았을까요?

생각해보세요.

2011년에 현대적인 의미의 MOOC가 스탠포드에서 처음으로 시작되었습니다.
16만명의 학생이 스탠포드에서 개설한 machine learning 과목을 수강했죠.

2012년 뉴욕타임즈는 교육계의 가장 혁명적인 사건으로 MOOC를 꼽았습니다.
The year of MOOC, 대규모 온라인 공개 수업의 시대 : http://www.nytimes.com/2012/11/04/education/edlife/massive-open-online-courses-are-multiplying-at-a-rapid-pace.html?pagewanted=all&_r=0

2013년 우연히 제가 코세라의 강의 둘, Programming Languages와 An Introduction to Interactive Programming in Python을 수강했구요.

미국의 몇몇 주립대가 MOOC를 수료한 학생이 학교 등록금을 내면 학위를 인정햊는 MOOC2Degree 제도를 시작했습니다.

조지아테크는 드디어 석사 학위를 취득할 수 있는 MOOC 과정을 개설했구요.
올해 후반기, 내년에는 대체 MOOC와 관련해서 어떤 사건이 벌어질까요?

잠이 오지 않았습니다. 바다 건너 나라에서는 기술의 발전으로 새로운 교육이 시작되고 있는데 나는 여기서 뭘 하고 있는 건지...

뭐라도 해야 한다는 생각 뿐이었습니다.

그렇게 3월부터 7월까지 준비하고 8월 여름방학 동안 개발한 것이 쑥쑥오름교실(http://classcasts.org)입니다.

쑥쑥오름교실(http://classcasts.org)은 온라인 공개 수업 웹 사이트입니다. 쑥쑥오름교실에서는 초등학교 5, 6학년 과학 수업 영상을 제공하여 학생들이 수업 시간에 배운 내용을 다시 공부할 수 있으며, 영상을 다 보고 나서 확인 문제를 통해 배운 내용을 점검해보고, 게시판에서 교사와 다른 학생들과 궁금한 점을 묻고 답할 수 있습니다.

학생들이 직접 실험을 설계하고 순서대로 실험을 끝낸 다음 실험 결과를 정리하는 과정까지, 제대로 된 과학 실험 수업을 실시하기에 40분은 너무나 짧은 시간입니다. 평소 과학 수업을 하면서 교과서에 제시된 실험을 따라 해보긴 하지만 과학 지식을 체계적으로 전달하는데 부족한 부분이 없지 않나 반성하게 되었고 수업 내용을 녹화해서 학생들 스스로 복습하는데 활용하면 어떨까 하는 생각을 했습니다.

물론 수업 내용을 그대로 녹화하여 인터넷에 올린다고 해서 학생들이 수동적으로 영상을 봐서는 배우지 못합니다. 쑥쑥오름교실에서 제공하는 영상 컨텐츠는 실재 수업 시간에 했던 활동들 중에서 반드시 알아야 할 내용을 선정하고 가공하여 제공됩니다. 영상 하나가 15분을 넘는 일이 없기 때문에 학생들 입장에서 부담이 적고 언제든 다시 볼 수 있습니다. 학생들은 자연스럽게 기억을 되살릴 수 있으며 수업 시간에 놓친 내용을 다시 공부하거나 잘못 이해했던 내용을 교정할 수 있어 효율적인 복습이 가능하죠.

쑥쑥오름교실은 교사 입장에서도 유용합니다. 수업 영상을 편집하면서 수업 내용을 강조하거나 잘못 전달한 부분을 바로 잡고, 부족한 자료를 보충해서 학생들에게 다시 제공할 수 있어 수업의 완성도를 높일 수 있기 때문입니다. 또한 수업이 끝난 후 수업을 점검, 평가할 때 단편적인 기억에 의존하는 것이 아니라 녹화해둔 영상을 통해서 실질적으로 확인할 수 있어, 결과적으로는 교사의 수업 능력을 향상시키는 데 도움이 됩니다.

처음에는 이렇게 녹화한 수업 영상을 동영상 공유 웹 사이트인 유튜브에 업로드하고 학교 홈페이지에 링크시켰는데… 학생들이 수업 영상을 제대로 보고 있는지 확인할 수도 없고 수업 영상을 제공하는 데서 나아가 학생들에게 다양한 교육용 웹 컨텐츠를 제공하고 싶은 욕심이 생겨 최근 웹 프레임워크로 폭발적인 인기를 누리고 있는 레일즈를 배워서 MOOC 웹 애플리케이션인 클래스캐스트(https://github.com/ShinJaehun/ClassCasts)를 직접 개발하기로 마음 먹었습니다.

cousera, udacity, edx, khanacademy, 누구나 다른 사람이 만든 MOOC 시스템을 이용할 수는 있는데 뭔가를 가르치고 싶은 사람 입장에서 사용할 수 있는 도구는 아직 존재하지 않더군요. 교육 컨텐츠를 쉽게 만들어 내어 공유할 수 있는 시스템을 직접 만들어보자는 생각을 한 것입니다.

일반적으로 컴퓨터 화면을 녹화해서 공유하는 애플리케이션을 스크린캐스트라고 하는데 교육용 영상 컨텐츠를 공유할 수 있는 웹 애플리케이션이라는 의미로 클래스캐스트라는 이름 붙였습니다.

물론 지금은 수업 영상 다시 보기와 확인 문제 풀어보기, 게시판을 통해 의견을 주고받는 기본적인 형태의 상호작용만 제공하지만 앞으로 협동 과제, 토론 학습, 학생 상호 평가와 피드백 같은 기능들을 구현하여 누구나 손쉽게 교육용 웹 사이트를 구축할 수 있는 오픈소스 MOOC 도구가 될 수 있도록 지속적으로 개발하는 중입니다.

클래스캐스트를 이용하면 현직 선생님께서 자신만의 MOOC 시스템을 만들어 교과 학습에 도움이 되는 강의를 쉽게 올릴 수도 있고, 학교 교육 뿐 아니라 요리, 운동, 뜨개질 다양한 MOOC 시스템이 탄생할 수도 있을 것이라고 생각합니다.

댓글

M.W.Park의 이미지

좋은 링크 소개 감사합니다.
또한 Racket(예전에는 Scheme)은 아주 좋은 언어라는 것을 한줄 더 보탭니다.

-----
오늘 의 취미는 끝없는, 끝없는 인내다. 1973 法頂

GunSmoke의 이미지

물론입니다. 다음에 공부할 coursera course를 Introduction to Systematic Program Design과 Functional Programming Principles in Scala로 정해놨답니다.

大逆戰

문태준의 이미지

쑥쑥오름교실... 내용을 떠나서 이름이 너무 멋지네요. ㅎㅎ
본문 내용과 관련없는 답변이라서 죄송~~

---------------------------
문태준
http://groups.google.co.kr/group/sysadminstudy 시스템어드민 공부모임
http://tunelinux.pe.kr
http://database.sarang.net

GunSmoke의 이미지

아닙니다. 어떤 의견, 어떤 관심도 고맙고 힘이됩니다.
이름 짓는데 의외로 고민을 많이 했습니다.^^;;

大逆戰

GunSmoke의 이미지

아직 MOOC 웹 애플리케이션이라고 하기에는 부족한 부분이 많습니다. 가장 큰 문제는 제가 웹 프로그래밍, 아니 프로그래밍 경험 자체가 전무하다는 점이죠. KLDP에 질문을 남기는 일이 더 많아지리라 생각합니다. 귀찮으시더라도 도움 부탁드립니다.

大逆戰

M.W.Park의 이미지

그런데 그냥(from scratch) 개발하시는 건가요?
moodle 이나 다른 공개 프로젝트 활용은 고려하시지 않은건가요?

-----
오늘 의 취미는 끝없는, 끝없는 인내다. 1973 法頂

GunSmoke의 이미지

from scratch입니다. moodle, open-mooc 등은... 적어도 제가 사용하기에는 너무 어려웠습니다. 그 많은 기능을 모두 쓸 필요도 없고... 최대한 단순하게 만들자고 생각했습니다. 수업 영상을 유튜브에 올리고 링크시킬 수 있어야 하고 선생님이 문제를 올리면 학생들이 풀 수 있는 식으로 말이죠. 사용하기 쉽고 설치가 끝나면 바로 영상을 올리는 것으로 뚝딱뚝딱 교육용 웹 사이트를 구축할 수 있는 도구를 목적으로 개발했습니다.

大逆戰

GunSmoke의 이미지

순진하게도 프로젝트를 오픈 소스로 풀어서
많은 사람에게 알리면 전세계에 있는 모든 해커들이 모여들어서
더 나은 웹 애플리케이션으로 만들어주겠지 하는 생각을 했습니다.

남들은 내가 하는 프로젝트를 어떻게 생각할까?
나와 같은 생각을 하는 사람이 또 있지 않을까?
많은 사람들이 참여할 수 있도록 어떻게 하면 잘 알릴 수 있을까?

그러다 우연한 기회에 SK텔레콤에서 실시하는 모바일 웹 애플리케이션 공모전에 등록을 했구요.
http://cornerstone.sktelecom.com/event/
어떻게 하다보니... 1차 예선을 통과하고 말았습니다.
솔직히 기술적인 면에서 많이 부족하기 때문에 입상 가능성은 매우 낮다고 생각했는데
역시나 결과는 장려상에 그치고 말았습니다.

하지만 제겐 좋은 경험이 되었네요.
이렇게 현업 개발자분들, 스타트업 팀들, 개발자를 꿈꾸는 대학생분들을 만나서
그분들의 창의적인 아이디어들 직접 귀로 듣고, 결과물을 눈으로 볼 수 있는 기회가
제 평생에 얼마나 있겠습니까...

여러 사람이 꼭 필요로 하는 프로그램이 될 수 있게
'느리지만 꾸준히' 여러 기능들을 추가해나가도록 하겠습니다.

댓글 첨부 파일: 
첨부파일 크기
Image icon result01.jpg223.44 KB

大逆戰

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.