CodeSoom
  • 블로그
  • 로그인

스터디에 아웃풋 중심의 학습법을 적용하기

코드숨 교육에서도 적용 중인 아웃풋 중심의 학습법을 스터디에도 적용하기 위해서 했던 시도들을 공유합니다.
한윤석

코드숨에서 모던 자바스크립트 튜토리얼 읽기, 자바스크립트 코딩의 기술 책 읽기, 리액트 문서 읽기 스터디를 진행했습니다. 코드숨 교육에서도 적용 중인 아웃풋 중심의 학습법을 스터디에도 적용하기 위해서 했던 시도들을 공유합니다.

문제집 만들기패턴을 적용하다

문제집 만들기 패턴이란?

문제집 만들기 패턴이란 기록할 내용을 문제로 바꿔서 적고 나중에 답하는 학습 패턴을 말합니다. 예를 들어서 자바스크립트에서 varlexical scope를 따르는 반면 letblock scope를 따른다는 문장을 봤을 때 이 문장을 질문으로 만들면 varlet은 각각 어떤 scope를 따르는가?로 바꿀 수 있습니다.

문제집 만들기 패턴의 장점

  • 피드백을 얻을 수 있습니다. 내가 만든 질문에 답해보면서 내가 정말로 다 이해했는지, 아니면 아직 부족한 것이 있는지 피드백을 얻을 수 있습니다. 공부를 어디까지 해야 되나?라는 고민이 있는데 이 질문에 답할 수 있을 때 까지로 정할 수 있습니다.
  • 저자의 의도를 파악하는 데 도움이 됩니다. 질문으로 만드는 과정 자체가 저자의 의도를 파악하는 과정이기 때문에 핵심 개념에 대해 더 집중할 수 있습니다.
  • 더 깊이 있는 사고를 하게 해줍니다. 학습내용의 가장 중요한 개념들을 질문 형태로 만들어보면 단순히 내용을 요약해서 질문으로 바꾸는 것이 아니라 함축적인 작업이기 때문에 더 깊이 있는 사고를 하게 해줍니다.

질문을 만들어오고 서로 답변하기

문제집 패턴을 스터디에 적용해서, 각자 읽으면서 질문을 만들어 구글 폼에 기록하게 했습니다. 그리고 그 문제들로 스터디 시간에 다른 사람들에게 질문을 하고 그 답변에 대해 얘기하는 식으로 스터디를 진행했습니다.

image

단순히 자신이 읽은 부분을 다른 사람에게 들려주는 스터디 방식은 그저 인풋 중심의 학습법이라서 집중하기도 어렵고 특히 온라인 스터디라서 더 집중력이 필요한 데 한계가 있습니다. 질문에 대한 답을 하다 보면 자연스럽게 배웠던 것을 회상하게 되고 다른 사람의 답변에 대해 생각해보면서 스터디에 더 능동적으로 참여할 수 있게 됩니다. 그래서 시간이 굉장히 빠르게 간 느낌이 들었고 온라인 스터디였지만 전혀 지루하지 않았습니다.

만족도와 성취도는 다르다

스터디 회고 때 얘기를 해본 결과 대다수가 그냥 리뷰를 하는 스터디가 더 좋다고 답변했습니다. 질문에 대해서 사람들이 답변을 아주 잘해서 학습의 성취도가 아주 좋다고 생각했습니다. 그래서 만족도도 높을 것이라고 생각했지만 학습의 만족도는 전혀 달랐습니다. 학습의 만족도와 학습의 성취도는 반드시 비례하는 것이 아닐 수 있다는 것을 배웠습니다. 그래서 결국 자바스크립트 코딩의 기술 스터디는 단순 리뷰로 스터디 방식을 다시 바꾸었습니다.
문제집을 만들면서 읽는 것이 학습에 어떻게 도움이 되는지, 어떻게 질문을 만드는 게 좋은지에 대해 충분히 설명하지 않았습니다. 그래서 질문을 만들어오는 게 어렵다고 느낀 사람도 있었습니다. 그래서 다음에는 충분히 설명을 하고 진행하기로 했습니다.

정교화패턴을 적용하다

정교화는 생소한 내용을 자신만의 언어로 표현하여 기존의 지식과 연결하는 과정입니다. 단순히 정리를 하는 것이 아닌 우리가 배워야 할 것들의 핵심 질문을 던지고 토론을 하면서 스터디를 진행해보았습니다.

  • 무엇인가?
  • 왜 사용하는가?
  • 어떻게 사용하는가?

이 세 가지 질문에 답할 수 있다면 어떤 개념에 대해서 우리가 잘 알고 있다고 판단할 수 있습니다. 이러한 질문들을 사람들에게 던지고 답변을 받고 그 답변에 대해서 다시 얘기하고, 답변들을 모아 정리를 하며 스터디를 진행했습니다. 예를 들어서 리액트의 useState를 배웠다면 다음과 같은 질문에 답할 수 있어야 합니다.

  • useState란 무엇인가?
  • useState를 왜 사용하는가?
  • useState는 어떻게 사용하는가?

자연스럽게 토론이 진행된다

질문에 대한 답을 하면서 답변에 대해서 다시 다른 사람들에게 물어봅니다. 더 부족한 것은 없는지, 덧붙이고 싶은 건 없는지, 틀렸다면 왜 틀린 지 맞았다면 왜 맞는지에 대해서 질문을 던집니다. 계속해서 우리가 정말 정확하게 그 개념을 알게 될 때까지 반복합니다. 그러면 자연스럽게 토론이 진행됩니다.
우리가 무언가에 대해서 정확히 말하는 것도 중요하지만, 특정한 설명이 정말로 맞는지, 틀린지 구별할 수 있어야 합니다. 그래서 계속해서 질문과 답변을 하며 토론을 하여 중요한 개념들을 정리하며 계속적으로 인출을 하여 학습하게 됩니다.

앞으로 다양한 아웃풋 중심의 학습 패턴을 적용해봐야겠다.

개념들을 정리를 해서 좋은데 그래서 이걸 어디에 써먹지? 같은 고민들에 빠집니다. 그래서 아주 간단한 예제라도 예제를 만들어봐야 합니다. 예를 들어서 쿠버네티스 오토 스케일링에 배웠다면 실제로 오토 스케일링을 할 수 있어야 합니다.
스터디에서 정리한 것을 예제로 만들어오는 숙제를 만들거나 라이브 코딩을 하여 시도를 해야겠습니다.

See also

테스트, TDD, 코드리뷰, 올바른 협업 방법 등을 코칭하여 코드숨은 개인과 개발 조직의 성장을 돕고 있습니다. 🙏진짜 개발자로 거듭나는 방법
강의 알아보기