1부: 코드를 읽는 뇌 — 혼란의 세 가지 원인
LTM·STM·작업 기억 공간의 역할, 청킹과 표식, 인지 부하 이론까지 — 코드를 읽을 때 두뇌에서 일어나는 일을 인지과학으로 분석한다.

펠리너 헤르만스
추천 대상 코드 읽기와 학습 방식을 인지과학 관점에서 이해하고 싶은 개발자
“인지과학으로 코딩 혼란을 분석하지만, 실전 현장까지의 거리가 남는다”
"왜 이 코드를 이해하기 어려운가"라는 물음에 대해 대부분의 개발자는 "경험이 부족해서" 혹은 "코드가 나쁘게 작성되어서"라고 대답한다. 펠리너 헤르만스는 이 물음에 더 정밀한 언어를 제공한다. 인지과학의 세 가지 메모리 시스템 — 장기 기억(LTM), 단기 기억(STM), 작업 기억 공간(Working Memory) — 을 기반으로 코딩 중 겪는 혼란의 근원을 분류하고 체계화한다.
저자가 핵심 논거로 삼는 것은 "청킹(Chunking)"이다. 체스 전문가가 일반인보다 말의 배치를 더 잘 기억하는 이유는 기억력이 뛰어나서가 아니라, 오랜 경험으로 쌓인 패턴 지식 덕분에 더 큰 단위로 정보를 묶어 처리하기 때문이다. 같은 원리가 코드에 적용된다. 숙련된 개발자가 코드를 빠르게 파악하는 것은 디자인 패턴, 관용구, 명명 규칙 등에 대한 LTM이 충분히 쌓여 있기 때문이다.
이 관점은 "좋은 코드란 무엇인가"라는 질문에 인지적 언어를 제공한다. 읽는 사람의 인지 부하를 낮추는 코드, STM을 효율적으로 사용하게 하는 구조, 청킹을 용이하게 하는 네이밍과 패턴 — 이것이 좋은 코드의 인지과학적 정의다.
다만 책이 제시하는 처방들은 이론적으로는 옳지만 현실적인 수용 장벽이 높다. 플래시카드로 문법을 외우라는 조언, 개인의 이해를 위해 코드를 다시 작성하라는 제안, 팀 전체가 변수 역할 프레임워크를 공유해야 한다는 주장은 모두 이상적인 조건을 전제한다. AI 보조 개발이 일상이 된 현재의 환경에서는 더욱 거리감이 느껴진다.
그럼에도 이 책은 "왜 특정 코드가 읽기 어려운가"를 설명하는 어휘를 제공한다. 인지 부하(Cognitive Load), 청크(Chunk), 표식(Beacon) 같은 개념은 코드 리뷰 피드백을 줄 때나 팀 내 코딩 기준을 논의할 때 유용한 공통 언어가 된다.
LTM·STM·작업 기억 공간의 역할, 청킹과 표식, 인지 부하 이론까지 — 코드를 읽을 때 두뇌에서 일어나는 일을 인지과학으로 분석한다.
변수 역할 프레임워크, 텍스트 지식과 계획 지식, 정신 모델과 개념적 기계, 언어 전이로 인한 오개념까지 — 코드를 깊이 이해하는 인지 전략을 다룬다.
좋은 이름이 인지에 미치는 영향, 파울러의 코드 스멜과 인지 부하의 관계, 암묵적 기억과 자동화의 역할을 다룬다.
프로그래밍 활동의 종류와 인터럽트의 인지적 비용, 대규모 시스템 설계와 인지 부하, 새 팀원 온보딩을 인지과학으로 접근한 마지막 파트를 리뷰한다.