iHiD님이 업로드한 아바타

The University of Chicago, The Sloan Foundation과 함께 트랙을 새로 설계해요

@iHiD
대략 7년 전

작년에 올린 지난달 블로그 글에서 이야기했듯이, 앞으로 1년 동안 우리가 세운 핵심 목표 중 하나는 학생들이 더 즐겁게 공부하고 멘토링도 더 수월하게 할 수 있도록 트랙을 재구성하는 것이에요. 지난 한 해 동안 Maud de Vries가 이끈 Track Anatomy 프로젝트 덕분에 이 부분에서 큰 진전을 이뤘고, 그 과정에서 트랙이 구조화되는 방식에 몇 가지 근본적인 문제가 있다는 것을 확인했어요. 우리는 이 문제를 우선적으로 해결해야 한다고 생각해요. 지난 두 달 동안 리더십 팀은 이 문제를 어떻게 풀어갈지, 그리고 여러 언어를 그 언어만의 방식으로 제대로 배울 수 있도록 트랙을 필요한 상태로 만들려면 무엇이 필요한지 논의해 왔어요.

오늘, 정말 기쁜 마음으로 소식을 전해요. 우리는 시카고 대학의 James Evans와 Gary Lupyan과 함께, Sloan Foundation의 후원을 받아 하나의 프로젝트를 시작해요. 이 프로젝트를 통해 Exercism의 트랙을 처음부터 다시 생각하고, 그 변화를 여러 언어에 실제로 적용하는 데 집중할 수 있게 됐어요. 또한 Erik Schierboom을 영입해 이 프로젝트를 이끌게 했다는 소식도 전하게 되어 기뻐요.

배경

지난 2년 동안 James와 Gary는 프로그래머가 사용하는 언어가 그 프로그래머의 효율성, 창의성, 협업에 어떤 영향을 미치는지 연구해 왔어요. Sloan Foundation의 지원금을 받아 진행한 연구에서, 이 연구의 핵심적인 부분은 프로그래머가 여러 언어를 어떻게 배우는지, 그리고 이미 가진 지식이 새로운 학습을 돕는지 방해하는지를 이해하는 것이라는 결론을 내렸어요. 이는 우리가 Exercism의 언어 트랙에 대해 스스로에게 던져 온 바로 그 질문이에요. 누군가의 이전 경험은 그 사람에게 필요한 트랙의 학습 경로와, 그 사람이 가장 잘 반응하는 멘토링의 스타일과 내용에 어떤 영향을 미칠까요?

James, Gary와 Sloan Foundation은 Exercism이 트랙을 다시 설계하는 데 자원을 집중할 수 있도록 투자하기로 했어요. 트랙이 각 언어의 고유한 특징에 더 집중하고, 학생이 이미 가진 경험을 바탕으로 더 개인화되도록 말이에요.

프로젝트

앞으로 몇 주, 몇 달 동안 이 프로젝트에 대해 훨씬 더 많은 글을 올릴 예정이지만, 먼저 이 프로젝트로 이루고자 하는 주요 목표와 그것이 Exercism에 어떤 영향을 미칠지 정리해 보고 싶어요.

트랙의 핵심을 다시 생각하기: 우리 트랙의 목표는 프로그래밍 자체가 아니라 프로그래밍 언어를 가르치는 것이에요. 우리는 이 점을 트랙에 담아내려고 해요. 핵심 학습 경로를 다시 짜서, 특히 그 언어를 고유하게 만드는 관용 표현을 가르치는 데 초점을 맞추는 거예요. 각각 하나의 관용 표현에만 집중하는 새로운 연습 문제를 설계하고 개발할 계획이에요. 예를 들어 Ruby에서는 반복 대신 열거를 가르치는 연습 문제를, JavaScript에서는 프로토타입이나 바인딩 개념을 다루는 연습 문제를 만들 수 있어요.

핵심 연습 문제에 대한 폭넓은 자동 분석 커버리지 개발: 우리는 학생이 트랙의 핵심을 빠르게 통과할 수 있기를 바라요. 연습 문제를 설계할 때, 가능한 풀이에 대해 95%의 자동 분석 커버리지를 제공하려면 어떻게 해야 할지 의도적으로 고민할 거예요. 그러면 멘토는 정말로 도움이 필요한 5%의 학생과 상호작용하거나, 더 흥미롭고 다양한 사이드 연습 문제에 집중할 수 있게 돼요. 이와 함께, 멘토들이 코드베이스를 파헤치지 않고도 자동 분석기에 기여할 수 있게 해 주는 도구도 개발하고 싶어요.

이전 경험을 바탕으로 맞춤형 자동 멘토링과 멘토링 힌트 제공: 앞의 단계를 마치고 나면, 학생이 받는 피드백을 그 학생의 이전 경험에 맞게 조정하는 방법을 탐구하고 싶어요. 자동 응답의 형태로든, 멘토에게 제공하는 힌트의 형태로든 말이에요. 특정 언어를 배울 때 필요한 피드백은 그 사람이 이미 가진 지식에 크게 좌우돼요. 기준점이 다르고, 이미 익힌 지식은 오히려 떼어내기가 더 어려울 수 있어요. 그래서 학생의 이전 경험을 고려하면 더 개인화되고 더 유용한 학습 경험을 제공할 수 있어요.

브라우저 내 코딩 지원 추가: 핵심 트랙을 다시 생각하는 것과 동시에, 가장 많은 요청을 받은 기능 중 하나를 추가할 거예요. 바로 브라우저에서 연습 문제를 푸는 기능이에요. 이것이 CLI 사용을 대체하지는 않아요. 우리는 CLI가 배우는 데 매우 값진 방법이라고 믿어요. 다만 그 언어와 관련 도구를 설치하지 않고도 빠르게 언어를 시험해 보고 탐색할 수 있는 기능을 제공하는 거예요.

후원

Sloan Foundation이 James와 Gary를 통해 우리에게 제공하는 후원 덕분에, Jeremy, Nicole, Charles, Karlo가 앞으로 12개월 동안 위의 목표를 이루는 데 필요한 제품 작업, 개발 작업, 아키텍처에 대부분의 시간을 투자할 수 있게 됐어요.

또한 Erik을 영입해 프로젝트의 "커리큘럼" 부분을 이끌게 할 수 있게 됐어요. Erik은 2016년부터 Exercism에 크게 기여해 왔어요. C#, F#, Scala 트랙을 유지 관리하고, 분석기를 만들고, 연습 문제를 설계하고, project-specifications에 기여하고, 멘토링을 해 왔어요. 프로그래밍 언어에 대한 열정도 커서 Exercism의 트랙 상당 부분을 완료했어요. 무엇보다 Erik은 Exercism 커뮤니티에서 모두에게 사랑받고 존경받는 사람이라, 50개의 서로 다른 프로그래밍 언어가 가진 차이와 공통점이 잘 드러나도록 트랙과 시스템을 설계하는 방법을 이해하는 데 우리를 이끌어 줄 최적의 인물이에요.

참여하기

이 프로젝트를 도울 전담 팀을 꾸릴 거예요. 이 팀은 트랙 전반에 걸쳐 관용 표현을 정의하고, 새로운 핵심 연습 문제를 설계하고, 분석기의 프레임워크와 표준을 설계하는 일을 돕고, 기존 지식이 학습에 어떤 영향을 미치는지 고민하는 일을 맡아요.

경험 많은 멘토이면서 그리고 메인테이너이고, 참여하고 싶은 분이 있다면 꼭 연락 주세요. Slack으로 저에게 연락해 주시면 좋겠어요.

마무리

이번 다음 단계가 정말 기대돼요. 이 프로젝트가 Exercism을 크게 앞으로 나아가게 하고, 학생과 멘토 모두에게 더 나은 도움이 되리라고 믿어요. 지원해 준 James, Gary와 Sloan Foundation에 정말 감사드려요.

2019년 09월 12일 · 유용했나요?