프로그래머의 뇌 (펠리너 헤르만스 지음)
📍목차
1장 | 코드 더 잘 읽기
1. 코딩 중 겪는 혼란에 대한 이해
2. 신속한 코드 분석
3. 프로그래밍 문법 빠르게 배우기
📍요약
✅문법에 대한 지식이 많을 수록 코드를 읽을 때 청킹하여 쉽게 이해할 수 있다
✅기억이 없어지는 것을 방지하기 위해, 의도적인 인출 연습이 필요 (무심코 검색하는 것보다 떠올리려고 노력해보기)
📍3-1. 문법을 기억하기 위한 팁
✅업무 중단은 개발자의 생산성을 크게 저하
예) 모르는 메서드를 찾으려 검색하다가 메일 확인 등 다른 내용으로 빠지게 됨 => 작업하던 내용을 잊어버림
- 다시 업무로 돌아가는데 평균 15분 정도 걸림
⭐따라서, 문법이나 메서드를 암기하고 있는 것은 개발 생산성을 상승시킬 수 있음 (LTM 활용 가능)
📍3-2. 플래시카드 사용해 문법 배우기
✅새로운 언어나 프레임워크를 배울 때 특히 효과적임
예) 앞면에는 프롬프트, 뒷면에 자세한 내용을 적는다
- 인출 연습을 하면서 맞힌 횟수를 기록하며 카드 갯수를 줄여나갈 수 있음
📍3-3. 어떻게 하면 잊어버리지 않을 수 있을까?
✅LTM은 정보를 영원히 저장할 수는 없다
- 배운지 1시간 이내에 배운 것의 50%를 잊어버림
- 2일 후에는 알고 있는 것의 25%만 남는다
✅LTM은 네트워크 구조로 정보를 저장
- 하나의 사실은 다른 많은 사실과 연결되어 있음
예) Python의 List Comprehension 문법은 for 문과 연결되어 저장됨
✅간격을 두고 반복해서 외우는 것이 가장 좋다
에빙하우스의 암기 실험에 따르면, 12개의 의미없는 단어를 외우기 위해,
- 1일 차에 68회 반복, 2일차에 7회 반복 (총 75회)
- 3일에 걸쳐 총 38회 반복
하는 것이 비슷하게 효과적으로 암기 성공
반복하면서 외우면 기억을 강화할 수 있다
📍3-4. 문법을 더 오랫동안 기억하기
✅기억을 강화하는 2가지 테크닉: 정교화 & 인출 연습
1. 인출
- 무언가를 일부러 기억해내려고 애쓰는 것 (머릿 속에서 인출)
- 능동적으로 기억하려고 할 수록 기억을 강화할 수 있다
LTM으로부터 기억을 가져오는 2가지 기제
- 저장 강도 : LTM에 얼마나 잘 저장하는지 (많이 학습)
- 인출 강도 : LTM에서 얼마나 잘 인출할 수 있는지 (쉽게 떠올림)
저장강도는 감소하지 않고 늘어나지만, 인출 강도는 서서히 약화함
⭐코드를 보는 것만으로는 LTM에 저장하고 쉽게 꺼내서 쓸 수 없음
(꾸준한 인출 연습이 필요)
2. 정교화
- 어떤 내용을 처음 배울 때, 기존 기억과 연관지어 LTM에 저장
예) 똑같은 내용을 처음 배우더라도, 기존의 지식과 연관지어 저장하면 더 효과적으로 저장 가능