노트

수파리

Shuhari

개발 문화#learning · 연결된 개념 7개

쉽게 말하면

수파리는 붓글씨를 배울 때 처음엔 선생님 글씨를 그대로 따라 쓰고, 다음엔 조금씩 바꿔 보고, 마지막엔 자기 글씨체를 갖게 되는 세 단계예요. 처음부터 내 멋대로 쓰면 기본기가 안 생기죠.

비유가 깨지는 곳 붓글씨와 달리 실무에는 따라 쓸 정답 본이 없을 때가 많아요. 규칙을 지키는 수 단계에만 머물면 규칙이 맞지 않는 곳에서 막히니, 정답 없는 상황에서 배우는 '야생 학습'이 필요해요.

일본 무도와 전통 예능에서 쓰이는 배움의 세 단계다.

  1. 수(守, 지키다): 스승의 가르침과 기본 규칙을 그대로 따라 하며 몸에 익힌다
  2. 파(破, 깨다): 기본을 응용해 틀을 벗어나 보고, 다른 방식과 비교하며 자기 방식을 시도한다
  3. 리(離, 떠나다): 규칙과 스승을 넘어 자기만의 방식을 만든다

개발에서

  • 처음에는 테스트 주도 개발 (TDD)나 리팩터링 기법을 책에 쓰인 대로 지켜 보는 것이 빠르다. 왜 그런 규칙이 있는지는 해 봐야 보인다
  • 익숙해지면 규칙이 맞지 않는 상황을 알아보고 조정한다. 원칙끼리 부딪힐 때(DRY 원칙와 3의 법칙처럼) 판단하는 단계다
  • 마지막에는 규칙의 목적을 지키면서 상황에 맞는 새 방법을 만든다

『함께 자라기』는 규칙을 지키는 '수' 단계를 학교식 학습의 전형으로 보고, 실무에 필요한 건 정답 없는 상황에서 배우는 '야생 학습'이라고 말한다. 수 단계에만 머물면 규칙이 맞지 않는 곳에서 막힌다. 반대로 수를 건너뛰고 바로 리를 흉내 내면 기본기가 없다.

관련: 의도적 수련, 함께 자라기 (책 개요)

출처: ShuHaRi Martin Fowler · 『함께 자라기: 애자일로 가는 길』 김창준

연결된 개념

이 노트를 가리키는 문서

뜻이 가까운 노트

  • 몰입 영역과 난이도 조절

    과제가 너무 쉬우면 지루하고 너무 어려우면 불안하다. 그 사이의 몰입 영역에서 실력이 가장 잘 는다.

  • A·B·C 작업과 복리로 자라기

    일(A), 일을 개선하는 일(B), 개선하는 능력을 개선하는 일(C)을 나눠 보고, 결과물이 다음 주기의 도구가 되게 하는 성장 방식.

  • 스포티파이 스쿼드 모델

    자율적인 작은 팀(스쿼드)을 기본 단위로 두고, 트라이브·챕터·길드로 묶어 규모의 이점을 얻으려 한 조직 구조. 스포티파이 스스로도 그대로 쓰지 않았다.

  • 집단 코드 소유

    코드의 주인을 개인으로 두지 않고 팀 전체가 코드베이스 전체를 소유해, 누구나 필요한 곳을 고칠 수 있게 하는 XP 실천법.

  • 리팩터링 기법 카탈로그

    리팩터링 기법을 무엇을 정리하는지에 따라 묶어 본 지도. 기법마다 거의 항상 반대 방향 기법이 짝으로 있어서(추출↔인라인, 올리기↔내리기) 상황에 따라 양쪽으로 오간다. 아래 묶음은 Refactoring.Guru 카탈로그(1판 기반)의 분류를 따랐고, 기법 이름은 2판 기준으로 적었다.

보기 옵션